Dangerous goods classification is the bit of shipping nobody budgets time for, right up until a pallet gets refused at the depot. If you sell nail varnish, power banks, cleaning products, perfume or anything with a battery tucked inside it, the question is not academic. Get it wrong and you are looking at a refused parcel at best, and an undeclared hazmat shipment at worst.
The good news: for most e-commerce catalogues, five checks catch nearly everything. This guide walks through them in order, shows you where the answer actually lives, and is honest about the point where you need a lab result rather than a guess.
What dangerous goods classification actually decides
A dangerous good is any substance or article that the regulations say poses a risk in transport. That is it. It has nothing to do with how safe the product is on your shelf, and everything to do with what happens when it is stacked in an unpressurised cargo hold at altitude, or sat in a lorry at 45 °C.
Dangerous goods classification is the process of deciding, for one specific product, which of those regulated categories it falls into — and then producing the four fields that travel with it on every shipping paper: UN number, proper shipping name, hazard class and packing group.
Three rulebooks matter, depending on how the parcel travels:
- 49 CFR — the US Hazardous Materials Regulations, covering road and rail. Published by PHMSA.
- IATA DGR — air, and by a distance the strictest of the three.
- IMDG Code — ocean, published by the International Maritime Organization.
They agree on most things and diverge on the details that will cost you money. A product can be perfectly shippable by road and forbidden on a passenger aircraft. So the first thing to fix is the mode, then classify for it.
The duty sits with whoever offers the goods for transport. 49 CFR 172.101 requires the shipper to classify and describe the material correctly — a 3PL, a broker or a piece of software does not take that off you.
Classify7 ruleset team, on why every determination we return cites its source provision
The five-question screen
Run every SKU through these. One yes and you need a proper classification.
1. Is there a cell or battery in it, or with it?
This is the big one, and it is the one people miss most often. Lithium cells are regulated under UN3480, UN3481, UN3090 and UN3091, and which number applies depends on whether the battery ships alone, packed with equipment, or contained in equipment. Bluetooth speakers, heated jackets, e-bike spares, wireless earbuds, kids' toys — all in scope.
It bites hardest on the products nobody thinks of as electronics. A lit-up trainer. A greetings card that plays a tune. If it has a coin cell, it has a classification question attached to it. The detail is in our guide to lithium battery shipping and packing instructions PI965, PI966 and PI967.
2. Does it hold pressure?
Aerosols, gas cartridges, inflatables with a charged canister, some cosmetics. Class 2, and even a small deodorant tin is a regulated article.
3. Will it burn?
The threshold that matters is flash point. A liquid with a flash point below 60 °C is a Class 3 flammable liquid. Perfume, hand sanitiser, nail varnish, solvent-based adhesives and a surprising number of "natural" essential oil blends all clear that bar comfortably.
4. Will it corrode?
Drain cleaner, descaler, some pool chemicals, battery acid, strong alkalis. Class 8 depends on concentration and contact time, which is why the same chemical can be regulated at one strength and unregulated at another.
5. Does the label carry a GHS pictogram?
The orange-and-white diamonds are not the same system as transport classification, but they are a very reliable smoke alarm. A flame, a corrosion symbol or a gas cylinder on your retail packaging means the transport question is live.
A worked example: the thing that looks harmless
Here is the shape of problem we see constantly. A homeware brand adds a reed diffuser to its range. It is a glass bottle of scented oil. Nothing on the retail box suggests danger, and it has shipped by van for months without incident.
Then the brand switches to an air service for next-day delivery, and the shipments start coming back. The carrier's screening flags it. The diffuser base is around 70 % isopropyl alcohol, which puts the flash point near 12 °C — comfortably a Class 3 flammable liquid, UN1993, packing group II. It was regulated the whole time. Nobody had asked, because the product did not look like a chemical.
The pattern repeats with candles that turn out to be gel, with "alcohol-free" toners that contain ethanol, and with any product where the marketing description and the composition tell different stories.
Reading the Hazardous Materials Table
Once a product screens positive, you need an entry. The Hazardous Materials Table at 49 CFR 172.101 is the master list: UN number, proper shipping name, class, packing group, labels and special provisions, all in columns.
Two rules save a lot of pain. First, a specific entry always beats a generic one. If your material is acetone, ship it as UN1090 acetone, not as a generic flammable liquid. Second, when nothing specific fits, the n.o.s. entries ("not otherwise specified") exist to catch the remainder, and they require you to name the hazardous constituents in brackets after the shipping name.
Here is what a handful of ordinary household products resolve to:
| Product | UN number | Class | PG | Usual trip-up |
|---|---|---|---|---|
| Hand sanitiser, 70 % ethanol | UN1170 | 3 | II | Assumed exempt because it is a consumer good |
| Aerosol deodorant | UN1950 | 2.1 | — | Class 2 carries no packing group |
| Power bank, 20 000 mAh | UN3480 | 9 | — | Watt-hour rating missing from the listing |
| Speaker with battery inside | UN3481 | 9 | — | Declared as UN3480 in error |
| Household bleach, 5 % | UN1791 | 8 | III | Regulated status depends on concentration |
| Nail varnish | UN1263 | 3 | II | Sold as cosmetics, shipped as paint-related |
| Dry ice in a cool box | UN1845 | 9 | — | Net weight not marked on the outer |
The carrier rules sit on top, not underneath
This trips up more people than the regulations do. A UN number being legal to ship does not mean your carrier will carry it. Each carrier publishes its own tariff, and those tariffs are frequently stricter than 49 CFR — sometimes far stricter, and they change without much fanfare.
USPS, for example, refuses categories that UPS will happily take by ground. Amazon applies its own FBA hazmat review on top of everything else. So the last step of any classification is always: will this specific carrier take this specific UN number on this specific service? Our carrier-by-carrier comparison of hazmat restrictions lays the differences out side by side, and the carrier rules reference keeps the current positions.
When the honest answer is "I don't know yet"
There is a strong temptation, when a classification is unclear, to pick the nearest plausible UN number and move on. Please don't. A wrong UN number on a shipping paper is a false declaration, and it is materially worse than a blank one, because it tells everyone downstream to handle the package in a way that may be exactly wrong for what is inside.
- Trusting section 14 of an SDS without checking it. It is frequently stale, and it is written for the supplier's bulk drum, not your 50 ml retail bottle.
- Classifying the ingredient rather than the mixture. A 3 % solution and a 30 % solution are different classifications.
- Reusing a classification after a reformulation. New supplier, new solvent, new answer.
- Forgetting the battery is a separate determination from the device it powers.
- Assuming "limited quantity" removes the need to classify. It changes the paperwork, not the identity of the material.
This is why Classify7 returns needs_review with is_hazmat: null rather than a nearest guess when the encoded ruleset cannot reach a defensible answer. It is a less satisfying response, and it is the correct one.
Recording a dangerous goods classification properly
Reaching an answer is only half the job. The other half is recording it so that it survives contact with an audit, a staff change or a reformulation eighteen months later.
A defensible record of a dangerous goods classification holds five things:
- The inputs. The composition, concentrations and measured properties you classified from, and which SDS revision they came from.
- The output. UN number, proper shipping name, class and division, packing group.
- The provision. Which entry in the Hazardous Materials Table, and which special provisions you followed through.
- The edition. Which version of 49 CFR, the IATA DGR or the IMDG Code the criteria came from.
- The date. When the determination was made.
That fourth item is the one nearly everyone omits, and it is the one that decides how painful next January is. Without an edition recorded against each determination, you cannot tell which classifications need re-checking after an amendment — so the honest scope of the work becomes "all of them", and the practical outcome is that nobody does any of it.
PHMSA's hazmat guidance is clear that the shipper must be able to demonstrate the basis of a classification, not merely assert the result. A four-digit number in a spreadsheet cell is an assertion. The five fields above are a basis.
Doing dangerous goods classification at catalogue scale
Five checks per product is fine for twenty SKUs. At two thousand, with suppliers reformulating quietly and carriers revising tariffs, manual dangerous goods classification stops working — not because it is hard, but because it is never finished.
That is the case for treating dangerous goods classification as a pipeline step rather than a spreadsheet exercise. Send the description, composition or SDS text to an API at listing time, store the determination against the SKU, and get told when the applicable regulatory edition changes underneath you. We walk through the trade-offs in manual versus automated hazardous cargo classification.
Either way the sequence is identical, and it is worth committing to memory: identify the material, screen it, find the entry, resolve the packing group, then check the carrier. Do those five things in that order and dangerous goods classification stops being the thing that ambushes you on a Friday afternoon.