HS Codes for Ecommerce: How to Classify Products for Customs
HS codes decide your customs duty, delays and penalties. Learn how the six-digit code is structured, how to classify products correctly and keep codes stable.
Daniel R. Whitaker 8 min read
An HS code is a six-digit number that tells customs what a product is. Every country uses the same first six digits, set by the World Customs Organization's Harmonized System. Your carrier, customs broker and tax authority all read that number to decide duty rates, import restrictions and whether your shipment clears or sits in a warehouse. Get it wrong and the cost is a reclassification, a delay, or a bill for unpaid duty plus penalties.
Most sellers treat classification as a form field. It is closer to a legal declaration: you are stating what the goods are, and the importer of record is accountable for that statement. This guide covers how the code is built, how to find the right one, where sellers usually go wrong, and how to keep codes stable as a catalog grows.
How the HS Code Is Structured
The six-digit HS code breaks into three parts, and each level narrows the description. Read the digits left to right and the product group shrinks at every step.
Chapter, heading and subheading
- Chapter (first two digits): the broad product family, such as textiles (50–63) or machinery (84–85).
- Heading (first four digits): a narrower group inside the chapter.
- Subheading (all six digits): the international level where all member countries agree.
Beyond six digits, countries extend the code for their own tariff schedules. The US uses a 10-digit Harmonized Tariff Schedule code, the EU uses an 8-digit Combined Nomenclature code (sometimes 10 for exports), and other markets add their own digits.
What changes at the border
The first six digits travel with your product worldwide. The extra digits change at every border, which is why a code pulled from a US lookup may not be valid for a shipment into Germany.
What Actually Decides the Harmonized System Code
Sellers often classify by what the product is called in their store. Customs classifies by composition and function. A few factors carry most of the weight.
| Factor | Why it changes the code |
|---|---|
| Material | A cotton shirt and a polyester shirt can land in different subheadings; the fiber content matters. |
| Primary function | A novelty item that lights up may be classified as a lamp rather than a toy. |
| Presentation | Goods sold as a set can be classified as the component that gives the set its essential character. |
| Processing level | Raw material, semi-finished part and finished good sit in different headings. |
Sets, Kits and Bundles
The "essential character" idea comes up constantly with kits, bundles and gift sets. If you sell a skincare bundle, the code usually follows the product that does the main job, not every item in the box. Where a kit is genuinely ambiguous, the safest path is a separate code per component or a binding ruling.
Finding the Right Code: A Practical HS Code Lookup Process
Classification is a decision, not a search. The code you land on should follow from what the product is and how customs will read it, so work through the steps below in order rather than typing a product name into a lookup tool and taking the first result.
Step 1: Describe the product as customs sees it
Write a short factual description: what the item is, what it is made of, its main function, and whether it is sold alone or as a set. Materials matter more than brand or marketing name. "Stainless steel insulated bottle, 750 ml, no electronics" classifies differently from "smart bottle with temperature display."
Step 2: Find the chapter, then the heading, then the subheading
The Harmonized System is a hierarchy. Chapters sit at the two-digit level, headings at four digits, and national subheadings at six or more. Move down one level at a time and read the section and chapter notes before choosing a heading. Those notes often exclude products that look like they belong.
Step 3: Check the jurisdiction's tariff schedule
The first six digits are internationally consistent. Anything beyond that is set by the importing country, so an HS code lookup that returns a ten-digit number is only valid for that market. Use the destination customs authority's official tariff database and note that duty rates attach to the national code, not the global one.
Step 4: Record the reasoning
Keep a short note of why the code fits: the General Interpretative Rules applied, the notes consulted, and any ruling requested. If customs later questions the classification, that record is what shows the decision was made in good faith rather than guessed.
The HS Code Lookup, Step by Step
An HS code lookup is a research task, not a single search. Work from the product outward with these steps:
- Describe the item in plain terms. Write down what it is made of, what it does, and how it is sold. Material and function usually drive classification more than brand or marketing name.
- Start with the official tariff. Use the destination country's customs tariff database — the US International Trade Commission's HTS search, the EU's TARIC, or the equivalent national tariff tool. These are the authoritative sources; third-party lookup sites are only a starting point.
- Read the chapter notes. Chapters and sections carry legal notes that exclude or include products. A note can override the heading text, so read it before committing.
- Apply the General Rules for the Interpretation. These six rules decide which heading wins when more than one seems to fit. Rule 3 (most specific description) resolves most ecommerce conflicts; Rule 3(b) handles kits and sets.
- Confirm the full national code. Once you have the six-digit subheading, drill down to the country's full tariff line to get the actual duty rate and any licensing requirement.
- Record your reasoning. Keep a short note of why the code fits: product specs, the heading text, and the rule you applied. This is your defense if customs challenges the entry.
For an uncertain item, a binding ruling is the safest route. US Customs and Border Protection issues binding rulings on request, and the EU and other jurisdictions offer similar advance tariff decisions. A ruling removes the guesswork for the life of the product.
Short Example: Classifying a Bluetooth Speaker
Take a portable Bluetooth speaker sold in the US. The plain description is a battery-powered audio device with a wireless receiver. The tariff search points toward heading 8518, which covers loudspeakers and audio amplifiers; the national line depends on whether it is a single speaker or a multi-speaker set and on power output.
The same product at a different border
Now ship the same speaker to the EU. The six-digit subheading stays the same, but the EU Combined Nomenclature code and duty rate may differ, and the importer declares the EU code on entry. The US lookup result is not valid at the EU border. Adjusting the full national code per destination is not optional; it is the part that determines what the buyer actually pays.
When the shipment is a set
If the speaker ships with a charging cable and a travel case as a set, the essential-character question surfaces: the code usually follows the speaker, but confirm on the official tariff and keep a note. Numbers in this example are illustrative; check current rates and codes on each authority's site.
Keeping Codes Accurate as Your Catalog Grows
Classification is a maintenance job, not a one-time task. Build a simple internal record for each SKU: the six-digit HS code, the national tariff line for every country you ship to, the source you used, and the date you checked it. When a product's material or packaging changes, re-check the code before the next shipment.
Where the Record Lives
Keep that record with the rest of your order data, not in a spreadsheet someone forgets. The code feeds into duty and tax calculations at checkout, so an error shows up twice: once at customs and once in your landed-cost math.
When to Bring In a Broker
If you ship in volume, a customs broker earns their fee by getting classification right and by flagging quota or licensing issues before goods move. For a small catalog with stable products, an internal record is usually enough.
Where Ecommerce Sellers Get Classification Wrong
Most errors follow a few patterns. A seller copies a code from a competitor's listing without checking it against the tariff. Another uses one code for a whole product line when variants differ in material. A third uses a vague "parts" heading because it has a lower duty rate, which draws scrutiny on entry.
Software and digital goods
Software and digital goods can sit near physical media in the tariff, and the code should reflect what is actually being shipped, if anything.
Apparel, belts and bags
Apparel sizing, fabric blends and accessories such as belts and bags each need their own line; treating a clothing catalog as one code is a common cause of post-clearance adjustments.
Duty rates and penalty regimes differ by country and change over time, so verify current rates and rules on the destination customs authority's official site rather than relying on a summary.
Practical Takeaway
Treat the HS code as product data you own, not a field your carrier fills in. Confirm the six-digit code against the destination tariff, extend it to the national line for every market you sell into, and keep a written reason for each choice.
Where the classification is unclear, request a binding ruling instead of guessing. These steps cost a little time up front and prevent the more expensive outcome: a shipment held, reclassified, or assessed for back duty.
This article is general information, not legal or tax advice.