Skip to the content
FreightParse

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 shownAmong the first three shown
All 987 products68.4%87.2%
529 customs rulings76.7%91.7%
458 marketplace listings58.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.