HS Article

How to Add Tax/GST in WooCommerce: Full Setup Guide

Every WooCommerce store eventually has to deal with tax, no matter which country it’s based in. What that tax is called just changes by region: sales tax in the US, VAT in the UK and EU, GST in India, Australia, and Canada. WooCommerce handles all of them through the same tax engine, so most of the setup is identical wherever you sell. This guide walks through the general setup first, since those steps are the same for everyone, then splits into two dedicated sections further down, one for sales tax/VAT setups outside India, and one for GST setup in India with its CGST/SGST/IGST rules. Jump to whichever section matches your store.

Step 1: Enable Tax Rates in WooCommerce

Taxes are switched off by default in WooCommerce.

  1. Go to WooCommerce > Settings > General
  2. Make sure your store address is filled in correctly, since this affects tax calculation
  3. Scroll down to Enable taxes and check the box for Enable tax rates and calculations
  4. Click Save changes

Once saved, a new Tax tab appears next to General, Products, Shipping, and so on. This is where all the actual tax configuration happens, regardless of which country you sell in.

Step 2: Configure the Main Tax Settings

Open WooCommerce > Settings > Tax. This screen controls how tax behaves across your whole store.

Prices entered with tax Choose whether the prices you type into products already include tax or not. This is worth getting right early since changing it later silently changes your displayed prices. US store owners usually enter prices exclusive of tax, since American shoppers expect tax added at checkout. Stores in India, the UK, and most of the EU usually show tax inclusive prices instead, since that is what customers expect to see.

Calculate tax based on Pick from customer shipping address, billing address, or your store’s base address. For most physical goods, shipping address is the right choice since tax is usually based on where the product is delivered, not where the business is registered.

Shipping tax class Decides what rate applies to shipping charges. Matching it to the cart items is the simplest option for most stores.

Display prices in the shop / during cart and checkout Choose Including tax or Excluding tax based on what your local customers expect, as mentioned above.

Price display suffix A small text like “incl. tax” or “incl. GST” next to your prices tells customers tax is already included, which reduces confusion at checkout.

Save your changes before moving on.

Setting Up Tax for the US, UK, EU, or Other Countries

If you are not selling in India, this section is for you. Skip ahead to the GST section below if India is your only market.

Option 1: Manual tax rates This works well if you only need to charge tax in one or two places, for example a single US state or a single VAT rate for the UK.

  1. In WooCommerce > Settings > Tax, click the Standard rates tab
  2. Click Insert row and fill in the details, for example:
  3. – US state sales tax: Country = US, State = your state code, Rate = your state’s rate, Tax name = “Sales Tax”
  4. – UK VAT: Country = GB, leave State blank, Rate = 20 (or whatever applies to your products), Tax name = “VAT”
  5. Click Save changes

You can add as many rows as you need, one per state or country you are required to charge tax in.

Option 2: Automated tax calculation If you sell across multiple US states or ship internationally, keeping rate tables updated by hand gets tedious fast, especially since US sales tax rates can vary by city or county, not just by state. In that case, most stores install the official WooCommerce Tax extension, or a third party service like TaxJar or Avalara, and enable automated taxes from the Tax settings tab. Once turned on, the plugin looks up the correct rate at checkout based on the customer’s address, so you do not have to maintain rate tables yourself.

One thing worth knowing: turning on automated taxes overrides some of your manual settings, including switching prices to tax exclusive, so check your product prices afterward to make sure nothing looks off.

If you are based in the EU and need to validate customer VAT numbers for B2B sales, the official EU VAT Number extension is worth adding alongside your tax setup.

Setting Up GST for India

GST in India works a bit differently since it is a multi part tax with rules based on where the buyer is located, not just what is being sold.

GST in India is not a single flat rate, and the slab structure changed recently. Under the GST 2.0 reform that took effect on 22 September 2025, the old four slab system (5%, 12%, 18%, 28%) was simplified. Most stores now deal with just two main rates, 5% for essentials and everyday goods, and 18% as the standard rate for most products and services. A separate 40% rate applies to a small list of luxury and sin goods like tobacco, pan masala, and large vehicles, which most WooCommerce stores will never need. Some items remain at 0%.

If you set up your store before September 2025, it is worth double checking your existing tax classes, since anything still using the old 12% or 28% slab may need to move to 5% or 18%.

On top of the slab itself, GST is also split differently depending on where your customer is:

  1. If the sale happens within the same state, tax is split equally into CGST (Central GST) and SGST (State GST).
  2. If the sale happens across states, the full rate is charged as IGST (Integrated GST).

So an 18% GST product would show as 9% CGST + 9% SGST for a local buyer, but a flat 18% IGST for a buyer in another state. WooCommerce can handle this, but it needs to be told how.

Step 3: Create Tax Classes for Each GST Slab

By default, WooCommerce only gives you Standard, Reduced rate, and Zero rate tax classes. Under the current GST structure, most stores only need two or three classes.

  1. Inside WooCommerce > Settings > Tax, find the Additional tax classes box
  2. Add one line for each slab you sell under, for example:
📄
filename
GST 5%
GST 18%
GST 40%

If you sell any of the specific luxury or sin category items taxed at 40%, add that class too. Most stores can skip it. 3. Click Save changes

Each one will now show up as its own tab at the top of the Tax settings page, right next to Standard rates. You can keep Standard rate for whichever slab is most common in your store, so most products need zero manual work later.

Step 4: Add the Actual GST Rates

This is the step where CGST, SGST, and IGST come in.

Click on one of your slab tabs, say GST 18%, then click Insert row. You will need to fill in a few columns:

  1. Country code: IN
  2. State code: leave blank if you want one rate to apply to every state, or add specific state codes if you are splitting CGST/SGST by state
  3. Rate: the percentage for that row
  4. Tax name: label it clearly, like CGST, SGST, or IGST, so it is easy to read on invoices later

For a simple setup that works for most small to mid sized stores, add one row per slab with the state code left blank and the full rate (for example 18%), labelled as GST. This charges the same total rate to every customer and is the fastest way to get started. It is the right choice if you are not filing detailed state wise GST returns yourself, or if your accountant handles that separately from your invoices.

If your accountant specifically needs CGST and SGST shown as separate line items for local sales, you will need two rows for your home state (half the rate each, labelled CGST and SGST) plus one IGST row covering every other state at the full rate. This is more accurate for compliance but adds more rows to manage. When in doubt, start with the simple one row setup and switch to the split version later if your accountant asks for it. Some store owners handle this by downloading a ready made CSV of Indian state codes with GST rates and using the Import CSV option instead of typing every row manually, which saves time once you know which version you need.

Repeat this for every slab you created (5%, 18%, and 40% if it applies to you).

Step 5: Assign the Right Tax Class to Each Product

This step applies no matter which country you sell in. Tax classes do nothing on their own until they are attached to products.

  1. Go to Products and open a product for editing
  2. In the Product data box, look at the General tab
  3. Set Tax status to Taxable
  4. Set Tax class to whichever rate applies to that product (Standard rate, GST 5%, GST 18%, and so on)
  5. Update the product

If you have a large catalog, doing this one product at a time is slow. You can use Quick Edit or Bulk Edit from the Products list to update tax class for multiple products at once, as long as they all belong to the same tax rate.

Step 6: Test It Before Going Live

Do not skip this part. Visit your shop page as a regular visitor and check:

  1. Does the product price show tax correctly, based on what you chose in Step 2?
  2. Add a product to the cart and go to checkout. Does the tax breakdown appear correctly?
  3. If you are outside India, try checking out with a different state or country in your shipping address to confirm the correct rate applies.
  4. If you have set up state based CGST/SGST/IGST for India, try changing the shipping address to a different state and confirm it switches to IGST automatically.

A lot of setup mistakes only show up at this stage, so it is worth spending five minutes here rather than finding out from a customer complaint later.

Step 7: Tax on Invoices

WooCommerce’s default order emails will show the tax breakdown, but they are not a full tax invoice with your business registration details.

For India, GST invoices need your GSTIN and HSN/SAC codes shown clearly. For the EU and UK, VAT invoices usually need your VAT registration number. For most stores, this means installing a dedicated invoicing plugin such as WooCommerce PDF Invoices & Packing Slips, or a tax specific plugin that adds the right fields at checkout and prints them on the invoice automatically. If you are filing returns regularly, having these details correct on every invoice makes reconciliation much easier at filing time.

Common Mistakes to Avoid

A few things trip up almost every store owner the first time:

  1. Changing “prices entered with tax” after adding products. This silently changes your displayed prices. Decide this setting first.
  2. Forgetting to set products to Taxable. A product left as “None” under tax status will never show tax, no matter how well your rates are configured.
  3. Turning on automated tax calculation without checking existing settings. It overrides several manual settings, including price display, so review your store after enabling it.
  4. Using only one blanket GST rate when your accountant needs CGST/SGST/IGST splits. Fine for very simple stores, but can cause issues if you are strict about invoice accuracy.
  5. Not testing with a different shipping address. This is the easiest way to catch a wrong tax setup before a customer does.

Frequently Asked Questions

Do I need a plugin to add tax in WooCommerce?

No, not for basic setup. WooCommerce has a built in tax engine that supports multiple tax classes and manual rates, which covers sales tax, VAT, and GST. A plugin is only needed for automated rate lookups across many regions, or for generating compliant tax invoices with fields like GSTIN or a VAT number.

Does WooCommerce support VAT for EU and UK stores?

Yes. You can add VAT as a manual rate under Standard rates, or use the WooCommerce Tax extension for automated calculation. Stores handling B2B sales in the EU often add the EU VAT Number extension as well to validate customer VAT numbers.

How do I set up US sales tax in WooCommerce?

Add a tax rate row for each state you have nexus in under WooCommerce Settings Tax Standard rates, or install the WooCommerce Tax extension or a service like TaxJar to calculate rates automatically based on the customer's address, since US sales tax can vary by state, county, and even city.

Has GST changed recently in India?

Yes. Under the GST 2.0 reform effective 22 September 2025, the old 5%, 12%, 18%, 28% slab system was simplified to mainly 5% and 18%, with a separate 40% rate for luxury and sin goods. If your WooCommerce tax classes still show 12% or 28%, they need to be updated to match.

What is the difference between CGST, SGST, and IGST in WooCommerce?

CGST and SGST apply when the buyer and seller are in the same state, and the total GST rate is split equally between the two. IGST applies for interstate sales, where the full rate is charged as a single tax.

Why is WooCommerce not showing tax at checkout?

This usually means either taxes are not enabled in General settings, the product's tax status is set to "None" instead of "Taxable," or no tax rate rows have been added under the relevant tax class.

5 1 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Responsive Grid Layout

Responsive Grid Layout without Framework

How to Set Up a Responsive Grid Layout Without...

Read More
webp vs png vs jpg format image

WebP vs PNG vs JPG: Which Should You Use in 2026

You’ve probably done this a hundred times. You’re about...

Read More
pt vs px convertor

PT to PX: What’s the Difference and How to Convert Font Units

If you’ve ever copied a font size from Figma,...

Read More
CSS Gradient Banner

How to Use CSS Gradients in Web Design – Complete 2026 Guide

If you are designing websites in 2026, gradients are...

Read More
Free stock image websites

Top 13 Free Stock Image Websites

Most people grab an image from Google and call...

Read More
Add full size image in WordPress

How to Upload Full Size Images in WordPress

If you’ve ever uploaded a huge image to WordPress...

Read More
Image on heading

How to Add a Background Image in Heading Using CSS

Adding a background image to headings is a simple...

Read More
Add Content Dynamically with jQuery Prepend

How to Use jQuery Prepend to Dynamically Add Content to Any Website

When you need to insert content at the top...

Read More
CSS Media Queries

CSS Media Queries for Responsive Web Design

CSS media queries are an excellent way of changing...

Read More
Change Placeholder Text Color in Form

How to Change Placeholder Text Color in Contact Form 7 | WordPress

Easily change and style placeholder text in Contact Form...

Read More