Warming Stripes Screensaver
Warming Stripes is a free screensaver that draws one vertical stripe for every year from 1950 to the latest full year, blue for years cooler than a place's own 1961-1990 average and red for warmer, for 25 cities and a global mean. It runs in the browser, needs no sign-up, and ESC exits.
How the Warming Stripes screensaver works
Each city's stripes come from the ERA5 reanalysis, a weather model that is continually pulled toward observations, served by the free Open-Meteo Historical Weather API. The site's data pipeline requests the daily mean 2 m air temperature for each city from 1 January 1950 to the last full calendar year, averages each year, and keeps a year only if at least 360 daily values exist. A city that fails to load is skipped rather than guessed.
The colour of a stripe is that year's average minus the place's own 1961-1990 average, so white means "about normal for this place" and the colour deepens with the size of the difference. The darkest colour is set by the largest difference in that place's series, rounded up to 0.1 °C and never below 0.8 °C, and the caption states it. Because every place is scaled against itself, the colours of two cities are not comparable as temperatures.
The global row is different data: HadCRUT5, the Met Office Hadley Centre and University of East Anglia Climatic Research Unit series of observed global temperature, in annual anomalies that are already relative to 1961-1990. It combines land air temperature and sea-surface temperature from thermometers and ships, and it is not ERA5.
The stripes sweep in from left to right, then hold. The caption's figure is simple arithmetic on what is on screen: the average of the last ten full years minus the average of the first ten, 1950-1959. It compares two decades, so it includes natural year-to-year swings and is not a fitted trend.
Where the numbers come from
City series are from the Open-Meteo Historical Weather API (archive-api.open-meteo.com), which serves the ECMWF ERA5 reanalysis and is released under CC BY 4.0. Open-Meteo's free tier is for non-commercial use and rate-limited by request size, so the site's pipeline fetches each city once and keeps the result for a month.
The global series is HadCRUT5, produced by the Met Office Hadley Centre and the Climatic Research Unit at the University of East Anglia, published under the Open Government Licence v3 (Morice and others, 2021, Journal of Geophysical Research). The saver uses its ensemble-mean annual anomaly relative to 1961-1990. As a cross-check on the file, the annual anomaly for 2024 comes out about 1.54 °C above its own 1850-1900 average; the Met Office published 1.53 ± 0.08 °C for 2024.
NASA's GISTEMP series would be a natural second global source, but its server was not reachable from the pipeline's network when this was built, so HadCRUT5 is used alone. The stripes design was introduced by Prof Ed Hawkins of the University of Reading (see the Royal Meteorological Society's page on warming stripes).
A worked example
In the global row, the average of 2016-2025 is 1.04 °C above 1950-1959, with 2024 at +1.19 °C against 1961-1990 and 2025 at +1.07 °C. For Longyearbyen on Svalbard the ERA5 cell averaged -7.9 °C over 1961-1990 and -3.4 °C in 2025, 4.5 °C above its own baseline. As a check on ERA5 itself, the Met Office's Heathrow station record, taking each month's mean of daily maximum and minimum, averages 10.57 °C over 1961-1990 against 9.81 °C for the ERA5 London cell, and shows a rise of 2.08 °C between the 1950s and 2016-2025 against 1.67 °C in ERA5. Same direction, different size: this is why the caption says reanalysis.
Settings & tips
- Place holds one city or the global row on screen; the default cycles through all of them.
- Style can lay a faint line of the actual annual values over the stripes, which shows the size of the swings the colours smooth over.
- Colour palette has a blue-to-orange option that stays distinguishable for red-green colour blindness.
- Speed sets how fast the stripes sweep and how long each place stays.
- Press ESC to leave fullscreen.
Frequently asked questions
- Are these real thermometer records?
- The city stripes are not. They are ERA5 reanalysis values for a grid cell of roughly 25-30 km, which will differ from a city's own weather-station record by a few tenths of a degree or more and do not resolve city heat islands. The global row is an observational dataset, HadCRUT5.
- Why does one city show little or no warming?
- A reanalysis grid cell is not a city. In the data on this page the Delhi cell shows no rise between 1950-1959 and 2016-2025, while Beijing's shows 3.3 °C. These cells have not been checked here against station records, so treat them as what this reanalysis says for that cell, not as a verdict on a country's climate.
- Can I compare the colours of two cities?
- No. Each place is coloured against its own 1961-1990 average and scaled to its own range, so a pale stripe in Dubai and a pale stripe in Longyearbyen are different temperatures. Read the caption for the size of the darkest colour, and compare the change figure instead.
- Why 1961-1990, and would another baseline change the picture?
- It is a long-standing reference period and the one HadCRUT5 uses. Choosing a different baseline moves which year is white and shifts every colour together, but it does not change the order of the years or the size of the change between decades. The original warming stripes by Ed Hawkins of the University of Reading use 1971-2000.
- Is this the original #ShowYourStripes graphic?
- No. The design is Ed Hawkins's; this is an independent drawing of the same idea from open data, not affiliated with him or the University of Reading, and with a different baseline and colour scale.
- Why start in 1950 when ERA5 goes back to 1940?
- That is simply where this saver starts: 1950 leaves every place a decade of data before the 1961-1990 baseline begins and gives the first-decade comparison a clean 1950-1959 window. ERA5 itself runs back to 1940, so a longer picture is possible with the same source.
- How often does the data update?
- The pipeline refreshes the file about once a month, and a new year is added once it is complete.