Vayuayan AQI Archive
Open-source archive of real-time air quality data from CPCB monitoring stations across India. Data downloaded using vayuayan.
Read gzipped CSV files directly from GitHub URLs using pandas:
Use readr to load compressed data directly:
Download files using command line:
Daily aggregated air quality statistics at state and district level.
Loading district files...
The Air Quality Index (AQI) is calculated using the Indian CPCB (Central Pollution Control Board) standards. The official AQI calculation uses eight pollutants: PM10, PM2.5, NO₂, SO₂, CO, O₃, NH₃, and Pb. For each pollutant, a sub-index is calculated from 24-hour average concentrations (8-hour for CO and O₃). The worst (maximum) sub-index determines the overall AQI.
Note: Our charts display AQI calculated from PM2.5 concentrations only, as complete pollutant data for all stations is not consistently available. The official CPCB method requires minimum 3 pollutants (with at least one being PM2.5 or PM10) and minimum 16 hours of data for accurate AQI calculation. PM2.5-based AQI provides a useful indicator but may not reflect the complete air quality picture.
Step 1: Calculate sub-index for each pollutant using linear interpolation between health breakpoints:
Where C is the measured concentration, BP_high and BP_low are the concentration breakpoints, and I_high and I_low are the corresponding AQI values.
Step 2: The overall AQI is the maximum (worst) among all calculated sub-indices.
Requirements for valid AQI:
Example: If PM2.5 sub-index = 150, PM10 sub-index = 120, and NO₂ sub-index = 80, the overall AQI = 150 (the worst/maximum value).