Air Quality Index (AQI) Calculator
Enter pollutant concentrations and get the US EPA Air Quality Index instantly — the overall AQI, the driving pollutant, its color-coded category and health guidance. Computed in your browser; leave a field blank to skip that pollutant.
Type at least one pollutant concentration above to compute the US EPA AQI.
Nothing leaves your browser. The AQI is computed on your own device from the official EPA breakpoint tables — there are no network requests, no sensor, no logging and no analytics on this tool. It reflects only the numbers you enter.
What the Air Quality Index actually is
The US EPA Air Quality Index squeezes pollutant concentrations measured in different units — micrograms per cubic metre for particles, parts per million or billion for gases — onto one 0-to-500 scale so a single number can describe how healthy the air is. Six pollutants have official breakpoints: fine particles (PM2.5), coarse particles (PM10), ground-level ozone, carbon monoxide, sulfur dioxide and nitrogen dioxide. Each 0-500 span is cut into six named bands, from Good (0-50) to Hazardous (301-500), each with an official colour used on maps and forecasts.
The EPA breakpoint method
AQI is not a smooth formula — it is a piecewise-linear lookup. For each pollutant the EPA publishes a table of concentration breakpoints paired with AQI breakpoints. To convert a concentration C, you find the row whose range straddles it and interpolate:
AQI = (I_high − I_low) / (C_high − C_low) × (C − C_low) + I_low
The concentration is first truncated (not rounded) to the table's precision — one decimal for PM2.5, whole numbers for PM10 — and the final AQI is rounded to an integer. When several pollutants are present, each is converted separately and the overall AQI is the maximum of those sub-indices; the pollutant behind that maximum is the reported driving pollutant.
Worked example: PM2.5 = 35.5 µg/m³
A 24-hour PM2.5 average of 35.5 falls in the Unhealthy for Sensitive Groups row, which runs from C_low = 35.5 to C_high = 55.4 and I_low = 101 to I_high = 150. Plugging in: (150 − 101) / (55.4 − 35.5) × (35.5 − 35.5) + 101 = 101. So 35.5 is exactly the bottom of that band and reads AQI 101 — one point into "Unhealthy for Sensitive Groups", not 100. Nudge the reading to 45.0 and you get (49/19.9) × 9.5 + 101 ≈ 124, comfortably mid-band. This one-unit gap between 35.4 (AQI 100) and 35.5 (AQI 101) is deliberate: it keeps every concentration mapped to exactly one category.
The six categories
| AQI | Category | What it means |
|---|---|---|
| 0-50 | Good | Air quality is satisfactory; little or no risk. |
| 51-100 | Moderate | Acceptable; unusually sensitive people should watch symptoms. |
| 101-150 | Unhealthy for Sensitive Groups | Children, older adults and people with heart or lung conditions may be affected. |
| 151-200 | Unhealthy | Everyone may begin to feel effects; sensitive groups more seriously. |
| 201-300 | Very Unhealthy | Health alert; the risk is increased for everyone. |
| 301-500 | Hazardous | Emergency conditions; everyone is more likely to be affected. |
Getting the units right
Each pollutant expects the exact unit and averaging period the EPA table uses: PM2.5 and PM10 in µg/m³ over 24 hours, ozone and CO in ppm (ozone as an 8-hour average, CO 8-hour), and SO₂ and NO₂ in ppb over 1 hour. The commonest mistake is unit confusion — entering ozone in ppb (say 75) instead of ppm (0.075) inflates the AQI wildly, and swapping an hourly spike for a daily average does the same. If a value sits above the top of its published table (for example 8-hour ozone above ~0.200 ppm, which the EPA moves to a separate 1-hour table), that pollutant is skipped rather than extrapolated.
Honest limits
This calculator has no sensor and makes no network calls — it only converts the numbers you type, so its answer is exactly as good as your input data. It implements the US EPA index; other countries (the European EAQI, the UK DAQI, India's NAQI, China's AQI) use different breakpoints, so results will not match those apps. It uses the pre-2024 PM2.5 breakpoint table still in wide operational use, and it does not implement the 1-hour ozone or 24-hour SO₂ extensions for extreme readings, returning no sub-index there instead of guessing. Treat it as a conversion and teaching tool, not a substitute for an official monitor or health authority.
Want the full picture? Learn more in PM2.5 and the AQI, Explained → — a first-principles walkthrough of the EPA breakpoint formula, the full PM2.5 table, a PM2.5-to-AQI conversion worked step by step, the six category bands, and PM2.5 vs PM10 vs ozone.