maqua.app

How the index is calculated

Every figure on this site comes from a published measurement and a documented calculation. This page sets out both, including the places where the honest answer is that we cannot tell you.

Where the data comes from

Malta's Environment and Resources Authority (ERA) operates the five automatic monitoring stations that appear on this site. ERA owns the measurements. Malta reports them to the European Environment Agency (EEA) under the Ambient Air Quality Directive, and the EEA republishes them hourly through its European Air Quality Index dissemination layer. maqua.app reads that published feed.

There is no direct ERA integration, and we do not claim one. Every attempt to reach era.org.mt from a server returns HTTP 403 — the site is behind bot protection that rejects non-browser clients — so no ERA endpoint has ever been observed from this application, and none has been invented. The provider interface is in place should that change.

Readings are fetched server-side and cached, so a visitor's browser never contacts the upstream source directly. That keeps load on a public resource proportionate and means the site can keep serving the last good reading, clearly labelled, when the feed is briefly unavailable.

Near-real-time data is published before validation. ERA verifies it afterwards, and figures may be revised or withdrawn. Nothing here should be treated as a final, quality-assured record.

The European Air Quality Index

Each pollutant concentration is rounded to the nearest whole microgram per cubic metre and matched against the published band ranges. The location takes the band of its worst pollutant.

The calculation is deliberately mechanical, and it runs in this application rather than being taken on trust from the feed:

The result was checked against 6,760 published concentration-and-index pairs from the five Malta stations, with no mismatches. That check runs in continuous integration against captured real data, so a regression fails the build rather than reaching a reader.

The six bands

Inclusive upper bounds in µg/m³ for each pollutant. The top band's ceiling is the scale's saturation point: concentrations above it stay in that band rather than running off the scale.

Inclusive upper concentration bound, in micrograms per cubic metre, for each band and pollutant.
BandPM2.5, fine particulate matterPM10, coarse particulate matterNitrogen dioxideOzoneSulphur dioxide
Good1–51–151–101–601–20
Fair6–1516–4511–2561–10021–40
Moderate16–5046–12026–60101–12041–125
Poor51–90121–19561–100121–160126–190
Very poor91–140196–270101–150161–180191–275
Extremely poor141–800271–1200151–1000181–600276–1000

A band identifier of zero is not a seventh, better-than-Good band. It means no index could be calculated, and the site renders it as “No data”.

Sub-index

Within a band we also report a continuous position, so that a value near the top of Moderate can be told apart from one that has only just entered it.

A sub-index is the band number plus the value's fractional position within that band, capped just below the next whole number so a concentration sitting exactly on a ceiling stays in the band it belongs to. A station at 3.1 has only just entered Moderate; one at 3.9 is close to Poor. Both are labelled Moderate, and the difference between them is real.

The five pollutants

Each station reports what its instruments actually measure. Coverage differs by site, and a pollutant is never shown for a station merely because similar stations report it.

PM2.5 — Fine particulate matter
Airborne particles smaller than 2.5 micrometres across — roughly thirty times finer than a human hair. They stay suspended for hours and are small enough to be breathed deep into the lungs.Where it comes from: Vehicle exhaust and brake wear, construction and quarrying dust, domestic and agricultural burning, and shipping. Saharan dust reaching Malta lifts levels for short spells.Health effects: Short-lived rises are associated with irritated airways, coughing and worsening asthma. Sustained long-term exposure is associated with heart and lung conditions. At the levels usually recorded in Malta most people notice nothing.Averaging period: Hourly · µg/m³
PM10 — Coarse particulate matter
Airborne particles up to 10 micrometres across, including road dust, pollen and sea salt. The nose and throat filter out more of these than of finer particles.Where it comes from: Road and construction dust, quarrying, agriculture and sea spray, together with long-range Saharan dust episodes, which are a recurring feature of the Maltese climate.Health effects: Raised levels can irritate the eyes, nose and throat and can aggravate asthma or bronchitis. Effects are usually short-lived and ease as levels fall.Averaging period: Hourly · µg/m³
NO₂ — Nitrogen dioxide
A reddish-brown gas formed when fuel burns at high temperature. Concentrations are highest beside busy roads and drop away sharply within tens of metres.Where it comes from: Road traffic, particularly diesel engines; shipping in harbour; power generation; and some industrial processes.Health effects: Raised levels can inflame the airways and make asthma symptoms more likely. People who live, work or travel beside heavy traffic have the greatest exposure.Averaging period: Hourly · µg/m³
O₃ — Ozone
Ozone is not emitted directly. It forms in the air when sunlight reacts with other pollutants, so it peaks on hot sunny afternoons and is often higher in rural areas than in town.Where it comes from: Formed from nitrogen oxides and volatile organic compounds under strong sunlight. Ozone also drifts to Malta from mainland Europe.Health effects: Higher ozone can cause throat irritation, coughing and reduced lung function during exercise. Symptoms typically ease as levels fall in the evening.Averaging period: Hourly · µg/m³
SO₂ — Sulphur dioxide
A sharp-smelling gas produced when fuels containing sulphur are burnt. In Malta it is normally low and appears in short episodes.Where it comes from: Shipping and port activity, industrial combustion, and occasionally volcanic emissions carried across from Sicily.Health effects: Brief exposure to higher levels can tighten the airways, most noticeably in people with asthma. Levels recorded in Malta are usually far below that range.Averaging period: Hourly · µg/m³

A station is not an area

Five stations cannot describe every street in Malta and Gozo. What a station measures is the air at that instrument, and how far that generalises depends entirely on why the station is there.

Background
Sited away from single sources to represent general exposure in the area. On this site that is Attard, Għarb, Żejtun. A background reading is a reasonable guide to general conditions across the surrounding area.
Traffic
Sited beside a busy road, so it records the higher end of local exposure. On this site that is Msida and St Paul's Bay. Nitrogen dioxide in particular falls away sharply within tens of metres of a busy road, so a traffic reading describes the roadside — not the neighbourhood behind it, and not a garden two streets away.

Għarb is the only station on Gozo, and it is rural. Conditions in Victoria or along the Mġarr road are not measured. Where there is no nearby station, the site says so rather than interpolating a number across a gap it has no evidence for.

maqua.app does not interpolate between stations, and does not produce a value for a location that has no instrument. Every figure shown belongs to a named station at a named hour.

Timing and latency

The feed publishes hourly. Measured against the source on 26 July 2026, the newest hour containing a genuinely measured value was about 58 minutes old at the moment of publication. A reading that is one to two hours old is therefore normal operation, not a fault.

Three different times are shown, because they answer three different questions:

Measured at
The hour the air was sampled. This is the time the reading actually describes.
Retrieved at
When maqua.app last obtained the figure from the source. A recent retrieval does not make an old measurement current.
Age of reading
How much time has passed since the measurement hour, which is what decides whether the reading still describes the present.

All times are shown in Malta time on a 24-hour clock.

Stale and missing data

A reading is classified by age, and the label is never softened. The word “live” is reserved for readings inside the normal publication window and is used nowhere else.

Live
Within the normal hourly publication cycle. Up to 2 hours old.
Delayed
Later than the usual hourly update, but still recent. Between 2 and 4 hours old.
Out of date
Too old to describe conditions right now. Between 4 and 12 hours old.
Unavailable
No usable reading, or its age cannot be established. Older than 12 hours, or no reading at all.

A missing value is shown as unavailable and never as zero. Bands are calculated only from pollutants that actually reported.

An absent reading tells us nothing about air quality — it is not an all-clear.

Malta-wide summary

We do not average across stations. A single poor location is not cancelled out by good ones, so the summary reports the worst station that is currently reporting.

The summary also states how many of the 5 stations are currently reporting. If that number is low, the headline is describing a smaller part of the islands than it appears to, and the figure is there so you can judge it.

Forecasts and gap filling

Modelled estimates from the Copernicus atmosphere service, carried in the same feed.

The same file that carries the observations also carries roughly 48 hours of modelled values ahead of the present, produced by the Copernicus Atmosphere Monitoring Service. maqua.app does not run a model of its own and does not adjust these numbers.

Telling a forecast from an observation cannot be done by looking at the clock. The feed also fills gaps in past hours by modelling, when an instrument did not report. Both cases are identified from the provenance flag the feed itself provides, and both are labelled as estimates.

Forecast values are model output, not measurements.

Environmental context

Alongside the readings, the site may show context that helps explain them: weather conditions, and known regional events such as Saharan dust reaching the islands. Weather and dust data come from open services — Open-Meteo for meteorology and the Copernicus atmosphere service for dust — under their own licences.

Context is offered as explanation, never as measurement. A dust advisory does not change a single concentration or band on this site; the readings are what they are, and the context is there to say why they might look as they do. Where context is unavailable, it is simply absent — nothing is inferred to fill the space.

Limits and guidelines

EU limit values and WHO guidelines mostly apply to daily or annual averages. We show them for context and say plainly when a single hourly reading cannot settle the question.

EU limit values describe legal compliance over long averaging periods. The index bands above are for communication and are a different thing entirely.

EU limit values and WHO guideline values, with the averaging period each applies to and whether a single hourly reading can assess it.
PollutantReferenceValueAveraging periodOne hourly reading can assess it?
PM10EU limit value50 µg/m³24 hours (exceedances permitted per year: 35)No
PM10EU limit value40 µg/m³Calendar yearNo
PM2.5EU limit value25 µg/m³Calendar yearNo
NO₂EU limit value200 µg/m³1 hour (exceedances permitted per year: 18)No
NO₂EU limit value40 µg/m³Calendar yearNo
SO₂EU limit value350 µg/m³1 hour (exceedances permitted per year: 24)No
SO₂EU limit value125 µg/m³24 hours (exceedances permitted per year: 3)No
O₃EU limit value120 µg/m³Maximum daily 8-hour mean (exceedances permitted per year: 25)No
O₃EU limit value180 µg/m³1 hour (exceedances permitted per year: 0)Yes
O₃EU limit value240 µg/m³1 hour (exceedances permitted per year: 0)Yes
PM2.5WHO guideline15 µg/m³24 hoursNo
PM2.5WHO guideline5 µg/m³AnnualNo
PM10WHO guideline45 µg/m³24 hoursNo
PM10WHO guideline15 µg/m³AnnualNo
NO₂WHO guideline25 µg/m³24 hoursNo
NO₂WHO guideline10 µg/m³AnnualNo
O₃WHO guideline100 µg/m³Peak season 8-hourNo
SO₂WHO guideline40 µg/m³24 hoursNo

maqua.app never states that a legal limit has been breached on the strength of a single hourly reading. Where a comparison cannot settle the question, it says so instead of implying an answer.

WHO guidelines are health-based guidance, not law.

How AI is used

This deployment can generate plain-language explanations of a reading using a large language model, accessed through OpenRouter.

The boundary is absolute, and it is enforced in code rather than by prompt wording:

The assistant never calculates index values, thresholds or times. It only puts the figures already shown into words.

Health guidance and its limits

Health guidance on this site follows the advice published alongside the European Air Quality Index. It is deliberately general and precautionary: it describes what a band typically means for most people and for those who are more sensitive to air pollution, and it does not attempt to say anything about any individual.

Advice here is general and precautionary. Air quality is one factor among many, and staying active remains beneficial.

maqua.app provides general environmental information and does not replace medical advice or official emergency guidance.

If you have severe or sudden symptoms, seek medical help rather than relying on this page.

Related pages

Air-quality data provided by Malta's Environment and Resources Authority (ERA), disseminated via the European Environment Agency (EEA). maqua.app is an independent project and is not operated by, affiliated with, or endorsed by ERA or the EEA.

All times are shown in Malta time. (Europe/Malta)