Vepler logo
Live
Environmental & Hazards

Air Quality

Air quality for any UK address, coordinate, postcode or area: a 0 to 100 score, five pollutants with UK and WHO compliance, the DAQI, and every regulated zone the location sits in.

~248,000
Modelled 1 km cells
20 m
London surface resolution
5
Pollutants measured
UK 2010 + WHO 2021
Compliance frameworks
Overview

About this dataset

Ask what the air is like at a single address and get a figure you can defend. We take DEFRA's Pollution Climate Mapping 1 km background model across the whole UK, sharpen it to the 20 m London Atmospheric Emissions Inventory surface inside Greater London, then run a property-point roadside decay overlay calibrated against DEFRA AURN reference monitors to move the background concentration to the exact coordinate. The result is a 0 to 100 score in five bands (very good, good, moderate, poor, very poor), computed by a worst-pollutant rule against calibrated breakpoints.

Every response returns the five pollutants (NO2, PM2.5, PM10, ozone and SO2) in micrograms per cubic metre, each flagged for compliance against the UK Air Quality Standards 2010 and the WHO 2021 guidelines. Alongside the score you get the official Daily Air Quality Index, the sector that dominates the pollution from the National Atmospheric Emissions Inventory, a multi-year trend from at least five years of data, and both health and property-value impact.

The product answers the regulatory question too. It returns every zone the location falls inside: Air Quality Management Areas, Clean Air Zones, ULEZ, LEZ and smoke-control areas. Two endpoints serve it over REST. POST /v1/air-quality/point returns the property-exact value with the decay overlay for one coordinate. POST /v1/air-quality/query covers an area by point and radius, postcode, outcode, bounding box or polygon.

The free tier is generous. The score, pollutants, compliance flags, DAQI, regulatory zones, nearest monitoring station, and health and property-value impact are all included. Premium adds the nearest road and motorway with traffic counts, nearby regulated industrial installations, and the per-pollutant decay explanation. Every result is snapshot-versioned, so you can pin a snapshot id and reproduce the exact figures later.

What's included

Everything in the box

Property-exact point value

POST /v1/air-quality/point takes one coordinate and returns the value at that address. A roadside decay overlay, calibrated against DEFRA AURN reference monitors, moves the modelled background concentration to the exact point using road proximity.

Five pollutants, two frameworks

NO2, PM2.5, PM10, ozone and SO2 in micrograms per cubic metre, each flagged for compliance against the UK Air Quality Standards 2010 (NO2 40, PM2.5 20, PM10 40, ozone 120, SO2 20) and the WHO 2021 guidelines (NO2 10, PM2.5 5, PM10 15, ozone 100).

0 to 100 score with a versioned method

A single 0 to 100 score in five bands, computed by a worst-pollutant rule against calibrated breakpoints. The methodology lives in a scoring contract synced between the ETL and the API, so the two never drift.

Regulated zone membership

Returns every zone the location sits inside: Air Quality Management Areas, Clean Air Zones, ULEZ, LEZ and smoke-control areas. Answers the compliance question for a specific address, not just a district.

Area and bulk querying

POST /v1/air-quality/query resolves an area by point and radius, postcode, outcode, bounding box or polygon, so you can screen a portfolio or a whole town in one call.

Snapshot versioning

Every response carries a snapshot id and the source dataset versions. Pin the snapshot id to reproduce the exact figures later; it is echoed back on every result.

Data fields

What each record carries

schema13 fields
score: number// Platform air quality score from 0 to 100, where higher is better, computed by a worst-pollutant rule against calibrated breakpoints.
band: enum// Score band: very good, good, moderate, poor or very poor.
dominantSource: string// The sector contributing most to the pollution at this location, from the National Atmospheric Emissions Inventory.
pollutants: object// The five pollutants (no2, pm25, pm10, ozone, so2), each with concentration in micrograms per cubic metre and UK 2010 and WHO 2021 compliance flags.
officialIndices: object// Official regulatory indices, including the DEFRA Daily Air Quality Index (DAQI) value and band.
regulatoryZones: array// Regulated zones the location sits inside: AQMAs, Clean Air Zones, ULEZ, LEZ and smoke-control areas.
trend: enum// Multi-year direction from at least five years of data: improving, stable or worsening.
healthImpact: object// Health impact summary derived from the pollutant concentrations at this location.
propertyValueImpact: object// Property-value impact summary for the location, reflecting air quality and zone membership.
nearestStation: object// Nearest reference monitoring station, returned as provenance only. It is not the value source.
decay: object// Premium: per-pollutant roadside decay explanation showing how the background was adjusted to the exact point using road proximity.
cellId: string// Identifier of the 1 km PCM background cell (or 20 m London surface cell) used for this location.
snapshotId: string// Snapshot id for the response. Pin it to reproduce the exact figures; it is echoed back on every result.
Sample response

Straight from the API

response.jsonapplication/json
{
  "score": 72,
  "band": "good",
  "dominantSource": "road transport",
  "pollutants": {
    "no2": { "concentration": 34.2, "unit": "ug/m3", "ukCompliant": true, "whoCompliant": false },
    "pm25": { "concentration": 9.8, "unit": "ug/m3", "ukCompliant": true, "whoCompliant": false },
    "pm10": { "concentration": 18.4, "unit": "ug/m3", "ukCompliant": true, "whoCompliant": false },
    "ozone": { "concentration": 61.0, "unit": "ug/m3", "ukCompliant": true, "whoCompliant": true },
    "so2": { "concentration": 3.1, "unit": "ug/m3", "ukCompliant": true, "whoCompliant": true }
  },
  "officialIndices": {
    "daqi": { "value": 3, "band": "low" }
  },
  "regulatoryZones": [
    { "type": "ULEZ", "name": "London ULEZ" },
    { "type": "AQMA", "name": "Westminster AQMA" }
  ],
  "trend": "improving",
  "healthImpact": { "level": "moderate", "summary": "NO2 above WHO 2021 guideline" },
  "propertyValueImpact": { "direction": "negative", "note": "inside a Clean Air Zone" },
  "nearestStation": { "name": "London Marylebone Road", "distanceM": 420 },
  "cellId": "pcm-1km-529500-181500",
  "snapshotId": "aq-2025-08"
}
Use cases

What people build with it

01

Price air quality into a valuation

Call /v1/air-quality/point for the subject address and receive the score, the five pollutants with UK and WHO compliance, and the property-value impact. A poor NO2 reading or a location inside a Clean Air Zone is a material factor a surveyor can defend.

Surveyors
02

Environmental screening for mortgage lending

Run the point endpoint at origination to see whether the security breaches a legal limit or sits inside a regulated zone. Snapshot ids let a lender reproduce the exact figures used in the decision months later.

Lenders
03

Underwriting and pricing air-quality exposure

Pull per-pollutant concentrations, compliance flags and the multi-year trend to assess long-term exposure at a risk address. Health impact and dominant source sit in the same response.

Insurers
04

Site appraisal and planning support

Query an area by polygon or bounding box to map background NO2 and PM2.5 across a proposed development, and see which AQMAs and Clean Air Zones it overlaps before committing.

Developers
05

Portfolio air-quality screening

Batch addresses through the query endpoint to flag which assets sit in a ULEZ, LEZ or AQMA, or breach a WHO guideline, and where the trend is worsening.

Investors

Frequently asked questions