Every product sold in India has an HSN code, and the code is not always the same length. Sometimes you need 4 digits, sometimes 6, and on a customs form you need 8. This post explains which one to use on each document, so you do not get an error on your invoice, your GSTR-1 or your bill of entry.
The short answer
The number of digits you must use depends on your aggregate annual turnover of the preceding financial year and on the document you are filling in.
| Document | Turnover up to ₹5 crore | Turnover above ₹5 crore |
|---|---|---|
| Tax invoice | 4 digits (B2B supplies) | 6 digits |
| GSTR-1, Table 12 (HSN summary) | 4 digits | 6 digits |
| E-invoice and e-way bill | 4 digits | 6 digits |
| Bill of entry (import) or shipping bill (export) | 8 digits | 8 digits |
These are minimums. The rule is "at least 4" or "at least 6" digits, so you can always use more. The rule comes from Notification 78/2020-Central Tax. The GST portal now checks it in Table 12 of GSTR-1, and the e-invoice and e-way bill systems check it too.
Up to ₹5 crore, the invoice rule is for B2B supplies. Above ₹5 crore, it applies to your invoices for both goods and services.
What the digits mean
An HSN code starts broad and gets more specific with every two digits. Take smartphones as an example:
| Digits | Code | What it is |
|---|---|---|
| 2 | 85 | Chapter: electrical machinery and equipment |
| 4 | 8517 | Heading: telephone sets, including smartphones |
| 6 | 851713 | Subheading: smartphones |
| 8 | 85171300 | Tariff item: smartphones (India's own level) |
The first 6 digits are the international Harmonized System, used in almost every country. The last 2 digits are added by India for its own customs tariff. Other countries add their own last digits, so an 8-digit Indian code does not always match the code your foreign supplier uses after the sixth digit.
You can search any of these levels in our HSN Code Finder. It shows the whole chain, from chapter to tariff item, for the code you select.
Invoices, GSTR-1 and e-way bills: 4 or 6 digits
These are all domestic GST documents, and they all use the same 4 or 6 digit rule:
- Up to ₹5 crore: at least 4 digits.
- Above ₹5 crore: at least 6 digits.
Three things to know about GSTR-1:
- Table 12 is a dropdown. Since the May 2025 return period you cannot type an HSN code by hand. You pick it from a list, and the description fills in automatically.
- B2B and B2C are separate. Table 12 has a B2B tab and a B2C tab. If you report B2B supplies in other tables of GSTR-1, the B2B tab cannot be left empty.
- The portal compares the values. It checks the value in Table 12 against your other GSTR-1 tables. When GSTN introduced these checks, they gave only a warning and did not stop you from filing.
The e-invoice and e-way bill systems have applied the 4 or 6 digit rule since 1 October 2023. If you use a 6-digit code and your turnover is under ₹5 crore, that is fine.
Imports and exports: 8 digits
Customs does not use the 4 or 6 digit GST rule. A bill of entry (imports) and a shipping bill (exports) use the full 8-digit tariff code. The customs duty rate depends on it, so one wrong digit can change your duty.
The 8-digit code is also what you type into the customs duty calculation. Our Import Duty Calculator post shows how BCD, SWS and IGST are worked out from it, and the Import/Export Duty Calculator does the sums.
More digits do not always mean a different GST rate
Many people think the code length decides the tax rate. It does not. The GST rate depends on the exact description in the rate notification, and sometimes the same code has two rates:
- Rice (1006) is nil-rated when sold loose and 5% when it is pre-packaged and labelled. The code is the same. The packaging changes the rate. See HSN code 1006.
- Knitted clothing (chapter 61) is 5% if the sale value is up to ₹2,500 per piece, and 18% if it is above ₹2,500. The value per piece changes the rate, not the digits. See HSN code 6109 for T-shirts.
So use the digits that your turnover requires, but always read the full rate entry for your product. The new GST rates post lists the current slabs, and the GST Calculator works out the tax once you know the rate.
What should a small business do?
A simple habit avoids most problems: save the 8-digit code for each product in your billing software. Then:
- Your invoice can show 4 or 6 digits, whichever your turnover needs (or the full 8, if you like).
- Your GSTR-1 Table 12 will pick the right level from the dropdown.
- If you start importing or exporting, you already have the code the customs form needs.
To find a code, search your product name in the HSN Code Finder, pick the most specific line that matches your goods, and then confirm it on the GST portal's HSN/SAC search. If you make invoices with our GST Invoice Generator, you can add the code on each line item.
Summary
- Up to ₹5 crore turnover: at least 4 digits on B2B invoices, in GSTR-1 Table 12 and in e-invoices and e-way bills.
- Above ₹5 crore turnover: at least 6 digits on all of these.
- Imports and exports: 8 digits, whatever your turnover.
- The turnover that counts is the preceding financial year's.
- The number of digits does not set the GST rate. The exact description in the notification does.
Sources
- Reporting of HSN codes in Table 12 of GSTR-1/1A (GSTN advisory, April 2025)
- HSN Code/SAC mandatory on invoices from 1 April 2021 for turnover above ₹5 crore — PIB
- 6-digit HSN in e-invoices and e-way bills from 1 October 2023 — LiveLaw
- GST portal: HSN/SAC search
- ICEGATE customs duty calculator
This post is correct as of 30 September 2026. Reporting rules and portal validations can change, so check the latest GSTN advisories before you file.