HTS Classification Agent.
Find the US tariff code for any product.

Describe a product. The agent searches CBP rulings, applies GRI rules, checks the code against the current HTS schedule, and returns the code as deep as your facts support, with the duty actually collected on past imports (US Census Bureau). Usually 15–35 seconds. Web UI below, API access included.

Add to Claude Use it inside Claude: classification, HTS codes and CBP rulings as tools. Needs an API key: sign in, or get one below.
220K+CBP Rulings
26K+HTS Codes
WeeklyData Refresh
CensusDuty Source
Complete the captcha first.
View raw JSON

    

What the API returns

HTS codes, as deep as the facts allow
Up to 3 candidates with confidence levels and GRI-based rationale citing tariff schedule notes. Short of 10 digits, the options and the question that decides them.
Duty actually collected
What importers from your country of origin paid on each code, from the US Census Bureau: the latest 3 published months for the 10-digit line, base rate plus Section 301/232 and other Chapter 99 duties (anti-dumping and countervailing duties are not included). Past imports, not your shipment's duty.
CBP ruling evidence
Matched by meaning from 220K+ CROSS rulings. Shown only when relevant to your product.
Legal notes
Official Section, Chapter, and Heading notes. The GRI rules customs brokers use to classify.
Progressive clarification
When uncertain, asks the specific question that resolves the next level in the tariff hierarchy.
Import volume
How much is imported, from where, at what rate. Real Census trade data.

One POST request

JSON in, JSON out. No SDK required.

# Classify a product
curl -X POST https://htsapi.dev/v1/classify \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "description": "yoga mat",
    "country_of_origin": "China"
  }'

# Response includes:
# - answer: the code as deep as the facts support, e.g. "9506.91.00.30"
# - candidates: 1-3 codes, each with confidence, rationale, cited CBP ruling
# - importers_paid: what importers from China paid on each code, latest 3 Census months
# - legal_notes: Chapter 95 section and chapter notes
# - clarification: null (no missing fact)

Guides

Also: Duty stacking · De minimis · CBP rulings · Audit response

How the HTS classification API works

An AI agent does the investigation. One API call returns the code with evidence.

1. CBP rulings, first
The agent searches 220,000+ CBP precedents for similar products. When a ruling clearly applies, it follows authoritative precedent.
2. GRI reasoning
When precedent is thin, the agent reads chapter and section notes and applies the General Rules of Interpretation to pick the right heading.
3. Schedule verification
Every committed code is checked against the current 2026 HTS schedule. Older rulings often cite codes that have since been restructured; the agent finds the current equivalent.
4. Effective duty + evidence
Duty figures come from US Census Bureau trade data: duty actually collected on past imports, a historical average. The response includes cited rulings, GRI notes, confidence, and a clarification question when the answer depends on info you didn't provide.

Data coverage and accuracy

HTS classification accuracy (measured 2026-10-01)

Tested on 54 products drawn from CBP rulings issued in 2024 or later, the source ruling hidden from the agent, 2 runs. Method. The agent searches ruling precedents, reads the USITC HTS schedule, and applies GRI rules.

69–76%
exact 10-digit code
83–89%
right 6-digit subheading
85–91%
right 4-digit heading

Data sources updated for 2026

USITC Harmonized Tariff ScheduleChapters 1–97, refreshed weekly
CBP CROSS Customs Rulings220,000+ rulings, refreshed weekly
US Census Bureau Trade DataDuty paid, latest 3 months
Section 301/232 duties collectedIncluded in duty paid
GRI legal notesSection, Chapter, Heading

What makes this different from other HTS APIs

Most tariff classification APIs return a code and a rate. We return the code, the duty actually collected on past imports, from Census data (a historical average, not the duty your shipment will owe), the CBP ruling each candidate relied on (when one applies), the section and chapter legal notes read under the WCO General Rules of Interpretation, and a specific question when the answer isn't clear. Each figure names its source.

Frequently asked questions

How accurate is the HTS classification?

On a 54-product test drawn from 2024+ CBP rulings (the source ruling hidden from the agent, 2 runs, 2026-10-01): exact 10-digit code 69-76%, right 6-digit subheading 83-89%, right 4-digit heading 85-91%. Answers marked high confidence were exact 35 times out of 40. The agent searches CBP precedent and applies GRI rules, telling you its confidence level and asking clarification questions when uncertain, so you know when to trust the result and when to verify.

Where do the duty rates come from?

Two sources. The base rate comes from the USITC schedule (GET /v1/hts/{code}). What importers paid comes from the US Census Bureau International Trade API: duty collected divided by dutiable value on imports from that country, in each of the latest 3 published months, for the 10-digit line (when it had too little trade, its 6-digit group's months are shown as the group's). It includes Section 301/232 and other Chapter 99 duties actually paid; anti-dumping and countervailing duties are not included. They are history, not a quote: they describe past imports, not the duty a specific shipment will owe. The API does not compute the additional Chapter 99 duties (Section 301, 232 and others).

Does the API cover Section 301 tariffs on China?

As history, not as a computed duty. The API does not compute Section 301 or the other additional Chapter 99 duties (Section 232 and others) for a code. What importers paid includes the Chapter 99 duties actually collected on past imports from that country, so it shows how far above the base rate they paid. To check whether a code is on the Section 301 list, use USITC's China Tariffs list at hts.usitc.gov.

How does this compare to Zonos, Tarifflo, or Quickcode?

We have not benchmarked them. What we return alongside the classification: the duty actually collected on past imports (Census), the CBP ruling each candidate relied on, and section and chapter legal notes. Price: $0.05-$0.10 per classification.

Can I try it for free?

Yes. The web demo above is free with no API key required. Describe any product and get the full classification with duty rates, rulings, and legal notes.

What tariff schedule year does the API use?

The current 2026 USITC Harmonized Tariff Schedule release (Chapters 1–97), refreshed weekly. Census Bureau duty figures are the latest 3 months Census has published, about two months behind.

Pricing

No subscriptions. Credits never expire. Each /classify call = 1 credit. HTS lookups (GET /v1/hts/{code}) are free with a key.

100 Credits
$10
$0.10 per classification
Census duty-collected figures
CBP ruling evidence
GRI legal notes
Progressive clarification
Duty lookups and all other endpoints free
1,000 Credits
$50
$0.05 per classification
Everything above
50% cheaper per call

Already have an API key? Sign in

Need volume pricing? [email protected].