Leidora shows long-term monthly averages from ECMWF’s ERA5-Land reanalysis (land, 0.1° grid), averaged over 2011–2025; daily max/min 2016–2024 (5 selected years). Sea temperature and clear sky come from ERA5, the 0.25° global version of the same model. They are what a typical month looks like, not a forecast or any single year. Tap a variable for the detail.
Climate variables
Temperature (average)
Air temperature 2 m above the ground, averaged over all 24 hours of every day in the month: nights pull it well below what a day feels like.
For what the day and the night feel like, use Daily Max and Nightly Min.
A cell is an average over its whole area, so a cell spanning coast and hills reads cooler than the beach town in it.
Daily Max / Nightly Min (T-MAX / T-MIN)
The average afternoon high and night-time low: each day’s true maximum and minimum from ERA5-Land’s daily statistics, averaged over the month.
The gap between them is the day–night range: small on coasts and in the humid tropics, large in deserts and mountains.
On coasts the grid tends to read the afternoon high 2–3 °C too low compared with weather stations (it mixes in sea air). The map shows the grid’s value; the beach score corrects for it (see below).
Precipitation
Average rain and snow (as water) per day, in mm. Multiply by 30 for the monthly total: 2 mm/day is about 60 mm a month.
Rough guide: under 1 mm/day is dry, 1–3 occasional showers, 3–6 regularly wet, above 6 a rainy season.
It says how much falls, not how often: 2 mm/day can be a short tropical downpour every afternoon or a grey drizzle all day.
Snow Depth
Snow on the ground as water equivalent (mm): what the snow would make if melted.
Real snow is several times deeper: fresh snow roughly 10×, old packed snow 3–5×. 50 mm here is very roughly 15–50 cm on the ground.
A monthly average over a whole cell, so it says little about a particular ski slope.
Glaciers and ice sheets read Glacier: the model holds them at a fixed 10 m of water instead of tracking snow, so a number there would mean nothing.
Sunlight
The sun’s energy reaching the ground, in W/m², averaged over all 24 hours including the night.
It depends on clouds and on the season and latitude: short winter days and a low sun give low values even under clear skies. About 50 is a northern winter; 250–330 a desert summer.
For “how sunny is the sky” regardless of season, see Clouds.
Clouds (Clear Sky)
The share of the sunshine a cloudless sky would deliver that actually reaches the ground (ERA5, 0.25°, about 28 km cells).
It measures clouds and haze only, so a clear October day scores as well as a clear July day, though the sun is weaker. Day length and sun height are what Sunlight shows.
It rarely falls much below 60%, because cloud still lets diffuse light through: 90% and above is reliably sunny, 75–90% mostly sunny, below 65% often grey, below 50% the heart of a monsoon.
On the CLOUDS layer a sunny month leaves the map clear, and the cloudier it is, the denser the grey. The cells are coarse, so a small island or a sunny coast can take the value of the sea or hills beside it.
Sea Temp (coastal places, in the panel)
Monthly average sea surface temperature of the nearest sea cell within 60 km (ERA5).
It is the open water nearby: shallow bays and lagoons run warmer, upwelling coasts colder.
Rough guide for swimming: 18 °C bracing, 22 °C pleasant, 25–28 °C warm.
Beach Score
How good a month is for a beach holiday, 0–100, on coastal cells only. Inland cells, and coasts with no sea temperature within 60 km, are left blank.
Classes
Excellent 90+: hot, sunny, dry, warm sea: the best the coast offers.
Great 80–89: near ideal; one thing slightly off.
Very good 70–79: a good beach month with a compromise, such as a cooler sea.
Good 60–69: beach days likely, but not reliably: a shoulder season.
Fair 45–59: possible on the better days; plan something else too.
Poor 30–44: mostly too cool, wet or cloudy.
Unsuitable, below 30: not beach weather (grey on the map).
What goes into it
Air, 30%: the afternoon high, corrected up by 1.8–2.7 °C on coasts to match weather stations. Full marks at 27–32 °C, best in the middle, falling off quickly below and above.
Sea, 35%: the sea temperature above. Full marks at 22–28 °C, best around 25 °C.
Rain, 20%: no penalty up to 1.5 mm/day (brief showers), then falling steadily.
Sun, 15%: Clear Sky, full marks from 90%.
The parts are multiplied, not added (a weighted geometric mean), so one bad part pulls the whole score down: perfect air cannot make up for a cold sea, which is why upwelling coasts such as Namibia or Peru score low despite sunny, dry summers. Example: Salento in October, with 22 °C afternoons, a 23 °C sea and some rain, scores in the 60s: Good, not Excellent.
A cell is about 11–22 km across, so the score describes the coast’s climate, not one particular beach. Wind, waves and water quality are not part of it.
Where it comes from. The 27–32 °C afternoon is what beach tourists called ideal in a survey of about 850 northern Europeans (Rutty & Scott 2010). The rest is Leidora’s own: the weights, the sea, rain and sun ranges, tuned against places with a known beach season, and the coastal correction, measured against weather stations.
Sightseeing Score
How pleasant a month’s weather is for exploring a city on foot, 0–100, on every land cell. It is the Holiday Climate Index for cities (HCI:Urban, Scott et al. 2016), built from surveys of what tourists say they prefer, with two changes for a world map (below).
Classes (the paper’s own)
Ideal 90+, Excellent 80–89, Very good 70–79, Good 60–69, Acceptable 50–59, Marginal 40–49.
Unacceptable, below 40: too hot, cold, wet or stormy to recommend (grey on the map).
What goes into it
Comfort, 40%: the afternoon high as it feels with the humidity. Best at 23–25 °C felt, gentle on the cold side, steep above 30 °C.
Rain, 30%: full marks when dry, nothing above 12 mm/day.
Sky, 20%: cloud cover; a few clouds (11–20%) rate best.
Wind, 10%: a light breeze rates best, a gale below nothing.
Changed from the paper. Humid heat counts as hotter and dry heat is no longer counted as cooler than the air (half the US weather service’s heat index, at the humidity of the afternoon). And a month cannot score more than its temperature allows, so a clear, dry, −40 °C January no longer rates as well as a mild one: a felt afternoon of −6 °C or colder, or one as hot as Dubai’s summer, scores at most 30, Unacceptable.
Monthly averages read a little kinder than day-by-day scoring: Paris runs about 10 points above the paper’s own figures in every month, so the order is reliable and the labels are on the generous side. Air pollution is not part of it.
Data Resolution & Cell Sizes
Climate values are shown on a regular grid. Each colored cell represents the average conditions over its whole area:
Regular mode: 0.2° grid — each cell covers about 22 × 22 km at the equator (~490 km²)
HD mode (toggle in the top bar): 0.1° grid — about 11 × 11 km per cell (~123 km²), 4× more detail
HD costs data: 20–40 MB per month, against about 5–10 MB in Regular. Switching it on shows how much has arrived, and Cancel keeps Regular. On a slow connection, stay in Regular.
Clouds has no HD: its data comes on a ~28 km grid, coarser than even the Regular map, so HD would cost the download and show the same squares. The HD button rests while Clouds is on.
Cells get narrower toward the poles: the east–west size shrinks with the cosine of latitude (at 60°N a Regular cell is ~22 × 11 km). Zoom in to see the outline of each cell showing the exact area it covers.
A place’s year
Click a place to open its panel: that month’s values, and a chart of the whole year for the layer on the map (the table icon shows it as a table). On a computer the other months load in the background. On a phone, and in HD, they cost a download, so the chart waits for you: press Load full year under it (about 5 MB a month, 20 in HD).
Comparing places
Press the scale icon in a place’s panel to add it to your shortlist — up to four places. The same icon appears in the top bar with a count; open it to see every place side by side for one month, and switch months there. The shortlist is kept on this device and in the page address, so copying the address shares it.
Loaded right now
Months arrive as you need them, and stay cached for the rest of
the session. This is what the browser is holding:
Initializing…
Data and attribution
Climate data. Contains modified Copernicus
Climate Change Service information (2024). Generated using
Copernicus Climate Change Service
ERA5-Land monthly averaged data and daily statistics, and
ERA5 monthly averaged data on single levels (sea
temperature, cloud-free radiation). Neither the European
Commission nor ECMWF is responsible for any use of this
information.
Station data. The beach score’s coastal
temperature correction is measured against
NOAA GHCN-Daily
weather stations.
Usage. Leidora counts what visitors use (a place
opened, a layer or month picked) and which site sent them, to
learn what is worth building. No cookies, no IP address, no
location, and no id kept between visits: each visit is anonymous
and is not linked to the next. The one thing stored on your
device is a note that you answered the one-time question in the
panel, so it is not asked again.
leidora
About Leidora
The name is loosely derived from Old Norse leið,
meaning way, road, or the course a journey takes. It is also the
root of leiðarstjarna, the guiding star that English
calls a lodestar. That is what I want Leidora to be when you plan
your next holiday.
A few years ago I noticed that plenty of apps show the forecast or
current weather, and some offer long-term weather statistics. I
couldn’t find one that lets you see on a map what the weather
is usually like anywhere on land, so I built it. Leidora is a hobby
project, and I plan to add more data layers that matter for trip
planning.
Questions or feedback? Use the feedback form — I read every
message.