How well the HS code finder does: 987 products it had never seen
Any classifier looks good on the examples it was tuned on. So before the first run we froze a benchmark of 1,413 products whose 6-digit HS code is known, tuned only on 426 of them, and then measured the finder once on the other 987.
| First code shown | Among the first three shown | |
|---|---|---|
| All 987 products | 68.4% | 87.2% |
| 529 customs rulings | 76.7% | 91.7% |
| 458 marketplace listings | 58.7% | 82.1% |
The first 4 digits (the heading) were right first for 76.5% of the 987.
The products
- 529 US customs rulings (U.S. Customs and Border Protection, CROSS, public domain): a product as customs described it, with the code customs decided. Often hard cases: a ruling is asked for when the code is not obvious.
- 458 marketplace listings (the HSCodeComp dataset, Apache 2.0): sellers' own short titles, often without the material or the use, with their HS code.
- 88 of the 96 chapters; 69% of the 1,413 sit in the chapters where e-commerce goods are.
- No customer data was used.
How it was scored
- The engine behind this page, with the same settings: Gemini 3.8 Flash, the search's candidates from the official tariff, and similar published customs rulings as examples. The test called the model through Google's Gemini API; this page calls the same model on Vertex AI in the EU.
- From the description alone, as a visitor would type it.
- A code counts as right only when all 6 digits match. The 8-digit CN code was not scored: the benchmark has no EU 8-digit answers.
- One run on the 987, on 18 October 2026. 16 requests timed out and were sent once more; 1 still failed and counts as wrong. Nothing was changed after seeing the results.
When the finder asks what is missing
For 36% of the 987 the finder asked a question (what the product is made of, who it is for, knitted or woven...). If every question is answered correctly, 74.3% of the 987 come out right, and the marketplace listings go from 58.7% to 68.8%. That is the most the questions can add, measured by answering them from the benchmark's own code; a real answer can be wrong.
What this means for you
- Treat the result as a short list with the official text, not a ruling: in 87 of 100 products the right code was among the first three shown.
- A short title is the hard case. Add what the product is made of, what it is for and who it is for, or answer the question.
- Check the code before you file it. A binding answer (a BTI) only comes from a customs authority.
Where your description goes
Read in Google's EU region, not used for training. A request flagged by Google's abuse checks may be kept up to 90 days, in the EU. FreightParse keeps no copy on its server.