Guide to publishing Air Quality data on the World Air Quality Index project


Publishing data on the World Air Quality Index project is free for every one. But it is also simple and straightforward: All you need to add data on the World Air Quality Index map is to provide a feed URL with the real-time information about the monitoring stations (name and location), the pollutants being measured and the real-time readings (together with the units, for instance milligrams or ppb).

Qualification Criteria

Note that the data published on the World Air Quality Index project (see the map) is only official data provided by each country respective EPA (Environmental Protection Agency) (full EPA list). Those official data are monited using professional BAM and TEOM-like Air Quality monitoring stations. Therefore, except from very specific conditions (for instance when there is no coverage in a country), we do not accept any data generated from non-professional Air Quality monitors.

Feed format

Since almost each country has its own reporting format, we accept many kind of formats for the feeds: They can be in CSV, JSON or just plain text or HTML format. You can find at the bottom of this page 3 example for CSV, HTML and JSON.

You can also check, for reference, the official feeds for Singapore, Peru or Netherland and notice that they are all different.

Data ingestion

Our backend system takes care of regularly checking the data from the feed, and each time an update is available, it will be processed, converted to the US EPA scale AQI values, and publish on the World Air Quality Index website within minutes.

Also, although only PM2.5, PM10, Ozone, NO2, SO2 and CO Air Quality data is published, the system can collect more pollutants for forecasting purpose: Benzen, Toluen, Ethylbenzen, NOx, THC, NMHC, PM1, Formaldehyde, Mercury, Ammonia, Methan, Hydrogen sulfide, Nitrous acid, Phenol, Naphthalene, paraxylene (p-Xylen), metaxylene (m-Xylen), etc.. It is also possible to pubish meteorological data: Temperature, Atmospheric Pressure, Humidity, Precipitation, Wind Speed, Wind Direction, Solar Radiation and UVI. If not provided, we will use other relevant meterologic information sources.

If you have any question, just contact us.

Feed Example (CSV format)

#City: Beijing
#Station: Dongcheng
#Name: 东城东四
#Latitude: 39.929
#Longitude: 116.417
#Timezone: +0800
Date,PM10,PM25,CO,Ozone,Sulphur Dioxide,Nitrogen Dioxide,AmbientTemperature,RelativeHumidity,WindDirection,WindSpeed,Pressure,RainGauge
10/29/2016 13:00,16,3,,58,10,3,32,66,200,3,1001,0
10/29/2016 14:00,19,8,,57,9,4,32,64,197,2,1001,0
10/29/2016 15:00,15,9,,52,47,17,30,72,190,2,1001,0
10/29/2016 16:00,31,19,,52,34,17,30,75,191,2,1001,0
10/29/2016 17:00,31,17,,49,49,19,29,75,194,1,1002,0
10/29/2016 18:00,37,18,,45,55,25,29,73,183,1,1003,0
10/29/2016 19:00,24,13,,40,21,19,29,80,65,1,1004,0
10/29/2016 20:00,39,22,,44,4,16,28,85,7,1,1005,0
10/29/2016 21:00,24,16,,43,3,7,28,85,10,1,1005,0

Feed Example (HTML format)

This is an example based on an HTML format (direct url: publishingdata/html/):
Station list:
Station IDCity or County NameStation NameLocal name (optional)Latitude/LongitudeTimezone (optional)
ID_BEI_WPBeijingWest Park西城官园39.929/116.339+0800
ID_BEI_OPBeijingOlympic Park朝阳奥体中心39.982/116.397+0800
  • The "Station ID" is the unique identifer for each station, and it can just be a number (eg ID8373), or the concatenation of station city and station name (eg. "Beijing/Dongcheng").
  • By default, the station will be available via the url /city/country-name/city-name/station-name.
  • The "Station Name" must use latin characters, so the optional "Local Name" can be provided to localize the webpage.

Real-time pollutant list:
Station IDPollutantUnitUpdate timeValueAveraging
ID_BEI_DCPM10mg/m32014/08/10 10:00:0027.81 hour
ID_BEI_DCPM25mg/m32014/08/10 10:00:0010.81 hour
ID_BEI_DCOzonemg/m32014/08/10 10:00:0015.21 hour
ID_BEI_DCOzonemg/m32014/08/10 10:00:0018.28 hours
ID_BEI_DCTemperatureCelcius2014/08/10 10:00:0022.31 hour
ID_BEI_WPPM10mg/m32014/08/10 10:00:0027.81 hour
ID_BEI_WPPM25mg/m32014/08/10 10:00:0010.81 hour
ID_BEI_WPSO2ppb2014/08/10 10:00:0015.21 hour
ID_BEI_WPHumidiy%2014/08/10 10:00:00881 hour
  • The "Averaging" column is use to specify the duration of the value. The most common averaging is 1 hour. It is also the prefered one, as our backend system will automatically do the 8 hour averagin computation for the Ozone and Carbon Monoxyde.
  • In the case the readings are provided more freqently than every hour (for instance every 30 minutes or 10 minutes), you can either provide the raw readings for the given period, or just the hourly averaging: Our back-end system will anyway process data even between the hour.

Feed Example (JSON format)

This is an example based on JSON format (direct url: /publishingdata/json/)

대기 품질 및 환경 오염 측정에 관하여 :

대기 품질 지수 단계에 대하여

0 - 50 좋음 대기오염 관련 질환자군에서도 영향이 유발되지 않을 수준
51 -100 보통 환자군에게 만성 노출시 경미한 영향이 유발될 수 있는 수준
101-150 민감군영향 환자군 및 민감군에게 유해한 영향이 유발될 수 있는 수준
151-200 나쁨 환자군 및 민감군(어린이, 노약자 등)에게 유해한 영향 유발, 일반인도 건강상 불쾌감을 경험할 수 있는 수준
201-300 매우나쁨 환자군 및 민감군에게 급성 노출시 심각한 영향 유발, 일반인도 약한 영향이 유발될 수 있는 수준
300+ 위험 환자군 및 민감군에게 응급 조치가 발생되거나, 일반인에게 유해한 영향이 유발될 수 있는 수준
(Reference: see

대기 품질과 오염에 대해 더 많은 것을 알아보려면 위키피디아의 공기품질 문서(영어)을 보거나 공기 품질과 건강에 대한 AirNow 가이드(영어)를 참조해보세요.

베이징 의사 Richard Saint Cyr MD의 건강 관련 팁을 보려면 에 블로그를 확인하세요.

Usage Notice: All the Air Quality data are unvalidated at the time of publication, and due to quality assurance these data may be amended, without notice, at any time. The World Air Quality Index project has exercised all reasonable skill and care in compiling the contents of this information and under no circumstances will the World Air Quality Index project team or its agents be liable in contract, tort or otherwise for any loss, injury or damage arising directly or indirectly from the supply of this data.


언어 설정 :

Temperature unit: