HSN codes classify goods and SAC codes classify services for GST. Businesses with aggregate turnover up to ₹5 crore must show at least 4 digits on B2B invoices; above ₹5 crore, at least 6 digits on every tax invoice. The wrong code can mean the wrong GST rate and a mismatch in your returns.
HSN (Harmonized System of Nomenclature) and SAC (Services Accounting Code) are classification systems used to categorise what you're selling for tax purposes. Every line on a GST tax invoice carries one or the other — and the code is what links an item to its GST rate.
HSN vs SAC
HSN codes apply to physical goods — a box of screws and a bag of rice have different HSN codes because they're classified (and often taxed) differently. HSN is based on the World Customs Organization's international Harmonized System, which India extends to 8 digits. SAC codes apply to services — a repair service and a consulting service are classified separately. SAC codes are 6 digits and always start with 99. If you sell both goods and services, you'll use both across different invoice lines.
How an HSN code is structured
| Digits | Level | Example (rice) |
|---|---|---|
| First 2 | Chapter | 10 — Cereals |
| First 4 | Heading | 1006 — Rice |
| First 6 | Sub-heading | 1006.30 — Semi-milled or wholly milled rice |
| All 8 | Tariff item | 1006.30.xx — a specific variety |
Each extra pair of digits narrows the classification. That's why the digit rules matter: a 4-digit code says "rice", while a 6-digit code says which kind.
How many digits do you need?
| Aggregate annual turnover (previous FY) | B2B tax invoices | B2C invoices |
|---|---|---|
| Up to ₹5 crore | At least 4 digits | Optional |
| Above ₹5 crore | At least 6 digits | At least 6 digits |
These rules come from CBIC Notification 78/2020 and have applied since 1 April 2021. On e-invoices, the Invoice Registration Portal enforces them too: businesses above ₹5 crore must report at least 6 digits, and where no valid 6-digit code exists, the full 8-digit code. Using fewer digits than your bracket requires is a compliance gap even if the category is technically correct.
How to find the right code
- Start with your supplier's invoice — the HSN they used for the same item is a good first reference (but verify it).
- Search the HSN/SAC lookup on the GST portal by product name or keyword.
- Narrow down from chapter to heading to sub-heading until the description matches what you actually sell.
- Check the GST rate notified for that code — the code and the rate need to agree.
- When it's genuinely ambiguous (material or end use changes the classification), ask your accountant once and record the answer against the item.
Common mistakes
- Reusing a code from a similar-sounding product without checking it's actually correct
- Using a shorter code than your turnover bracket requires
- Applying an HSN code to what's actually a service line (or vice versa)
- Never updating a code or rate after a classification or rate change — such as the September 2025 GST rate rationalisation
- Typing the code fresh on every invoice instead of storing it once against the item
Why it's worth getting right
HSN/SAC codes feed directly into your GST returns, including the HSN-wise summary in GSTR-1. A mismatch between what you reported on invoices and what shows up in your return is exactly the kind of discrepancy that triggers a notice or a manual reconciliation. Setting the correct code once, at the item level, and having it apply to every future invoice for that item removes the recurring risk of a mistyped code.
Set the HSN/SAC code once per item and StashBill's compliance engine applies it to every invoice automatically — see the full India GST invoicing requirements, or the complete GST invoice format guide.
Frequently asked
Can one product have more than one HSN code?
No — each specific product should map to one correct HSN code, though very similar products can fall under different codes depending on material or use.
Do I need HSN codes on B2C invoices?
If your aggregate turnover is up to ₹5 crore, HSN codes are optional on invoices to unregistered (B2C) buyers. Above ₹5 crore, at least 6 digits are required on all tax invoices.
Do I need to memorise HSN codes for every product I sell?
No — set the code once per item in your inventory or billing system and it applies automatically to every invoice from then on.
What does a SAC code look like?
Six digits starting with 99 — for example, 9987 is the heading for maintenance, repair, and installation services, with 6-digit codes beneath it for specific service types.
Sources
- CBIC — Notification 78/2020-Central Tax (HSN digits) and GST rate notifications
- GST Portal — HSN/SAC search
- GST e-Invoice System — HSN validation advisories
General information, not tax advice. Current as of October 2026.