Air Quality

Data Sources and Methodology

Purpose of this page

This page explains where AirQuality.city data come from, how they are processed, and how the air-quality index is calculated.

Its purpose is to clearly distinguish between:

  • measurements from AirQuality.city's own Sensorbox stations
  • external official data
  • weather data
  • calculated values and interpretations produced by the website

Last updated: 23 July 2026.

Types of monitoring stations

AirQuality.city Sensorbox stations

The project's own stations generally use:

  • an SDS011 sensor for PM2.5 and PM10 concentrations
  • a BME280 sensor for temperature, relative humidity, and atmospheric pressure
  • a Raspberry Pi or comparable controller to read, check, and transmit data

Measurements from the project's own stations are normally taken approximately every two to three minutes. Multiple readings are collected in each cycle, a basic transmission-integrity check is performed, and the cycle average is stored.

Sensorbox stations are not official regulatory stations and do not use the reference analysers required for official air-quality assessment. Their purpose is to monitor local trends, provide early indications of a possible issue, and improve spatial measurement coverage.

External official stations

The website displays publicly available data from national and local monitoring networks.

The main sources are:

Real-time or near-real-time data are not necessarily final or validated. The competent institution may later correct or invalidate them.

Weather data

Weather data may come from:

  • AirQuality.city's own BME280 sensors
  • meteorological sensors associated with official air-quality stations
  • other publicly available sources clearly identified alongside the data

Weather data shown alongside an air-quality station may not have been measured at exactly the same location. Where a different location is used, this should be indicated in the station description or source label.

Timestamps and freshness

The website displays the time of the most recent available measurement or processing event.

Times are shown in the website's local time zone, normally Europe/Zagreb, unless stated otherwise.

Station status and freshness labels depend on the time elapsed since the last successful measurement. A temporary transmission outage does not necessarily mean that the monitoring instrument itself has failed.

A missing or unavailable value is not the same as a value of zero. Missing data are displayed as “no data”, “unavailable”, or an equivalent empty state, not as a concentration of 0 µg/m³.

Air Quality Index

Scale

AirQuality.city uses a 0 to 500 AQI scale based on the methodology of the U.S. Environmental Protection Agency, U.S. EPA.

The website's display categories use the following integer ranges:

AQI Category
0-49 Good
50-99 Moderate
100-149 Unhealthy for sensitive groups
150-199 Unhealthy
200-299 Very unhealthy
300-500 Hazardous

A higher AQI value indicates a higher level of pollution and greater potential health concern.

A general explanation of the U.S. EPA scale is available on the U.S. EPA AirNow: AQI Basics page.

Pollutants included in the website's AQI

AirQuality.city calculates a separate index for:

  • PM2.5
  • PM10

The website's overall AQI is the higher of those two values:

overall AQI = max(PM2.5 AQI, PM10 AQI)

NO₂, O₃, SO₂, and CO values may be displayed where they are available from external official stations, but they do not affect the AirQuality.city overall AQI.

The website's overall AQI is therefore a particulate-matter indicator based on PM2.5 and PM10, not a complete index of every possible air pollutant.

Individual index calculation

A pollutant concentration is converted into AQI by linear interpolation between the applicable U.S. EPA concentration breakpoints:

I = ((I_high - I_low) / (C_high - C_low)) × (C - C_low) + I_low

Where:

  • C is the measured or processed concentration
  • C_low and C_high are the lower and upper concentration breakpoints for the applicable range
  • I_low and I_high are the lower and upper AQI bounds for that range
  • I is the calculated AQI value

AirQuality.city applies the U.S. EPA PM2.5 and PM10 concentration breakpoints listed in the official U.S. EPA AQI Breakpoints table. The calculated value is rounded to an integer and assigned to the display ranges shown above.

Current display and official daily AQI

The AQI shown by AirQuality.city is calculated from the latest processed PM2.5 and PM10 values available to the website, unless a different averaging period is explicitly stated for a station.

It is a near-current indicator and is not necessarily the same as an official daily AQI. Official particulate-matter methodologies commonly use 24-hour averages or specialised methods such as NowCast.

Because averaging periods, breakpoints, validation rules, and included pollutants may differ, the AirQuality.city result may differ from indices shown by Croatian or European official services.

Processing of AirQuality.city measurements

For its own stations, the website may perform:

  • record and format validation
  • rejection of incomplete or technically invalid messages
  • averaging of multiple readings within a measurement cycle
  • stale or unavailable station detection
  • correction and validation rules documented for the relevant sensor type

Automated processing does not turn a lower-cost sensor into a regulatory reference instrument. The results should be treated as indicative.

Limitations of lower-cost sensors

PM readings may be affected by:

  • high relative humidity and condensation
  • temperature and airflow
  • sensor position, height, and shielding
  • proximity to chimneys, roads, construction sites, or other local sources
  • contamination and sensor ageing
  • differences between individual units of the same model
  • maintenance and calibration

A short local spike may not represent conditions across a wider area. A single station cannot describe an entire city.

Official and preliminary data

Official-station data transmitted in real time may be unvalidated. Final validated reports issued by competent institutions should be used for regulatory, legal, professional, and long-term analysis.

AirQuality.city is not a source of an official compliance assessment against statutory air-quality limit or target values.

Sources, licences, and attribution

We aim to identify the source alongside each external station or dataset.

Data remain subject to the terms and licences of the original provider. Reusing data from the website does not remove the user's obligation to check and comply with the terms of the original source.

Map data are used with the attribution: © OpenStreetMap contributors.

Corrections and problem reports

If you notice:

  • an incorrect source
  • an incorrect location
  • an obviously impossible value
  • a stale station
  • a wrongly identified pollutant
  • a mismatch between the source and the website display

send the station link, measurement time, and a description of the issue through the contact page or to contact@airquality.city.

We may correct the data, flag them as unreliable, or temporarily remove them from display while they are being reviewed.