HSN Code and SAC Code: How to Find and Show on Invoices
HSN code and SAC code explained: how to find the right code, the 4 and 6-digit rules by turnover, how to show it on a GST invoice and report it in GSTR-1.
Quick answer: An HSN code classifies goods and a SAC code classifies services under India's GST. Businesses with turnover up to Rs 5 crore must show at least a 4-digit HSN code on B2B tax invoices; above Rs 5 crore, at least 6 digits on all invoices. Find codes with the GST portal's free Search HSN/SAC tool.
Every line on a GST tax invoice needs a classification code, and that code decides the GST rate. Get it wrong and you charge the wrong tax, your buyer's credit is at risk, and your GSTR-1 summary will not match. This guide explains what the HSN code and SAC code are, how they are structured, how to find the right one, how many digits you must show, where they go on an invoice and in GSTR-1, with a worked invoice example. For customs classification on export documents, see our separate guide to HS codes on commercial invoices; this article covers the GST side.
Important: This is general information, not tax advice. Classification can be complex and rates change by notification. Confirm codes and rates using the GST portal and CBIC's GST rate notifications, or ask a chartered accountant.
What is an HSN code?
HSN stands for Harmonized System of Nomenclature, a product classification developed by the World Customs Organization and used by most trading countries. It groups goods into 21 sections and around 99 chapters, from live animals to works of art. India uses it for both customs and GST, which means one HSN code system classifies goods across the economy.
The code gets more specific with each pair of digits:
| Digits | Level | Example |
|---|---|---|
| 2 | Chapter | 61: articles of apparel, knitted or crocheted |
| 4 | Heading | 6109: T-shirts, singlets and other vests, knitted |
| 6 | Subheading | 610910: of cotton |
| 8 | Tariff item (India) | An eight-digit item used in the customs tariff and some GST notifications |
The first six digits are the same in every country that uses the Harmonized System. The final two digits are India's own extension.
What is a SAC code?
Services are classified separately using the Services Accounting Code, or SAC, under a scheme adopted for GST. SAC codes have six digits and always start with 99. The next two digits give the heading, and the last two the specific service. For example, heading 9983 covers other professional, technical and business services, which includes subheadings for IT consulting, IT design and development, accounting and legal services. Heading 9954 covers construction services and 9963 covers accommodation and food services.
| SAC heading | Services covered |
|---|---|
| 9954 | Construction services |
| 9963 | Accommodation, food and beverage services |
| 9965 | Goods transport services |
| 9971 | Financial and related services |
| 9973 | Leasing or rental services without operator |
| 9983 | Other professional, technical and business services |
| 9985 | Support services |
| 9987 | Maintenance, repair and installation (except construction) services |
| 9992 | Education services |
| 9993 | Human health and social care services |
These four-digit headings are a starting point only. Each splits into six-digit codes, and you should use the code that matches your specific service. If you sell services only, you use SAC codes for every line. If you sell goods and services together, each line takes its own code.
How many digits: the HSN code rules by turnover
Notification 78/2020-Central Tax, effective 1 April 2021, sets the minimum number of digits based on aggregate turnover in the previous financial year.
| Aggregate turnover in previous year | Minimum digits on tax invoices | B2C invoices |
|---|---|---|
| Up to Rs 5 crore | 4 digits on B2B tax invoices | Optional |
| More than Rs 5 crore | 6 digits on all tax invoices | Required |
The same thresholds apply to SAC codes on service invoices. Using more digits than the minimum is allowed and often helpful, because rates can differ at the six- or eight-digit level. The government can notify certain products where more digits are required, so check notifications for chemicals and other specified goods.
How to find the right code: step by step
- Describe the product or service precisely. Note what it is made of, its function and how it is sold, for example "knitted cotton T-shirt" rather than "clothing".
- Open the Search HSN/SAC tool. On the GST portal it is available under Services, User Services, without logging in.
- Search by keyword. Enter a short description and review the matching chapters and headings.
- Drill down. Move from the four-digit heading to the six-digit subheading that matches your item's material or use.
- Check the rate. Look up the code in CBIC's rate notifications or rate finder, noting any conditions such as value thresholds.
- Check supplier and competitor documents. Your supplier's invoice and the customs tariff can confirm your reading.
- Record your decision. Keep a note of why you chose each code, especially where two seem possible.
- Add the code to your item list so every invoice uses it consistently.
When classification is unclear
Some items sit between headings, such as a kit that combines goods of different types, or a service bundled with goods. The General Rules for Interpretation of the Harmonized System and the chapter notes decide these cases. For high-value lines, ask a chartered accountant for a written view. Advance rulings are available for certainty on a particular supply.
How to show the HSN code and SAC code on a GST invoice
Rule 46 of the CGST Rules lists the fields a tax invoice must contain, and the HSN or SAC code is one of them. Place the code in its own column next to each line's description, before quantity and rate. A typical layout is: description, HSN/SAC, quantity, unit price, taxable value, rate, CGST/SGST or IGST, total. Our GST invoice guide covers the other mandatory fields, and tax invoice vs retail invoice explains when a bill of supply or retail invoice is used instead.
Worked example: invoice lines with codes
A Jaipur textile business with turnover of Rs 3 crore sells to a registered retailer in the same state. Because turnover is under Rs 5 crore and the sale is B2B, at least four digits are required; the business shows six for clarity.
| Description | HSN/SAC | Qty | Rate (Rs) | Taxable value (Rs) | GST rate | CGST (Rs) | SGST (Rs) |
|---|---|---|---|---|---|---|---|
| Cotton knitted T-shirts | 610910 | 20 | 800 | 16,000 | 5% | 400 | 400 |
| Custom print design service | 998391 | 1 | 4,000 | 4,000 | 18% | 360 | 360 |
The arithmetic: 20 x 800 = 16,000; GST at 5% = 800, split 400 CGST and 400 SGST. The design line: 4,000 at 18% = 720, split 360 and 360. Invoice total: 16,000 + 4,000 + 800 + 720 = Rs 21,520. The rates are illustrative of the post-September 2025 structure; apparel rates depend on the sale value per piece, so confirm the current rate and SAC subheading for your items. Our guide to the new GST rates under GST 2.0 explains what changed.
A single invoice can mix rates like this, but our free invoice generator applies one tax rate per invoice and does not look up HSN codes or rates. If you need mixed rates, issue separate invoices or use accounting software. You can still add the code into each line description so the PDF shows it clearly. Browse invoice templates for a layout that leaves room for the extra column.
Credit notes, debit notes and repeat customers
When you issue a credit note or debit note against an earlier invoice, use the same classification as the original line. A return of T-shirts should reduce the value under the T-shirt code, not under a general code, or your GSTR-1 summary will show sales falling in one heading and rising in another. For regular customers, save each product with its code and rate in a price list or item master, so staff do not choose a different code from memory on each bill. When the GST Council changes a rate, update the item master on the effective date and keep a dated copy of the old version.
Reporting HSN in GSTR-1
Table 12 of GSTR-1 is an HSN-wise summary of outward supplies. Since GSTN's phased changes in 2025, codes must be selected from the portal's list rather than typed freely, and the table is split into B2B and B2C supplies, with the digit count set by turnover. Values in Table 12 are checked against the rest of the return. Our guide to GST return filing covers the full GSTR-1 process.
Businesses above the e-invoice limit report the code in the IRP schema, which validates it; see the e-invoice limit article. The code also appears on the e-way bill for goods in transit, so the same code should appear on all three documents.
HSN code and SAC code checklist
- Previous year's aggregate turnover checked to set the digit rule
- Every product and service has a code in your item master
- Six digits used wherever rates differ within a heading
- Current rate confirmed for each code against CBIC notifications
- Codes shown in their own column on tax invoices
- Same code used on the invoice, e-way bill and GSTR-1
- Reasoning recorded for borderline classifications
- Codes reviewed whenever the GST Council changes rates
Common mistakes
- Using a code from a supplier without checking. Suppliers make mistakes too, and you are responsible for your own invoice.
- Stopping at four digits when rates differ below. Two six-digit codes in one heading can carry different rates.
- Using an HSN code for a service. Services take SAC codes starting with 99.
- Different codes on invoice and return. Mismatches between invoices, e-way bills and GSTR-1 prompt questions.
- Old rates after GST 2.0. Many rates changed from 22 September 2025, even where codes did not.
- Confusing GST and customs codes. Export documents may need the buyer country's code; keep the two separate.
Next steps
List every product and service you sell, find each code with the GST portal's search tool, confirm the current rate, and save the result in your item master. If you are not yet registered, start with our guide to GST registration in India. Then make sure every invoice shows the correct HSN code and SAC code before it reaches your buyer and your GSTR-1.
Frequently asked questions
What is an HSN code?
HSN stands for Harmonized System of Nomenclature, the international product classification maintained by the World Customs Organization. India uses it to classify goods under GST and customs. The first six digits are internationally harmonized; India adds two more for an eight-digit tariff item. Each code links to a GST rate, so the right code drives the rate on your invoice.
What is the difference between HSN and SAC?
HSN codes classify goods, while SAC (Services Accounting Code) classifies services. SAC codes are six digits and all begin with 99. For example, heading 9983 covers other professional, technical and business services. If you sell both goods and services, you use HSN for the goods lines and SAC for the service lines on the same invoice and in your GSTR-1 HSN summary.
How many digits of HSN code are required on an invoice?
Under Notification 78/2020-Central Tax, effective 1 April 2021, businesses with aggregate turnover up to Rs 5 crore in the previous year must show at least 4 digits on B2B tax invoices (optional on B2C invoices). Businesses above Rs 5 crore must show at least 6 digits on all tax invoices. The same digit counts apply in Table 12 of GSTR-1.
How do I find the HSN code for my product?
Use the Search HSN/SAC tool on the GST portal, which works without logging in, or CBIC's GST rate finder. Search by product description, then narrow down the chapter, heading and subheading that match what your product is made of and what it does. If two codes seem to fit, read the chapter notes or ask a chartered accountant, because the rate can differ.
Is the HSN code mandatory for B2C invoices?
For businesses with aggregate turnover up to Rs 5 crore, showing the HSN code on B2C invoices is optional under Notification 78/2020. Above Rs 5 crore, at least six digits are required on all tax invoices, including B2C. Even when optional on the invoice, you still report HSN-wise summaries for B2C supplies in Table 12 of GSTR-1.
What is the penalty for a wrong or missing HSN code?
There is no specific penalty only for HSN codes, but the general penalty under Section 125 of the CGST Act, up to Rs 25,000 each under CGST and SGST, can apply to contraventions without a separate penalty. The bigger risk is a wrong rate: if the wrong code means you charged too little GST, you owe the shortfall with interest. Correct codes protect both you and your buyer.
Is the HSN code the same as the HS code used in exports?
They share the same first six digits, because both are based on the WCO Harmonized System. India's GST and customs tariff use eight digits, and other countries extend the code in their own ways. On an export commercial invoice, the importing country's customs authority may expect its own national code, so check that separately from your GST classification.
What SAC code should a freelancer or IT consultant use?
Most IT and professional freelancers fall under heading 9983, other professional, technical and business services, with subheadings for IT consulting and support, IT design and development, and other services. Designers, writers and marketers may fall under other 9983 or 9985 subheadings. Search the exact description on the GST portal and pick the six-digit code that matches your main service.
Invoice Creator Editorial Team
Guides on invoicing, cash flow and small-business finance from Invoice Creator, operated by Next Software Development Company. Content is reviewed for accuracy against the fields our own invoice generator produces.
Try the invoice generator