How this is built, and what it will not claim
weathermaps.ai is the Forecast Network's AI model desk. Forecast Euro covers ECMWF, Forecast Eagle covers the U.S. operational models, and weather.city covers places. This site covers the models that arrived from outside meteorology and holds them up against the physics they are measured by.
The pipeline
This site renders nothing the network already renders. Forecast Euro draws AIFS, HRES, the ensemble and WeatherNext 2; Forecast Eagle draws GFS. Their maps are one static image per model, field and forecast hour, identical for every reader on Earth, so they are published once to a bucket and read from there by every site that wants them. The explorer on this site is the same code as theirs, served from the same files, which is why a link copied from one opens the same view on the other.
The commit order matters. Frames are written, then the catalog, then latest.json, so a run
that is still arriving is invisible rather than broken. The Board reads the same files,
so a run it reports is a run whose maps exist, and "how far has it got" is simply the furthest forecast
hour the catalog lists.
Comparing models
The comparison this site is built around is two models, the same valid time, the same colours, the same place, so that the only thing that changes on screen is the forecast. In the explorer, Map options → Compare & verify draws a second model over the first, or subtracts one from the other on a diverging scale around zero.
AIFS minus HRES is the cleanest of these: the same centre, the same analysis, the same four cycles a day. The grids differ (0.25° against 0.1°), so the difference is computed on the finer raster with the coarser one sampled into it. That is right for the synoptic disagreement anyone opens it for, and it makes no claim about anything only the finer grid resolves.
What a difference map is not
- Not an error field. Neither model is truth. A large difference says they disagree, not that either is wrong.
- Not a skill score. Verification needs observations to score against and a sample large enough to mean something. One map is neither.
- Not a forecast. Nothing on this site should be used to decide anything. Use weather.city or your national weather service for that.
- Not evidence about other models. Each model's behaviour is its own.
The Disagreement Index
Version 1, weathermaps.ai/di-v1. Computed for 602 major cities from every 00 and 12Z run.
Every six hours through the forecast, for 2 m temperature and sea-level pressure, the index takes the four forecasts that reach the city: AIFS, HRES, WeatherNext 2 and the ECMWF ensemble mean. It measures how far apart they are and divides that by how far apart the ECMWF ensemble's own members are. A score of 50 means the models disagree about as much as the physics ensemble says is plausible. Each doubling of that ratio adds 25 points.
Before comparing, each model's steady offset from the others over the first day is removed. A model on a finer grid sits at a different height, and pressure is reduced to sea level slightly differently; neither is the models disagreeing about the weather. A day's score is the average of its six-hourly scores, for whichever of temperature and pressure is higher, and the page names which. With fewer than three models the index shows a dash, not a zero.
The five colour bands are weather.football's, so a chip reads the same on both sites: 0 agree, 20 minor, 40 notable, 60 high, 80 split.
The formula
spread = stdev(models − day-1 offset)
ref = max(floor, ENS spread)
floor: 1 °C, 1 hPa
DI = 100 · clamp(log2(spread/ref)/4 + 0.5)
day = mean of its 6-hourly scores
city = max over temperature, pressure
- Three of the four voices are ECMWF's. They share an analysis, so they tend to agree more than independent models would, and scores run low. That is a fact about the models, not a flaw to tune away.
- Values are rounded at source to whole degrees and hectopascals, which is why the reference never drops below 1.
- It is calibrated against the ensemble, not against its own history. Each run's summary is kept, so a history-based version can be checked against this one once there are months of it.
Resolution, honestly
The global learned models here run at a quarter of a degree, about 28 km at the equator. Zoom far enough into a region and the screen becomes finer than the grid. What you then see is grid cells being drawn, not weather being forecast at that scale.
This matters more for learned models than for physics ones. A model trained to minimise mean squared error systematically smooths whatever it is least certain about, which makes a blurry field look like a confident one. The generative and ensemble models on the roster exist largely to fix exactly that, by drawing something sharp and disagreeing across members instead.
Provenance
ECMWF fields (HRES, AIFS, the ensemble) are © ECMWF and licensed CC-BY-4.0. GFS is public-domain NOAA data. WeatherNext 2 is Google DeepMind's; it is shown as a four-field subset of its ensemble mean and marked experimental wherever it appears.
Every model fact lives in one file, data/models.json, and the pages are stamped from it, so a
correction is one edit rather than a search across markup. The roster was checked against each provider's
own documentation on 16 September 2026. Anything that could not be confirmed is flagged on the model
itself rather than quietly presented as certain.
Model names and marks belong to their owners. This is an independent site, and no centre, lab or vendor named on it has endorsed or reviewed anything here.