What Is an HS Code?
Updated 2026-08-039 min readCustoms and duties

An HS code is a numeric label that tells customs what a product is. The first six digits are identical worldwide under the Harmonized System, and each country adds two to four more of its own. That number — not your description of the goods — determines the duty rate, the restrictions and the paperwork.
Get it right and the parcel clears automatically. Get it wrong and it is reclassified, re-rated, and sometimes held while someone works out what it actually is.
Reading the number
The structure is consistent, which makes any code decodable once you know the pattern.
| Digits | Name | What it identifies |
|---|---|---|
| 1–2 | Chapter | The broad category of goods |
| 3–4 | Heading | The product group within that chapter |
| 5–6 | Subheading | The specific product type |
| 7–8 | National subdivision | The country's own breakdown |
| 9–10 | Statistical suffix | Further national detail, where used |
The first six digits are the international part. A product classified 6109.10 is that same subheading in every country that uses the system, which is nearly all of them.
Everything beyond six digits is national. The same product can be 6109.10.00.10 in one country and 6109.10.90 in another, and both are correct in their own jurisdiction. This is why you cannot simply copy a full code from an overseas supplier's invoice and reuse it on a declaration elsewhere.
A worked example
Take 6109.10 — cotton T-shirts.
Chapter 61 covers knitted or crocheted apparel. Heading 6109 narrows that to T-shirts, singlets and vests. Subheading 6109.10 specifies those made of cotton.
Change the fabric and the code changes with it. A T-shirt in man-made fibres falls under a different subheading in the same heading, and the duty rate is frequently different. Change from knitted to woven and it leaves chapter 61 entirely for chapter 62.
That is the level of detail the system works at. Material, construction method and intended use all move the code, and each move can move the duty rate.
What the code decides
Four things follow from the number, and only the first is obvious.
The duty rate. Every country publishes a tariff schedule mapping codes to rates. The code is the lookup key, and there is no other input.
Restrictions and controls. Import licences, quotas, safety standards and outright prohibitions are all attached to codes rather than to descriptions.
Preferential treatment. Trade agreements grant reduced or zero duty on specified codes from specified origins. Claiming the benefit requires the correct code plus proof of origin.
Statistics. Trade data is compiled from these codes, which is why customs authorities care about accuracy even on shipments where no duty is owed.
Our guide on customs duties covers how the rate is applied once the code has set it, and import tax for online shoppers covers what a recipient ends up paying.
How the chapters are organised
The 99 chapters are not arranged alphabetically or by industry. They follow a rough progression from raw and natural to processed and manufactured, which is useful once you know it because it tells you roughly where to start looking.
| Chapters | Broad content |
|---|---|
| 1–24 | Live animals, food, drink, tobacco |
| 25–27 | Minerals, ores, fuels |
| 28–38 | Chemicals, pharmaceuticals, cosmetics |
| 39–43 | Plastics, rubber, leather, furs |
| 44–49 | Wood, paper, printed matter |
| 50–63 | Textiles and clothing |
| 64–67 | Footwear, headwear, umbrellas |
| 68–71 | Stone, ceramics, glass, precious metals |
| 72–83 | Base metals and articles of metal |
| 84–85 | Machinery and electrical equipment |
| 86–89 | Vehicles, aircraft, vessels |
| 90–92 | Instruments, clocks, musical instruments |
| 93–97 | Arms, furniture, toys, art |
Chapters 84 and 85 are worth singling out. Between them they cover most machinery and virtually all electronics, which means a very large share of e-commerce goods sit in just two chapters. If you sell consumer technology, start there.
Textiles are the opposite case. Chapters 50 to 63 split by fibre, by construction and by garment type, so a clothing seller may use dozens of different codes across a modest catalogue.
The code alone does not set the duty
A common misunderstanding: the code determines the tariff line, but the rate you actually pay depends on the code and the origin together.
The published schedule usually lists several rates against the same code — a standard rate, and preferential rates for countries with trade agreements in place. Which one applies depends on where the goods originated and whether you can prove it.
That proof is a certificate or declaration of origin. Without it, the standard rate applies even when a preferential rate exists and the goods would qualify. Sellers routinely pay full duty on goods that were eligible for zero, simply because nobody supplied the origin evidence.
Origin also does not mean where you shipped from. Goods manufactured in one country, warehoused in a second and shipped from a third originate in the first. Our guide on documents needed for international shipping covers how origin is declared.
Finding the right code
Four routes, in order of reliability.
Your government's tariff lookup. Every customs authority publishes a searchable schedule, and it is the authoritative source for that country. Search by product description and work down through the chapter and heading.
Ask your supplier or manufacturer. They classify the product already and will usually share the six-digit code. Verify the national digits yourself.
Check similar products. If you sell a range, one classified item usually indicates the chapter and heading for the rest.
Request a binding ruling. Customs authorities will issue a formal, legally binding classification decision on request. It takes weeks, and it is worth it for a high-volume product where the duty difference between two plausible codes is material.
What does not work is a general web search for the product name. The results mix countries, mix years, and frequently return codes that were withdrawn in a past revision.
The classification rules that resolve ambiguity
Many products could plausibly sit in two places. The Harmonized System includes formal interpretation rules, and three of them settle most real cases.
The most specific description wins. A heading naming the exact article beats a general one covering the category.
Composite goods are classified by essential character. A gift set of a mug and coffee is classified as whichever component gives it its identity, not as two separate items.
When nothing else resolves it, the last applicable heading in numerical order applies. This is the tiebreaker of last resort.
Applying these consistently matters more than getting every borderline case perfect. Customs authorities are considerably more tolerant of a defensible classification applied consistently than of the same product classified three different ways across three shipments.
The cost of getting it wrong
Errors are common and the consequences scale with how often you repeat them.
Under-classification — using a code with a lower duty rate — results in the difference being billed retroactively, with interest. Customs audits look back several years in most jurisdictions.
Over-classification means you paid too much. Refunds are available but require a formal claim, and most shippers never notice.
A wrong code that triggers a restriction stops the parcel. If the code you used requires a licence you do not hold, the shipment is held until it is resolved or refused.
Repeated errors move you up the risk profile. Once a shipper is flagged, subsequent shipments are inspected more often, and inspection is the most reliable way to add a week to a transit time — as our guide on parcels stuck in customs sets out.
Deliberate misclassification to reduce duty is a customs offence, not an administrative error. Penalties can substantially exceed the duty avoided.
Who is actually liable
The importer of record is legally responsible for the accuracy of the declaration, including the classification. That is the recipient on most consumer shipments, and the business on most commercial ones.
In practice the shipper supplies the code and the customs broker enters it. Neither of those transfers liability. If the code is wrong, the importer pays the difference and any penalty, and their recourse against whoever supplied it is a commercial matter rather than a customs one.
For sellers shipping internationally, that means the code on your invoice becomes your customer's problem. It is a reason to get it right rather than a reason to leave it blank.
Related numbering systems
You will encounter several names for what is broadly the same thing.
Commodity code and tariff code are the general terms, used interchangeably with HS code in most contexts.
Schedule B is an export-specific classification used in the United States, sharing the first six digits with the HS.
TARIC is the European Union's extended version, adding digits beyond the national eight for measures like anti-dumping duties.
Country-specific names exist in most jurisdictions for the national extension of the same system.
All of them build on the same six-digit international core, which is why that part is the piece worth confirming first.
Where the code appears
On a commercial invoice, next to each line item alongside the description, quantity, value and country of origin. This is the primary place customs reads it.
On a customs declaration, whether that is a postal declaration form or an electronic export declaration.
In shipping software and marketplace product data, as a per-product field. Setting it once at product level means every future shipment carries it automatically, which is the single most effective thing an online seller can do to reduce customs friction.
Our guide on documents needed for international shipping covers what else goes alongside it, and avoiding customs delays covers the other common triggers for a hold.
For online sellers
Three practical steps, done once.
Classify your catalogue rather than your shipments. Assign a code to each product in your store or inventory system, and it flows onto every declaration automatically.
Set country of origin at the same time. Origin and classification together determine whether a trade agreement applies, and a preferential rate is often worth more than any shipping optimisation.
Review annually. The Harmonized System is revised periodically and codes are added, merged and withdrawn. A code that was valid three years ago may no longer exist, and a declaration using a withdrawn code is rejected.
If you sell on Shopify, these are product-level customs fields, and our Shopify shipping integration guide covers where to set them.
The mistakes that come up most
Copying a supplier's full code. The first six digits transfer between countries; the last two to four do not. Take the six and look up the rest locally.
Classifying by what the product is called. Marketing names mean nothing to the tariff. A "gaming chair" is classified as a chair, and which kind of chair depends on the frame material and whether it swivels.
Using one code for a whole catalogue. Convenient and wrong the moment the catalogue contains two materials. Textiles in particular split by fibre, so a cotton shirt and a polyester shirt are different codes.
Leaving the field blank and letting the broker decide. The broker will pick something defensible and often conservative, meaning a higher rate. It is your money and your liability either way.
Never revisiting it. Codes are revised periodically. A withdrawn code causes a rejected declaration, and it fails at the border rather than at the point of entry into your system.
The short version
Six digits are universal, the rest are national. The number sets your duty rate, your restrictions and your eligibility for preferential treatment. Find it in your own country's tariff schedule rather than by searching, apply it consistently, and put it on every product record rather than every parcel.
Then track the shipment on our home page, and if it does stop at a border, a correct code is the reason the hold will be short.