Period
Weather
Temperature cutoff
Days per year
Map view
Daily high above 30°C0365+
Loading the atlas…

Data & method

Each filter counts one kind of day. Daily high above counts days whose daily high exceeds the cutoff; Daily low below counts days whose daily low falls below it. Values exactly at the cutoff do not count. Each UTC day uses 24 hourly air temperature samples at 2 metres above the surface. Cutoffs run from −15°C to 35°C in 5°C steps. The °C / °F toggle beside the cutoff changes only the display; the selectable cutoffs stay the same eleven temperatures, so in Fahrenheit they read 5, 14, 23, 32, 41, 50, 59, 68, 77, 86 and 95°F. Your choice is remembered in this browser, and starts from your browser’s region.

The map shows land on ERA5’s global 0.25° grid. Oceans and lakes are excluded. Cells touching land are retained to preserve islands and coasts; detailed shorelines hide the water within those cells. “Average” is the arithmetic mean of the annual counts for 2021–2025. These are five recent years, not a long-term climate normal. The filter includes its endpoints and hides cells outside the selected range. The rightmost endpoint, 365+, includes leap-year counts through 366. Counts remain exact.

Zoom in for day-count labels directly on the map. Labels show rounded whole numbers at grid-cell centres, using the selected year or annual average and respecting the filter. More cells are labelled at each of three fixed zoom levels. The full colour scale stretches between the two day-filter handles and updates as you move them. Colours and the day slider use a soft logarithmic scale, giving small day counts more space. The bottom colour scale remains visible when settings are closed, with the coloured variable named above it. For daily lows below the cutoff, the scale reverses so that blue means more cold days. If both handles select the same count, matching cells use the middle colour. The global temperature overlay includes the polar cells; the flat map ends at the Web Mercator latitude limit. Terrain shading comes from Mapterhorn elevation tiles. Fine terrain, street and coastline detail belongs to the basemap; the temperature estimates remain at 0.25° resolution.

Add up to five filters. Only locations whose counts in the selected period pass all day ranges are shown. All filters use the same year or average. Open a filter’s summary to edit it. Reset appears once a day range has been narrowed and restores 0–365+, keeping the kind of day and the temperature cutoff. With several filters, “Use for colour” chooses which one supplies the colours, bottom scale and map numbers; that filter is marked with a small colour bar, and the other filters’ day sliders are grey because they only hide locations. The temperature slider shades the temperatures that count: above the cutoff for Daily high, below it for Daily low. These are period-count requirements; the qualifying weather events do not have to happen on the same dates.

ERA5 combines weather observations with a physical model. Values describe a grid cell, not an individual street or thermometer. The hourly sampling can miss a brief temperature peak.

Land selection uses GSHHG 2.3.7, converted to a shared grid mask by Nils Christian Lang; licence and transformation source. Visible shorelines and lakes use OpenStreetMap. Very small islands and coastlines remain limited by these sources and ERA5’s grid.

Loading data size…Exact counts · lossless compression

Weather data: ECMWF ERA5 via Copernicus and the Google ARCO-ERA5 mirror, CC BY 4.0. Processed into day counts by Nils Christian Lang. Map: OpenFreeMap, OpenStreetMap contributors. Terrain: Mapterhorn and its data sources. Style adapted from OSM Liberty and Mapbox Open Styles; style licences.