How to Classify a Mixture for GHS Health Hazards (The Actual Math)
Most guides to GHS mixture classification stop at "follow the criteria." This one shows you the arithmetic, because if you formulate novel mixtures, the criteria are arithmetic — and the difference between a defensible SDS and a guess is whether you can reproduce the number.
This walks through the three calculation patterns that cover most health- and environment-hazard classification for an untested mixture: the additivity formula for acute toxicity, the summation method for aquatic hazards, and concentration cut-offs for irritation and corrosion. If your mixture itself hasn't been tested as a whole — which is the normal case for a proprietary blend — these are the methods GHS tells you to use, in priority order, on your component data.
First principle: you classify from components when you can't test the whole
GHS sets a hierarchy. If you have reliable test data on the complete mixture, you use it. If you don't, you apply bridging principles (using data on similar tested mixtures), and where those don't apply, you calculate from the classified components using the methods below. For a formulator iterating on recipes, calculation is the workhorse — you rarely have whole-mixture tox data on every variant.
Acute toxicity: the additivity (ATEmix) formula
Acute toxicity is the cleanest example of "classification is a calculation." Each classified component has an acute toxicity estimate (ATE) — either a real LD50/LC50, or a converted point estimate derived from its hazard category. You combine them with this formula:
100 Ci
------ = Σ ----
ATEmix ATEi
where Ci is the concentration of component i (as a percentage) and ATEi is that component's acute toxicity estimate, summed over every component with a known ATE for the relevant route of exposure.
The converted point estimates for the oral route are the standard GHS values:
| Oral acute tox category | LD50 range (mg/kg) | Converted ATE point estimate |
|---|---|---|
| Category 1 | ≤ 5 | 0.5 |
| Category 2 | 5–50 | 5 |
| Category 3 | 50–300 | 100 |
| Category 4 | 300–2000 | 500 |
| Category 5 | 2000–5000 | 2500 |
Worked example
Take a mixture:
- Component A — 20%, classified Acute Tox. Category 3 (Oral) → ATE = 100
- Component B — 10%, classified Acute Tox. Category 4 (Oral) → ATE = 500
- Remaining 70% — components with no acute oral toxicity, contributing nothing
Plug in:
100/ATEmix = 20/100 + 10/500 = 0.20 + 0.02 = 0.22
ATEmix = 100 / 0.22 ≈ 455 mg/kg
An ATEmix of 455 mg/kg falls in the 300–2000 band, so the mixture classifies as Acute Tox. Category 4 (Oral).
The trap: ingredients of unknown acute toxicity
The formula above assumes you know the ATE of every relevant component. If some components have unknown acute toxicity (not "non-toxic" — genuinely unknown), there's a correction. As long as the total of the unknown components is ≤ 10%, you use the formula as written. If it exceeds 10%, you must remove that fraction from the numerator:
100 − (Σ C_unknown) Ci
------------------ = Σ ----
ATEmix ATEi
This is one of the most common places hand-calculations go wrong — people either ignore unknown components entirely or fail to apply the 10% correction. It changes the result, and it's exactly the kind of conditional rule a deterministic engine applies without forgetting.
Aquatic toxicity: the summation method and M-factors
Environmental classification uses a different combination rule. For acute aquatic hazard, you use the summation method: a mixture is classified Aquatic Acute Category 1 if the sum of the concentrations of its Category 1 components, each multiplied by its M-factor, reaches 25%.
The M-factor exists because some components are toxic far below the normal 1 mg/L threshold, and a straight concentration sum would understate their contribution. The factor scales with toxicity by orders of magnitude:
| Acute L(E)C50 (mg/L) | M-factor |
|---|---|
| 0.1 < L(E)C50 ≤ 1 | 1 |
| 0.01 < L(E)C50 ≤ 0.1 | 10 |
| 0.001 < L(E)C50 ≤ 0.01 | 100 |
| 0.0001 < L(E)C50 ≤ 0.001 | 1000 |
So a component at 3% with an M-factor of 10 contributes 3 × 10 = 30% to the sum — and on its own pushes the mixture over the 25% line into Aquatic Acute Category 1. Miss the M-factor and you'd have recorded 3% and concluded "not classified." This is precisely the kind of multiplier that's easy to overlook by hand and trivial to apply consistently in a rules engine.
Chronic aquatic classification uses an analogous summation with its own thresholds and M-factors, layered with rules for rapidly degradable versus non-degradable components.
Irritation and corrosion: additivity by concentration cut-off
Skin and eye effects use an additivity approach built on generic concentration limits. You sum the concentrations of components in the relevant category and compare against thresholds. For skin, in simplified terms:
- Sum of Category 1 (corrosive) components ≥ 5% → mixture is Skin Corrosion Category 1
- Sum of corrosive components ≥ 1% but < 5%, or sum of Category 2 (irritant) components ≥ 10% → Skin Irritation Category 2
Eye irritation/damage follows a parallel structure with its own limits. There are refinements — additivity doesn't always apply (for example, when a component acts by a non-additive mechanism such as pH extremes), and specific concentration limits can override the generic ones. But the core move is the same: classify the mixture by summing classified components against published cut-offs.
Why this is a determinism problem, not a judgment call
Notice what every one of these methods has in common. The inputs are concrete — concentrations, component categories, ATEs, M-factors, L(E)C50 values. The rules are published. And the output is a single correct category that anyone applying the rules correctly will reproduce. There is no place in this pipeline where "the model's best guess" improves on arithmetic. A classification verdict is a calculation, and a calculation should be exact, reproducible, and traceable to the rule that produced it.
That's also why the failure modes are so specific: a forgotten 10%-unknowns correction, an un-applied M-factor, the wrong generic cut-off, a specific concentration limit that should have overridden the generic one. These aren't matters of opinion — they're places to slip, and they're exactly where consistent rule application pays off.
See the math on your own mixture
GHSLogic's free calculators run every one of these calculations deterministically and shows the work — the ATEmix arithmetic, the M-factor-weighted aquatic sum, the cut-off comparisons — so the category it assigns comes with the equation behind it, not just an answer. Drop in your components and concentrations and watch it classify, step by step, with the rule path visible for every result.
If you've been classifying mixtures by hand, the calculator won't tell you anything you couldn't derive yourself — it'll just do it the same way every time, document it, and never forget the 10% correction.
This post is a general explanation of GHS classification methodology, not legal or compliance advice. Exact criteria, cut-offs, and point estimates are defined in the applicable regulation (e.g., the UN GHS "Purple Book," OSHA HCS Appendix A, or CLP Annex I); confirm against the governing text for your jurisdiction before making classification decisions.