What Are HSN and SAC Codes? A Practical Guide for Small Businesses
Every GST invoice on this site's own invoice generator, and every GST invoice you've probably ever received, has an HSN or SAC code sitting quietly on each line item. Almost nothing explains what it actually is, so most people copy whatever code their software suggests and move on. That mostly works, until it doesn't.
This covers what the two acronyms mean, how many digits you actually need, how to find the right one, and what genuinely happens if you get it wrong.
What HSN and SAC actually stand for
HSN stands for Harmonized System of Nomenclature, an internationally standardised numeric system for classifying goods, originally built for customs and trade, adopted into India's GST system to decide the tax rate on physical products.
SAC stands for Services Accounting Code, a similar classification system, but built specifically for GST in India rather than adapted from an international standard, and used for services instead of goods.
The rule that decides which one you need is simple: selling or shipping a physical product uses an HSN code; providing a service uses a SAC code. A business that does both (say, a consultant who also resells hardware) needs both, applied to the correct line items on the same invoice.
Either code goes on the invoice line item itself, alongside the description, quantity and rate. See how to create a GST invoice for the full field list it sits within.
How many digits you need
For HSN codes, the number of digits required depends on your turnover in the preceding financial year, calculated PAN-wise across every place of business you operate, not per-invoice or per-branch:
| Situation | Digits required |
|---|---|
| Turnover up to ₹5 crore, B2B supply | 4 digits (mandatory) |
| Turnover up to ₹5 crore, B2C supply | 4 digits (optional) |
| Turnover above ₹5 crore | 6 digits, all supplies |
| Any export of goods | 8 digits, regardless of turnover |
SAC codes don't scale with turnover the same way. A 6-digit SAC code is required for every service, whether you're a freelance consultant billing ₹5 lakh a year or an agency billing ₹5 crore.
How to find the right code
For a one-off or unfamiliar product or service, the GST portal has a built-in search: Services → User Services → Search HSN Code, where entering a few characters of a description surfaces matching codes and their standard GST rate.
For classifying what you actually sell:
- Goods: classify by what the item fundamentally is (its material, its function, or the industry it's made for), not by your own product name for it.
- Services: classify by the functional domain of the service (legal, consulting, IT, transport, and so on) rather than by how you describe the engagement to a client.
Once you've correctly classified a product or service you sell regularly, that code doesn't need re-searching each time. Save it against that line item in whatever you use to invoice.
Why the rate tied to your code can change
The code itself is usually stable, it's the GST rate attached to it that moves. The most recent large-scale change was "GST 2.0", effective 22 September 2025 following the 56th GST Council meeting: the previous four-slab structure (5%, 12%, 18%, 28%) was rationalised into essentially three (5%, 18%, and a 40% slab for a small number of goods), moving the rate mapped to thousands of individual HSN and SAC codes in the process.
This doesn't change which code applies to what you sell, classification rules didn't move, but it's a concrete reason not to rely on a rate you memorised even a year ago. The portal search described above returns the current rate for a code, not a historical one, which is exactly why it's worth re-checking rather than reusing an old invoice template's number.
The GST 2.0 rate restructuring is reported consistently across GST-compliance publications following the 56th GST Council meeting; this environment can't reach the GST portal's own rate finder directly, so confirm the current rate for your specific code there before invoicing.
What happens if you get it wrong
The most direct consequence is applying the wrong GST rate, since the code is what determines the rate in the first place. A misclassified item can mean you've been charging (and remitting) the wrong amount without realising it.
Beyond the rate itself, a wrong or missing code can cause:
- A mismatch when filing GSTR-1, since the code is a required field on the return.
- Your buyer's input tax credit being delayed or denied, if the mismatch shows up on their side during reconciliation.
- A GST notice or scrutiny in more serious or repeated cases, though this is the exception rather than the norm for an honest classification mistake.
None of this means every wrong code ends in a penalty. Most classification errors are caught and corrected during normal filing. It's a reason to get the classification right from the first invoice, not a reason to panic over one already-issued invoice with the wrong code on it. If you're unsure whether a past classification was correct, that's worth raising with your accountant rather than guessing either way.
Worked example
A freelance graphic designer bills ₹8 lakh a year, well under the ₹5 crore HSN threshold, but that threshold is irrelevant here anyway, because design work is a service. Every invoice needs the correct 6-digit SAC code for graphic design services, regardless of the designer's turnover.
A small business selling handmade furniture with ₹3 crore turnover needs a 4-digit HSN code on B2B invoices (mandatory) and may add it on B2C invoices even though it's optional at that turnover. If that same business starts exporting a container of furniture, that specific export invoice needs the full 8-digit HSN code, regardless of the business's overall domestic turnover.
Common mistakes
- Using an HSN code for a service, or vice versa. The two systems aren't interchangeable. Check which one actually applies before searching.
- Assuming SAC codes get shorter for small turnover, like HSN does. They don't. 6 digits applies to every service provider regardless of size.
- Forgetting the 8-digit export requirement. A business that normally uses 4 or 6 digits domestically still needs 8 digits specifically on export invoices.
- Picking a code based on your own product name instead of its actual classification. Two similar-sounding products can fall under different codes and different rates. Classify by what the item or service actually is, not by your marketing description of it.