
Somewhere on every forwarding and brokerage floor, several times a day, someone classifies goods for customs. Sometimes it is a deliberate exercise with the tariff open. More often it is thirty seconds between emails: the shipper sent “assorted connectors,” the entry is due, and the code that cleared last time is right there in the previous file.
The wrong HS code sets the wrong duty rate, the wrong tax treatment, and sometimes the wrong answer to whether the goods needed a permit at all. It is also one of the few errors that compounds: a misclassification repeated across a year of entries is a year of incorrect duty, discoverable in one audit. We wrote a general explainer on the system itself in Understanding HS Codes: A Complete Guide for Importers; this guide is the companion piece for practitioners - the actual process of getting from a product to a defensible code.
What you are actually choosing
A quick recap of the structure, because the process depends on it. The Harmonized System, maintained by the World Customs Organization, is organized into 21 sections and 97 chapters (chapter 77 is held in reserve). Chapters break into 4-digit headings, and headings into 6-digit subheadings - more than 5,600 of them in the current HS 2022 edition. Those six digits are the international layer: they mean the same thing in every member administration.
Everything after digit six is national. The United States extends to a 10-digit HTS number; Canada classifies to a 10-digit level of its own Customs Tariff, as CBSA’s documentation requirements spell out. So classifying goods for customs is really two decisions in sequence: the internationally harmonized six digits, then the destination country’s remaining digits. Get the six wrong and the national digits are wrong with them.
Step 1: Start from the product, not the product name
Classification runs on what a thing objectively is: what it is made of, what it does, how it is presented. It does not run on what the sales catalog calls it. Before touching the tariff, be able to answer:
- What is it? The item itself, not the category (“a cotton knitted hooded sweatshirt,” not “apparel”).
- What is it made of? Material composition drives huge swaths of the nomenclature, and mixed materials raise exactly the questions the tariff’s rules exist to settle.
- What does it do, and what is it for? Function and intended use separate headings that materials alone cannot.
- How does it ship? Finished and packaged for retail, in bulk, unassembled, as part of a set - presentation changes classification.
If the description in hand cannot answer these, the classification exercise has already failed, whatever code gets picked. “Parts,” “samples,” and brand names classify nothing. This is also the moment to push back on the shipper’s paperwork, while there is still time to fix it.
Step 2: Find candidate headings, and distrust the search box
With a real description, find the plausible 4-digit headings. Tariff browse tools, keyword search, and prior rulings all work as starting points. The trap is that the tariff is written in legal language, not trade language. A “hoodie” appears nowhere in the nomenclature; a “jersey, pullover, cardigan, waistcoat and similar article, knitted or crocheted” does. Searching trade vocabulary against tariff vocabulary produces near misses that look right, and a near miss at the heading level cannot be repaired later at the subheading level.
Watch the head noun. A “steel bolt” and a “bolt of fabric” share a word and nothing else; a “leather watch strap” is not a heading about leather. Classification follows what the thing fundamentally is - the noun - qualified by its materials and use, and a search that matched on the qualifier instead of the noun will hand you a confident, wrong candidate list.
Step 3: Read the legal notes before believing a heading
Every section and chapter opens with legal notes, and the notes outrank the heading text. They define terms, include and exclude products by name, and redirect whole product families to other chapters. A heading that reads perfectly can be explicitly excluded by a note two pages earlier, and the note wins. This is the single most skipped step in desk-level classification, and the most common reason a plausible code is simply wrong. If the classification matters - and at entry, it always does - the notes for the candidate chapter get read, every time.
Step 4: Apply the General Rules, in order
When candidates survive the notes, the WCO’s six General Rules for the Interpretation of the Harmonized System (the GRI) decide between them. They apply in sequence, and most classifications never get past the first:
- GRI 1: classify by the terms of the headings and the section and chapter notes. If exactly one heading describes the goods, that is the classification.
- GRI 2: incomplete or unassembled articles classify as the finished article if they have its essential character; references to a material cover mixtures of it.
- GRI 3: when two or more headings fit, prefer the most specific description; failing that, classify by the component that gives the goods their essential character; failing that, take the last heading in numerical order. Sets and kits live here.
- GRI 4: goods that fit nowhere classify with the goods they most resemble. Reaching this rule is rare and usually means step 1 was rushed.
- GRI 5: cases and packing materials generally follow the goods they contain.
- GRI 6: the same logic repeats inside the heading to choose the subheading, comparing only subheadings at the same level.
The rules read as legal boilerplate until the first genuinely ambiguous product, at which point they are the only thing standing between a defensible decision and a coin flip. When a classification is challenged, the defense is a GRI argument, so it is worth being able to state which rule carried the decision.
Step 5: Resolve the national digits
With six digits settled, open the destination tariff - the HTS for the United States, the Customs Tariff for Canada - and work down the national breakouts. National lines subdivide by criteria the international layer does not use, and they change on national schedules, independent of the WCO. This step also surfaces the destination-specific consequences: the actual duty rate, preferential eligibility, and any measures attached to that line.
Step 6: Write down why
A code without a rationale is a liability with a number on it. Record the description used, the headings considered, the notes consulted, and the rule that decided it. For high-stakes or recurring products, administrations offer certainty on request: US CBP publishes its classification decisions in the CROSS rulings database and issues binding rulings, and CBSA offers advance rulings that settle a classification before the goods move. A ruling converts your hardest classification from an opinion into an answer.
The traps that produce most misclassifications
Across real desks, the same failure patterns account for most wrong codes:
- Inheriting the last shipment’s code. The product changed, the code did not. Copy-paste is the dominant misclassification mechanism in volume operations.
- Trusting the exporter’s code. The exporter classified under their own national schedule, for export. Their national digits are not yours, and sometimes their six digits deserve a second look too.
- Classifying the qualifier. The steel-bolt problem from step 2: matching on material or use words instead of what the item is.
- Skipping the notes. The plausible-heading trap from step 3.
- Forcing a single answer to an ambiguous product. Some goods genuinely sit between two headings. The honest resolution is a GRI 3 argument or a ruling request, recorded either way, not quiet confidence.
Where software fits, and where it should not
Classification is judgment applied to a description, which is exactly the shape of problem where software should assist and not decide. That principle is built into how CargoLint handles HS codes. The search surface classifies: it takes a real product description, searches both trade language and tariff language semantically, and returns ranked candidate codes, each with a written rationale and hints on what a better description would change. The document surface validates: codes already declared on invoice lines are checked against the goods description, and low-agreement codes are flagged with “did you mean” alternatives. Suggestions are never auto-applied. A person confirms every code, which is the arrangement an audit expects to find.
You can try the classification surface on your own products with the free HS code lookup tool - no account required.
One more reason to build the process now: the nomenclature is about to move. The WCO has finalized HS 2028, which enters into force on 1 January 2028 with 299 sets of amendments to the current edition. Codes that are correct today will need re-checking against the new edition. A desk that classifies by process can absorb that; a desk that classifies by memory gets to start over.