Search for dangerous goods classification software and you get two kinds of result: enterprise compliance platforms with a "request a demo" button, and free UN number lookup tables. There is a wide gap in the middle, and most e-commerce teams live in it.
This is an honest comparison of the three approaches actually in use, what each is genuinely good at, and the specific way each one fails. We build one of these, so read the last section with appropriate scepticism — but the criticisms of our own category are real ones.
Three approaches to dangerous goods classification software
1. Enterprise compliance suites
The incumbents. Labelmaster's DGIS is the best known, and Verisk 3E operates in adjacent territory. These are comprehensive systems covering classification, documentation, training and often the physical labelling supply chain.
Genuinely good at: depth of coverage, full HMT and DGR entry sets, multi-modal, integration with document generation, established support. If you are shipping bulk chemicals across several modes with a compliance team, this is the correct category.
Where it fails: not on capability — on shape. It is sales-led with procurement cycles measured in months, priced for organisations with a compliance budget line, and built around a workflow where a trained person sits down to classify. A five-person brand adding a SKU at 11pm is not the user it was designed for.
2. The spreadsheet
By far the most widely deployed classification system in e-commerce, and the one nobody lists as a tool. A shared sheet with SKU, UN number, class, packing group, maybe a note about which carrier refused it once.
Genuinely good at: free, instantly available, no integration work, and everyone can read it. For a small stable catalogue it is a perfectly reasonable record of classification work done properly elsewhere.
Where it fails: silently. A spreadsheet cannot tell you that a supplier reformulated, that an edition changed, or that a carrier revised its tariff. It records a decision and then holds it indefinitely, with no signal that the decision has expired. Worse, it accumulates internal contradictions — the classic being a UN3480 row sitting next to a PI967 packing instruction, which cannot both be right.
3. Classification APIs
Single-purpose services that take a product and return a determination over HTTP. Our own product sits here.
Genuinely good at: fitting into a pipeline rather than a workflow. Classification happens at listing creation or at label generation, without a person. Self-serve, so no procurement cycle. Determinations can be stored with a ruleset version and re-run when it moves.
Where it fails: narrowness. An API classifies; it does not train your staff, generate your labels, or manage your regulatory library. If you need a compliance programme rather than a determination, an API is one component of it and not the answer. And a young ruleset covers fewer entries than a decades-old commercial one — which is fine only if the tool is honest about its boundary.
| Criterion | Enterprise suite | Spreadsheet | Classification API |
|---|---|---|---|
| Time to first determination | Weeks to months | Immediate | Minutes |
| Entry coverage | Comprehensive | Whatever you added | Varies; check the boundary |
| Carrier tariffs included | Usually | No | Varies |
| Detects a stale determination | Usually | Never | If versioned |
| Fits in a listing pipeline | Rarely | No | Yes |
| Audit trail | Yes | Edit history at best | Varies; look for signed artefacts |
| Suits a five-person brand | No | Up to a point | Yes |
| Suits a chemical manufacturer | Yes | No | Partially |
The question that actually separates them
Forget feature lists. Ask any classification tool one thing: what does it do when it does not know?
A tool that always returns a UN number is not more capable than one that sometimes does not. It is less honest. Classification has genuine boundaries — a mixture with no specific entry, a packing group that depends on a flash point nobody measured, an entry outside the encoded set. At those boundaries there are two possible behaviours:
- Return the nearest plausible entry, and let a wrong UN number flow onto a shipping paper.
- Return "I cannot determine this", and let a human resolve it.
The first feels better in a demo and is materially worse in production, because a wrong UN number tells everyone downstream to handle the package in a way that may be exactly wrong. This is why Classify7 returns needs_review with is_hazmat: null rather than a nearest guess, and it is the first thing we would test in a competitor.
A confident wrong answer is the worst possible output of a classification system. It is worse than no answer, because no answer stops the process and a wrong answer does not.
Classify7 ruleset team
The costs that do not appear in the pricing table
Comparing dangerous goods classification software on licence fee alone gets you the wrong answer, because the fee is rarely the dominant cost.
- Time to first determination. An enterprise procurement cycle running three months while a product launch waits is a real cost, and it does not appear anywhere on an invoice.
- Integration work. A tool that cannot be called from your listing flow means someone copies values between systems, which is where transcription errors enter.
- Re-verification labour. If the tool does not version its answers, every regulatory edition triggers a full catalogue review rather than a short exception list. That recurs annually.
- The cost of a wrong answer. Refused consignments, stranded inventory, and at the far end civil penalties reaching six figures per violation under 49 CFR 107.329.
Weigh those against the licence fee and the ranking often inverts. A free spreadsheet with an annual full-catalogue re-verification can easily be the most expensive option in the list, because the labour is real and recurring even though nobody invoices for it.
Conversely, comprehensive coverage genuinely is worth paying for if your catalogue includes materials outside the common commercial set — that is precisely the case enterprise dangerous goods classification software is built for, and an API with a narrower encoded entry set will keep returning needs_review at you.
Four tests to run on any tool
- Give it something ambiguous. A vague product description with no composition. Does it guess, or does it decline?
- Give it a lithium battery in equipment. Check that the UN number comes back UN3481 and the packing instruction PI967, and that they agree. Contradiction here is the most common defect in the category.
- Ask where an answer came from. A determination without a cited provision cannot be defended in an audit, and the shipper is the one who has to defend it.
- Ask what happens when the edition changes. If nothing happens, your stored determinations decay silently — which is the spreadsheet failure mode wearing a nicer interface.
- Comparing on licence fee alone, ignoring integration and re-verification labour.
- Testing only products the tool is obviously good at, and never probing its boundary.
- Accepting a determination with no cited provision, which cannot be defended in an audit.
- Assuming a tool that always returns an answer is more capable than one that declines.
- Buying a compliance suite when the actual gap is a missing API call, or vice versa.
Choosing honestly
There is no universal answer, and anyone claiming one is selling something.
- Bulk chemicals, multiple modes, a compliance team — an enterprise suite. This is what they are for, and an API is not a substitute for a compliance programme.
- Under twenty stable SKUs, one mode, one carrier — a spreadsheet is defensible, provided the classification work behind each row was done properly and you diarise a review.
- A growing catalogue, several carriers, listings created by people who are not compliance specialists — an API, because the failure mode you need to eliminate is drift, and drift is a versioning problem.
If you are evaluating platform-level support rather than standalone tools, our review of hazmat support in shipping platforms covers what ShipStation, Shippo and EasyPost do and do not handle. For the operational case behind automating at all, see manual versus automated hazardous cargo classification. And whichever tool you pick, it still has to get the fundamentals right — our guide to running a UN number lookup properly is a reasonable benchmark to test one against.
Whichever way you go, the regulatory floor is the same for everyone and it is free to read: the Hazardous Materials Regulations on eCFR, and PHMSA's hazmat guidance. No tool relieves you of the duty at 49 CFR 172.101 to classify correctly.