← Back to map

Methodology

Overview

The Europe Heat Tracker estimates how many people across Europe are exposed to extreme heat. It combines high-resolution population data with real-time weather observations to produce a per-country and continent-wide count of affected people. Three time views are available: Now (latest snapshot), 24 hours (default), and 7 days.

Population data

Population figures come from the GHS-POP R2023A dataset published by the European Commission's Joint Research Centre (JRC). This is a global population grid at approximately 1 km² (30 arc-second) resolution, based on the 2020 population epoch.

We aggregate the raw 1 km² cells into a 0.125° latitude/longitude grid (roughly 10 × 14 km at European latitudes), resulting in approximately 47,000 grid cells covering the European continent. Each cell stores the total population count summed from the underlying high-resolution raster, preserving real population density variation between urban and rural areas.

Weather data & model

Weather data comes from DWD ICON-EU, the operational numerical weather prediction model of Germany's national meteorological service (Deutscher Wetterdienst). ICON-EU covers Europe at a native resolution of approximately 6.5 km and is published as open data in GRIB2 format four times per day (00, 06, 12, 18 UTC).

For each grid cell we compute three heat indicators:

  • Temperature — 2m air temperature (°C), the standard meteorological measurement.
  • Feels Like — Steadman (1994) apparent temperature (°C), which accounts for humidity and wind speed. Uses the same formula as most operational weather services.
  • Heat Stress (UTCI) — Universal Thermal Climate Index, computed from air temperature, vapour pressure, wind speed, and mean radiant temperature (approximated from downwelling shortwave radiation). Classified per Bröde et al. (2012).

GRIB2 files are downloaded, regridded to the population grid via bilinear interpolation, and stored in SQLite. The pipeline includes up to 72 hours of forecast data in addition to the current analysis field.

Heat thresholds

A grid cell is classified as affected when its selected indicator meets or exceeds the active threshold. Default thresholds:

  • Temperature & Feels Like: 30°C — EEA pan-European onset of health impacts
  • Heat Stress (UTCI): 26 — start of moderate heat stress (Bröde et al. 2012)

Thresholds can be adjusted per-indicator using the ⚙ Expert Settings panel in the inspector. The total affected population is the sum of all grid-cell populations where the threshold is exceeded. Country-level aggregates are computed in the same pass.

Time periods

The Today, Last 7 days, and Next 3 days views show the union of all people who were affected in any snapshot during that window. For each grid cell, the peak indicator value across all snapshots in the period is used; a cell counts as affected if it exceeded the threshold in at least one snapshot. Custom date ranges are also supported.

Update frequency

The DWD data pipeline (fetch-dwd.py) runs every 3 hours, aligned with DWD's model run schedule. Each run downloads the latest analysis and forecast fields, creates new snapshots in the database, and makes data available immediately to the web app. A full run typically takes 5–15 minutes depending on network speed and the number of forecast hours requested.

Limitations

  • Population data is from 2020 and does not reflect migration or demographic changes since then.
  • The ~14 km grid resolution cannot capture localised urban heat-island effects within individual cities.
  • UTCI mean radiant temperature is approximated from downwelling shortwave radiation rather than computed from a full radiation model; results may differ slightly from research-grade UTCI estimates.
  • Iceland grid cells west of 23.5°W are outside the ICON-EU domain and receive null values.

Open source & data credits