About Saans & data sources
Saans (सांस, “breath”) turns raw air quality data into decisions: what the air is, where it is worst, what is coming, and what to do. Its core promise is honesty: every number says where it came from.
Provenance policy
- No air-quality value is hard-coded, randomised or invented. If a source does not report something, you see “—” with the reason, never 0.
- Every number carries a badge (below), the source name, the observation time with timezone, and how long ago we fetched it.
- Readings older than 3 hours are flagged STALE. Readings older than 6 hours are not used as the headline.
- Modelled and forecast data are never shown as measurements, and different sources are never spliced into one unlabelled line.
- The nearest station’s name and its distance from your searched point are always shown.
How to read the badges
Every number in Saans says where it came from. We never show modelled or predicted values as if they were measured.
- MEASURED
- A real reading from a physical monitoring station.
- HISTORICAL · MEASURED
- Archived station measurements from the past.
- FORECAST
- A model forecast of future conditions. Not an observation.
- MODELLED
- Satellite/atmospheric-model estimate (e.g. CAMS). Not a station measurement.
- COMPUTED
- Derived by this app from measured values. Hover to see the formula.
- EXPERIMENTAL · ML
- Our own machine-learning prediction, shown with its backtest error. Experimental.
Data sources
| Source | Used for | Badge |
|---|---|---|
| OpenAQ v3 and its data providers (e.g. India CPCB, US EPA AirNow) | Raw station concentrations in µg/m³ (PM2.5, PM10, NO₂, SO₂, CO, O₃), hourly and daily history. | MEASURED, HISTORICAL-MEASURED; our AQI from them is COMPUTED |
| World Air Quality Index Project (WAQI) and the originating US EPA | Station AQI, map and station lists, daily pollutant forecast. Pollutant values are AQI sub-indices, not concentrations. WAQI data is cached for minutes only and never stored, per its terms. | MEASURED, FORECAST |
| Open-Meteo Air Quality API, with the Copernicus Atmosphere Monitoring Service (CAMS) ENSEMBLE data | Forecasts, modelled history and a fallback where no station exists. Free for non-commercial use; contains modified Copernicus Atmosphere Monitoring Service information. | MODELLED, FORECAST |
| Open-Meteo Geocoding and Weather | City search; weather features for the experimental ML model. | n/a |
| Map tiles | © OpenStreetMap contributors and © CARTO where configured. | n/a |
Standards and formulas
- US AQI uses the current US EPA breakpoints (40 CFR Part 58 Appendix G, including the 2024 PM2.5 revision). Where a provider supplies an AQI we show theirs; for OpenAQ raw data we compute it from PM2.5 and PM10 using the EPA NowCast method (hourly means) and label it COMPUTED. Gas sub-indices are not included in our computed value.
- India NAQI (PM-only) uses CPCB breakpoints on 24 h average PM2.5 and PM10 only, so it is labelled “PM-only”. It does not include gases.
- WHO comparisons use the WHO 2021 Global Air Quality Guidelines (e.g. PM2.5 15 µg/m³ over 24 h, PM10 45 µg/m³).
- Cigarette equivalents (where shown) use the Berkeley Earth rule of thumb, about 22 µg/m³ of PM2.5 over 24 h ≈ one cigarette per day. It is a rough heuristic, not a medical statement.
- Percent change = (B − A) ÷ A × 100 on period means; spikes use a rolling median and MAD robust z-score.
Honest limitations
- Stations are sparse in many places; the nearest one may be kilometres away. Conditions at your exact spot can differ.
- Two networks often disagree because they use different stations and averaging. We show both and flag gaps over 25%.
- Satellite/model data (CAMS) smooths over a ~11–40 km grid and tends to under-read local peaks such as traffic, burning and firecrackers. See the model-vs-station chart on the Forecast page.
- Some networks have no recent data in some cities (for example, WAQI currently lists no active Mumbai stations). Saans then falls back to another source or a modelled estimate, and says so.
- This is general information, not medical advice.
See live provider health on the status page.