Every hour of every day
Each column is one day and each row one hour, midnight at the top. A dot marks the hour each day reached its highest level. Click any day to open it below.
One day up close
Every reading from the chosen day, against a typical day for that time of year (the 30 days around it).
Sudden changes
Where and when the level jumped or dropped sharply, at the chosen time step. Each jump is judged: did it go straight back within 2 hours, did related pollutants or other stations move with it, did it come right after an outage, was one single reading behind it.
Day by day
Time of day of sudden changes
How each change is graded
- ✕Proven errorThe hour holds a reading that fails a proof test above (for the published AQI: the readings can't produce the jump).
- !Very strong signAn isolated one-reading spike or a frozen run caused it.
- !Strong signRight after an outage, or it went straight back within 2 hours with no related pollutant and no other station moving.
- ?UnexplainedAnything in between, for example a step to a new level with nothing else moving.
- ✓Consistent with real pollutionIt stayed at the new level and related pollutants (for PM10: PM2.5, NO2, NO, CO) or other stations moved the same way.
The proof tests, stuck and missing readings and the published-AQI check are on the tab.
Flagged hours
How the level changed over time
Daily average with its 7-day average, and the spread between each day's lowest and highest hour.
Average day, hour by hour
What a typical day looks like at this station in the chosen period.
When each day peaks
Number of days whose highest hour fell at each time of day.
Where it comes from: wind direction
Average level for each direction the wind blew from, and how often it blew from there, in the chosen period. A direction with high values points to sources lying that way from the station.
Peak hour of each day
One dot per day: how high it sits shows the hour of that day's highest level, its colour shows how bad that hour was. Watch the dots drift as the seasons change.
Month by month
Average of all hourly values in each month.
Daily pattern by month
Average for each hour of the day (across) in each month (down). Shows how the daily peak moves through the year.
Every parameter at this station
Same period, each parameter the station reported. Click a row to switch the charts to it.
Compare stations
Every station you have added that reports this parameter, over the same period.
Stations
Pick a station to analyse, or add more. A file for a station already listed (another month, say) is merged into it.
Reads CPCB CCR downloads: Raw Data exports (15-minute or hourly, CSV or Excel, with a Timestamp or From Date column) and the station-level AQI sheet (days down, hours across; keep the month and year in the file name). In CCR, open Advanced Search, choose the station, tick the parameters, set the interval to 15 minutes or 1 hour, and download. You can also drop files anywhere on this page.
Daily numbers as a table
How the numbers are worked out
Everything is worked out at the chosen time step. At 15 minutes the values are the readings themselves; at the hourly step they are the average of the readings in each clock hour (at least two of the four needed). A day's average and its peak are only counted when at least two-thirds of the day (16 hours) has data, the same rule CPCB uses for 24-hour averages. At the hourly step a single 15-minute spike cannot decide the day's peak; at the 15-minute step it can, so compare both when a peak looks odd. AQI is always hourly, as CPCB publishes it.
Colours use CPCB's AQI breakpoints for each pollutant. CPCB defines them for 24-hour averages (8-hour for ozone and CO), so colouring a single hour with them is indicative. Limits are the NAAQS 2009 values: PM10 100, PM2.5 60, NO2 80, SO2 80, NH3 400 µg/m³ over 24 hours; ozone 100 µg/m³ and CO 2 mg/m³ over 8 hours. Seasons follow IMD: winter Dec–Feb, summer Mar–May, monsoon Jun–Sep, post-monsoon Oct–Nov.
Sudden changes compare each value with the one an hour earlier; at the 15-minute step this is checked every 15 minutes, and of the overlapping windows that catch the same jump only the largest is kept, which pins down when it happened. A change counts as reversed when, within the next 2 hours, the value comes back at least half way. A related pollutant or another station counts as moving with it when it changes the same way by at least 40% of its own threshold within the same or the next hour. Stuck readings are stretches of identical values lasting 2 hours or more (4 hours for hourly data).
Year on year
The same dates and the same times of day, compared across years for the selected station and pollutant. The Period filter doesn't apply on this tab; choose the part of the year here.
Average by year
Year by year
Same dates, each year
Daily average on each date, one line per year. Click a date to open that day on the Analysis tab.
Calendar, year under year
Each row is a year and each column a date, so bad spells that recur at the same time of year line up. It follows the zoom of the chart above; drag across it to zoom too.
Same time of day, each year
The average day in each year, for the chosen part of the year.
What changed, by time of day
against . Red bars: worse at that time of day; green: better.
Month by month, each year
Average for every month of every year in the files, whatever part of the year is chosen above.
One date across the years
Every reading on the same date in each year, by time of day. Pick a date, or compare each year's Diwali (the date moves each year).
Is this station's data right?
Tests that can show recorded values are wrong, graded by how strong the evidence is. They cover every parameter at this station for the chosen period. Click a date to open that day.
What the levels mean
- ✕Proven errorThe values break a physical rule (PM2.5 above PM10, NOx below NO2, PM at exactly zero, a reading cut off at the instrument's limit, too coarse for the AQI bands) or CPCB's own method (a published AQI the station's readings cannot produce, while the same method reproduces the other hours). These cannot be right as recorded.
- !Very strong sign of errorA pattern that a working analyser at this station practically never produces, measured against its own record: a one-reading spike beyond its 99.9th-percentile change, or a frozen value with less than a one-in-a-million chance.
- !Strong sign of errorMore likely the instrument or data handling than the air: a jump right after an outage, or a jump that goes straight back with no related pollutant or other station moving.
Proof here means the data contradicts itself or physics. Why it happened (calibration, power cut, logger fault, processing) still needs the station's maintenance and calibration log.
Data problems day by day
Every parameter at this station: proven errors, very strong and strong signs of error, readings stuck at one value, and missing data. Click a day to open it on the Analysis tab.
Published AQI against the readings
CPCB's published hourly AQI next to the AQI worked out here from the same station's readings. Where the published line jumps and the worked-out line doesn't, the jump comes from data handling (an outage, an average restarting on a few hours), not from the air.
How the checks work
Evidence tests work on the raw readings. Spike and frozen-value tests measure each analyser against its own record, separately for any stretch recorded only in whole numbers. NOx is converted with NO 1 µg/m³ = 0.815 ppb and NO2 1 µg/m³ = 0.531 ppb (25 °C), and the test only runs when the station's NOx normally equals NO + NO2. The published-AQI tests only judge hours that have at least 20 hours of PM data behind them, and only when the method reproduces the published AQI within 10 points on at least 80% of such hours.
AQI (calc.) follows CPCB's method: 24-hour averages for PM10, PM2.5, NO2, SO2 and NH3 (at least 16 hours of data), the highest 8-hour average of the last 24 hours for O3 and CO, at least three pollutants including PM10 or PM2.5, and the highest sub-index is the AQI. Each value is labelled at the end of its 24-hour window, which is how CPCB's hourly AQI sheet lines up. Because the PM sub-index uses a 24-hour average, one hour can move it only by about a twenty-fourth of the change in concentration, so a jump of 30 or more points in one hour is very hard to get from the air alone.
The checks cover every parameter of the selected station over the selected period. They are the same at both time steps, except the two built from sudden changes (jumps that go straight back, jumps after an outage), which follow the time step and threshold set on the Analysis tab.