What is an HS code? How to find yours
How the harmonized system works, how to classify your product correctly, and what happens when the code is wrong.
Every product that crosses an international border gets a number. Not a tracking number, a classification number: the HS code. It decides how much duty your buyer pays, whether your shipment needs a permit, and whether customs waves it through or pulls it aside.
If you run a small import or export operation, the HS code is the single field on your paperwork with the most money riding on it. This guide explains how the system works, how to find the right code for your product, and what goes wrong when you guess.
What is the Harmonized System?
The Harmonized System (HS) is a product classification standard maintained by the World Customs Organization (WCO) in Brussels. More than 200 countries use it, which means the first 6 digits of a product's code mean the same thing in Hamburg, Ho Chi Minh City, and Houston.
The system covers essentially everything that can be traded: roughly 5,600 subheadings organized into 97 chapters, from live horses (chapter 1) to antiques (chapter 97). The WCO updates it every five years; the current edition took effect in 2022.
Here is the part that trips people up: the 6-digit code is only the international core. Each country bolts extra digits onto the end for its own tariff and statistics purposes:
| Country / region | Code length | Name |
|---|---|---|
| International (WCO) | 6 digits | HS code |
| United States (imports) | 10 digits | HTS code (Harmonized Tariff Schedule) |
| United States (exports) | 10 digits | Schedule B number |
| European Union | 8 digits (exports), 10 (imports) | CN code / TARIC code |
| China | 13 digits | HS code with national extensions |
So when someone asks for your "HS code", figure out which one they mean. A US customs broker filing an import entry needs the 10-digit HTS number. A freight forwarder booking an export usually wants the 6-digit HS or the 10-digit Schedule B. Your buyer in Germany needs the first 6 digits, then their own broker fills in the EU-specific tail.
How do you read an HS code?
The code is built like a postal address, going from general to specific. Take 8481.80, a code many small hardware exporters end up using:
- Chapter (first 2 digits): 84. Nuclear reactors, boilers, machinery and mechanical appliances. Chapters are the broadest grouping.
- Heading (first 4 digits): 8481. Taps, cocks, valves and similar appliances for pipes, tanks, vats and the like.
- Subheading (6 digits): 8481.80. Other appliances, the bucket that catches taps and valves not named in the earlier subheadings. A kitchen faucet lands here.
In the United States, the code keeps going. A chrome-plated brass sink faucet imported into the US classifies under HTS 8481.80.1030: the 8481.80 international core, plus US digits that pin down "hand operated, of copper, having a pressure rating under 850 kPa, sink and lavatory faucets". Those last four digits are what set the actual duty rate and feed trade statistics.
Read any code the same way: chapter tells you the industry, heading tells you the product family, subheading tells you the specific type, and the national digits tell customs exactly what duty to charge.
How do you classify your product?
Classification follows six official rules called the General Rules of Interpretation (GRI). They sound legalistic, but in plain English they boil down to a short decision process:
- Start with the words of the headings. If a heading names your product outright, you are done at that level. The chapter and section notes are legally binding, so read them; they regularly include or exclude things you would not expect.
- Incomplete or unassembled products count as the finished thing. A flat-packed bookshelf classifies as a bookshelf, not as boards and screws.
- If two headings could apply, the more specific one wins. "Electric toothbrushes" beats "electro-mechanical domestic appliances".
- For mixtures and multi-material products, classify by essential character. Ask what gives the product its core identity. A leather phone case with a small metal clasp is a leather article; the clasp is incidental. A gift set of olive oil, a ceramic dish, and a wooden spoon classifies under whichever component drives the purchase, usually the oil.
- If you are still stuck, the last applicable heading in numerical order wins. This is the genuine tiebreaker of last resort.
- Cases and packaging usually travel under the product's code, unless the packaging is reusable and substantial on its own (a fitted aluminum instrument case, for example, can classify separately).
In practice, essential character is where most small-exporter arguments with customs happen. Write down your reasoning when you classify: material composition, function, what the buyer is actually paying for. If customs ever questions the entry, a documented rationale is the difference between a conversation and a penalty.
Where do you look up HS codes?
Do not pay for a lookup tool until you have used the free official ones:
- USITC HTS search (hts.usitc.gov). The full US tariff schedule, searchable by keyword. This is the authoritative source for the 10-digit US import code and the duty rate column.
- CROSS (rulings.cbp.gov). The US Customs rulings database. Search for your product type and you will often find that CBP has already ruled on something nearly identical, with the exact code and the reasoning. A faucet search turns up dozens of rulings under 8481.80. This is the closest thing to an answer key that exists.
- Census Schedule B search (uscensus.prod.3ceonline.com). A guided classifier for the US export code. It asks plain-English questions about your product and walks you to a number.
- The WCO HS database and your destination country's tariff portal for confirming how the code behaves on the import side (the EU's TARIC portal is the one you will use most for European buyers).
A practical workflow: classify to 6 digits using the heading text and GRI logic, sanity-check against two or three CROSS rulings for similar products, then pull the national digits from the USITC schedule or the destination tariff. The same code then flows onto your commercial invoice, your export declaration, and your certificate of origin, so it pays to get it right once.
What happens when the HS code is wrong?
A wrong code is rarely caught at the border on day one. It surfaces later, and the bill compounds:
- Wrong duty rate. If you under-declared, the importer owes the difference. If you over-declared, you have been donating money to a customs authority, and refund claims are slow and capped by time limits.
- Customs holds. A code that does not match the product description or the declared value profile gets flagged. Your container sits at the Port of Long Beach at $200-400 per day in demurrage while an import specialist asks questions.
- Retroactive duty bills. When customs reclassifies a product, they do not just fix the current entry. In the US, CBP can review entries going back five years. An importer bringing in $300,000 a year of goods misclassified at 2.5% instead of the correct 9% is looking at a six-figure back-duty bill plus interest.
- Penalties. US negligence penalties run two to four times the lost revenue; fraud goes higher. Other countries have similar regimes.
- Knock-on document failures. Free trade agreement claims, export licenses, and partner-country quotas all key off the code. A wrong code can invalidate a duty-free claim your buyer made in good faith, which is an excellent way to lose the buyer.
The legal responsibility sits with the importer of record, but as the exporter you supply the code on the invoice and packing documents that the import entry is built from. See our export documents checklist for every place the code appears; it shows up more often than you would think.
When should you get a binding ruling?
If your product genuinely straddles two headings with materially different duty rates, you can ask customs to decide in advance. In the US this is a binding ruling from CBP: you describe the product in detail (and often send a sample), and CBP issues a letter that legally fixes the classification. It is free, takes around 30-90 days, and the ruling gets published in CROSS.
Get one when:
- The duty difference between candidate codes is large and your volume makes it matter.
- Your product is novel and there is no close ruling in CROSS.
- A broker, a supplier, and your own reading all disagree.
Skip it when an existing CROSS ruling already covers a product functionally identical to yours; cite that ruling in your records instead.
Why does the same product have different codes in different countries?
The first 6 digits should match everywhere; that is the entire point of the Harmonized System. The differences live in the national suffixes. Your faucet is 8481.80 in every member country, but the US extends it to 8481.80.1030 while the EU import code stretches to 10 different digits, because each authority slices the subheading differently for its own duty rates and statistics.
So when your buyer in Rotterdam reports a "different code" than the one on your invoice, check the first 6 digits before anyone panics. If those match, the difference is just each country finishing the address in its own dialect. If the first 6 differ, one of you has a real classification problem, and it is worth resolving before the shipment, not after.
Occasionally countries genuinely disagree at the 6-digit level on edge-case products (customs authorities argue about things like multifunction machines and food preparations). Those disputes get escalated to the WCO, but for a small exporter the practical rule holds: agree the 6-digit code with your buyer up front and let each side's broker handle the national tail.
Put the code in one place
The most common HS code failure in small companies is not bad classification, it is inconsistency: one code on the invoice, a different one on the packing list, a third in the freight forwarder's booking. ExportDocsHub fixes this structurally. You classify the product once on the shipment record, using the built-in HS code lookup, and the commercial invoice, packing list, certificate of origin, and bill of lading are all generated from that single record, so the code cannot drift between documents. Start with your next shipment and the classification work you did above only has to happen once.
Further reading
Frequently asked questions
- Is an HS code the same as an HTS code?
- Almost. The HS code is the international 6-digit base maintained by the World Customs Organization, and the HTS code is the United States 10-digit version built on top of it. The first 6 digits of a US HTS code are the HS code, and the last 4 digits are US-specific extensions that set the exact duty rate and collect trade statistics.
- How many digits is an HS code?
- The international standard is 6 digits, and every member country uses the same first 6. Countries then add their own digits on top, so the US uses 10 digits (the HTS), the EU uses 8 for exports and 10 for imports, and most other countries land somewhere between 8 and 12.
- Who is responsible for getting the HS code right?
- The importer of record is legally responsible for the classification declared at import, even when a customs broker files the entry. As an exporter you still need a correct code for your export declaration, your commercial invoice, and any certificate of origin, and a wrong code on your paperwork creates problems for your buyer at destination.
- Can I just copy a competitor's HS code or use the one my supplier gave me?
- Treat it as a starting hint, never as the answer. Suppliers often reuse one code for an entire catalog, and a competitor's product may differ from yours in material or function in ways that change the classification. Verify the code yourself against the tariff schedule and the CROSS rulings database before you put it on documents.
- How much does a wrong HS code cost?
- If customs reclassifies your goods, you owe the duty difference on the current entry and they can go back through prior entries, which in the US means up to five years of retroactive duty bills plus interest. Negligence penalties can reach two to four times the lost duty, and in the meantime your shipment can sit in a customs hold racking up storage fees.
Read next
Incoterms 2020 explained for small exporters
FOB, CIF, EXW, DDP: what each Incoterm makes you responsible for and how to pick the right one for your shipment.
10 min read
Commercial invoice vs proforma invoice: the difference
When to send a proforma, when the commercial invoice takes over, and the fields customs actually checks on each.
8 min read
Export documents checklist: what every small exporter needs
The 9 documents that move an export shipment, which ones you actually need, and a checklist to run before every booking.
8 min read