Calibration Algorithms

The accuracy of an air quality monitor is impacted by a variety of internal and external factors, for example:

  • Enclosure: The ventilation and internal placement of sensor modules can greatly impact their accuracy.
  • Relative Humidity: The relative humidity can increase the size of particulate matter.

Therefore, air quality device manufacturers compare the performance of their monitors with reference instruments and then apply calibration formulas that could be as simple as a temperature offset but also involve complex multivariable models.

In most cases, manufacturers treat these algorithms as trade secrets and do not publish them. We at AirGradient believe in open hardware and open science and, therefore, openly publish them. This allows not only others to get a better understanding of the monitor’s raw performance but also allows the improvement of the algorithms with scientific partners.

A few important notes on how AirGradient implements these algorithms:

  • All our current monitors with current firmware transmit data only as unaltered raw data to our server. Calibrations are applied on the server so both raw and calibrated data are saved in our database.
  • Data Export and the AirGradient API provide both raw data and calibrated data.
  • Map currently provides raw as well as EPA calibrated data. Custom calibrations are not reflected in order to ensure consistemcy on the map and as a result there might be differences between the map and your dashboard.
  • The temperature and relative humidity of the indoor monitor AirGradient ONE are very close to the reference and, therefore, usually don’t need to be calibrated. Only the outdoor monitor Open Air needs calibration.
  • PM1 and PM10 are currently not the focus, so no calibration algorithms have been developed.
  • CO2 has an automatic baseline ongoing calibration; therefore, no calibration algorithms are needed.
  • VOC and NOX are indexes based on relative changes of the pollutants and, therefore, do not need compensation algorithms.

We are currently implementing further quality enhancements, e.g. outlier detection on the backend to ensure high data quality.

Calibration Formulas

Calibration for PM2.5

EPA Formula

Extensive testing was carried out through our global co-location project. In the end, we deemed that the EPA calibration formula developed for the Purple Air sensor (which contains the same PM module) performs very well.

We are currently writing a report on how the PM algorithms were tested and compared and will publish it here soon.

This Calibration formula splits up the algorithms into bands. Note that negative values could result from the formula. In this case, it is recommended to set them to 0.

AGraw <30:

PM2.5 = [0.524 x AGraw] – [0.0862 x RHraw] + 5.75

30≤ AGraw <50:

PM2.5 = [0.786 x (AGraw/20 - 3/2) + 0.524 x (1 - (AGraw/20 - 3/2))] x AGraw – [0.0862 x RHraw] + 5.75

50 ≤ AGraw <210:

PM2.5 = [0.786 x AGraw] – [0.0862 x RHraw] + 5.75

210 ≤ AGraw <260:

PM2.5 = [0.69 x (AGraw/50 – 21/5) + 0.786 x (1 - (AGraw/50 – 21/5))] x AGraw – [0.0862 x RHraw x (1 - (AGraw/50 – 21/5))] + [2.966 x (AGraw/50 –21/5)] + [5.75 x (1 - (AGraw/50 – 21/5))] + [8.84 x (10-4) x AGraw2x (AGraw/50 – 21/5)]

260 ≤ AGraw:

PM2.5 = 2.966 + [0.69 x AGraw] + [8.84 x 10-4 x AGraw2]


Custom via PM Count Formula

PM Countraw < 100:

PM2.5 (calib) = 0

PM Countraw >= 100:

PM2.5 (calib) = PM Countraw x scaling factor + offset


Custom via PM 2.5 Raw Formula

PM 2.5 raw > 0:

PM2.5 (calib) = PM 2.5 raw x scaling factor + offset



Calibration for Temperature and Relative Humidity

An extensive analysis with more than 200,000 temperature points was done, and the following calibration algorithms were derived. More information about the development of these algorithms can be accessed here.

Only the AirGradient Open Air Outdoor Monitor needs calibration. The indoor monitor AirGradient ONE has a different ventilation design and is therefore very accurate with the raw data.

Temperature Standard AirGradient Open Air Formula

Below 10°C: T(calib) = Traw x 1.327 - 6.738
Above 10°C: T(calib) = Traw x 1.181 - 5.113

Temperature Custom Formula

T(calib) = Traw x scaling factor + offset


Relative Humidity Standard AirGradient Open Air Formula

RH(calib) = RHraw x 1.259 + 7.34

If a value is >100%, it will be set at 100%.

Relative Humidity Custom Formula

RH(calib) = RHraw x scaling factor + offset

If a value is >100%, it will be set at 100%.



Your are being redirected to AirGradient Dashboard...