GraphCast¶
GlobalMRF202240 GBGoogleJAX
GraphCast is a graph neural network weather model from Google DeepMind that runs on a multi-mesh icosahedral representation of the globe. The version scored here is the operational configuration with 13 pressure levels at 0.25°. It consumes the two most recent analysis frames (t-6 h and t0) plus solar forcing. Each step advances 6 hours on the native ERA5 721 × 1440 grid.
Skill¶
Pick a metric and variable; hover for exact values at each lead time. Use the Region selector for continental splits, the Month selector for seasonal (DJF/MAM/JJA/SON) and per-month skill against the all-month curve, the Init hour selector for skill by initialization time, the View selector for the skill of every initial condition, and the Baseline selector to overlay persistence and climatology reference forecasts.
Evaluation¶
Deterministic · 48 initial conditions · 14-day horizon · 83 variables
Scores are latitude-weighted (cos φ) and aggregated over the initial conditions. Evaluation is done against ERA5 fetched from ARCO. Initial conditions rotate through the 00Z/06Z/12Z/18Z hours.
| Type | deterministic |
| Initial conditions | 48 (2025) |
| Initial condition source | ARCO |
| Verification (ground truth) | ARCO |
| Lead times | 6 h to 14 days |
| Variables scored | 83 |
| Metrics | RMSE, MAE, Log spectral distance |
| Regions | global, tropics, extra tropics, northern hemisphere, southern hemisphere, arctic, antarctica, europe, north america, north atlantic, north pacific, east asia, australia new zealand, south america, africa, asia, oceania |
Variables¶
Scored output variables (83)
| Name | Description | Unit | Group |
|---|---|---|---|
msl |
Mean sea level pressure | Pa | Surface |
t2m |
Temperature at 2m | K | Surface |
tp06 |
Total precipitation accumulated over past 6 hours | m | Surface |
u10m |
U-component (eastward, zonal) of wind at 10 m | m s⁻¹ | Surface |
v10m |
V-component (northward, meridional) of wind at 10 m | m s⁻¹ | Surface |
z50 |
Geopotential at 50 hPa | m² s⁻² | Geopotential |
z100 |
Geopotential at 100 hPa | m² s⁻² | Geopotential |
z150 |
Geopotential at 150 hPa | m² s⁻² | Geopotential |
z200 |
Geopotential at 200 hPa | m² s⁻² | Geopotential |
z250 |
Geopotential at 250 hPa | m² s⁻² | Geopotential |
z300 |
Geopotential at 300 hPa | m² s⁻² | Geopotential |
z400 |
Geopotential at 400 hPa | m² s⁻² | Geopotential |
z500 |
Geopotential at 500 hPa | m² s⁻² | Geopotential |
z600 |
Geopotential at 600 hPa | m² s⁻² | Geopotential |
z700 |
Geopotential at 700 hPa | m² s⁻² | Geopotential |
z850 |
Geopotential at 850 hPa | m² s⁻² | Geopotential |
z925 |
Geopotential at 925 hPa | m² s⁻² | Geopotential |
z1000 |
Geopotential at 1000 hPa | m² s⁻² | Geopotential |
t50 |
Temperature at 50 hPa | K | Temperature |
t100 |
Temperature at 100 hPa | K | Temperature |
t150 |
Temperature at 150 hPa | K | Temperature |
t200 |
Temperature at 200 hPa | K | Temperature |
t250 |
Temperature at 250 hPa | K | Temperature |
t300 |
Temperature at 300 hPa | K | Temperature |
t400 |
Temperature at 400 hPa | K | Temperature |
t500 |
Temperature at 500 hPa | K | Temperature |
t600 |
Temperature at 600 hPa | K | Temperature |
t700 |
Temperature at 700 hPa | K | Temperature |
t850 |
Temperature at 850 hPa | K | Temperature |
t925 |
Temperature at 925 hPa | K | Temperature |
t1000 |
Temperature at 1000 hPa | K | Temperature |
u50 |
U-component of wind at 50 hPa | m s⁻¹ | U wind |
u100 |
U-component of wind at 100 hPa | m s⁻¹ | U wind |
u150 |
U-component of wind at 150 hPa | m s⁻¹ | U wind |
u200 |
U-component of wind at 200 hPa | m s⁻¹ | U wind |
u250 |
U-component of wind at 250 hPa | m s⁻¹ | U wind |
u300 |
U-component of wind at 300 hPa | m s⁻¹ | U wind |
u400 |
U-component of wind at 400 hPa | m s⁻¹ | U wind |
u500 |
U-component of wind at 500 hPa | m s⁻¹ | U wind |
u600 |
U-component of wind at 600 hPa | m s⁻¹ | U wind |
u700 |
U-component of wind at 700 hPa | m s⁻¹ | U wind |
u850 |
U-component of wind at 850 hPa | m s⁻¹ | U wind |
u925 |
U-component of wind at 925 hPa | m s⁻¹ | U wind |
u1000 |
U-component of wind at 1000 hPa | m s⁻¹ | U wind |
v50 |
V-component of wind at 50 hPa | m s⁻¹ | V wind |
v100 |
V-component of wind at 100 hPa | m s⁻¹ | V wind |
v150 |
V-component of wind at 150 hPa | m s⁻¹ | V wind |
v200 |
V-component of wind at 200 hPa | m s⁻¹ | V wind |
v250 |
V-component of wind at 250 hPa | m s⁻¹ | V wind |
v300 |
V-component of wind at 300 hPa | m s⁻¹ | V wind |
v400 |
V-component of wind at 400 hPa | m s⁻¹ | V wind |
v500 |
V-component of wind at 500 hPa | m s⁻¹ | V wind |
v600 |
V-component of wind at 600 hPa | m s⁻¹ | V wind |
v700 |
V-component of wind at 700 hPa | m s⁻¹ | V wind |
v850 |
V-component of wind at 850 hPa | m s⁻¹ | V wind |
v925 |
V-component of wind at 925 hPa | m s⁻¹ | V wind |
v1000 |
V-component of wind at 1000 hPa | m s⁻¹ | V wind |
q50 |
Specific humidity at 50 hPa | kg kg⁻¹ | Specific humidity |
q100 |
Specific humidity at 100 hPa | kg kg⁻¹ | Specific humidity |
q150 |
Specific humidity at 150 hPa | kg kg⁻¹ | Specific humidity |
q200 |
Specific humidity at 200 hPa | kg kg⁻¹ | Specific humidity |
q250 |
Specific humidity at 250 hPa | kg kg⁻¹ | Specific humidity |
q300 |
Specific humidity at 300 hPa | kg kg⁻¹ | Specific humidity |
q400 |
Specific humidity at 400 hPa | kg kg⁻¹ | Specific humidity |
q500 |
Specific humidity at 500 hPa | kg kg⁻¹ | Specific humidity |
q600 |
Specific humidity at 600 hPa | kg kg⁻¹ | Specific humidity |
q700 |
Specific humidity at 700 hPa | kg kg⁻¹ | Specific humidity |
q850 |
Specific humidity at 850 hPa | kg kg⁻¹ | Specific humidity |
q925 |
Specific humidity at 925 hPa | kg kg⁻¹ | Specific humidity |
q1000 |
Specific humidity at 1000 hPa | kg kg⁻¹ | Specific humidity |
w50 |
Vertical wind at 50 hPa | Pa s⁻¹ | Vertical velocity |
w100 |
Vertical wind at 100 hPa | Pa s⁻¹ | Vertical velocity |
w150 |
Vertical wind at 150 hPa | Pa s⁻¹ | Vertical velocity |
w200 |
Vertical wind at 200 hPa | Pa s⁻¹ | Vertical velocity |
w250 |
Vertical wind at 250 hPa | Pa s⁻¹ | Vertical velocity |
w300 |
Vertical wind at 300 hPa | Pa s⁻¹ | Vertical velocity |
w400 |
Vertical wind at 400 hPa | Pa s⁻¹ | Vertical velocity |
w500 |
Vertical wind at 500 hPa | Pa s⁻¹ | Vertical velocity |
w600 |
Vertical wind at 600 hPa | Pa s⁻¹ | Vertical velocity |
w700 |
Vertical wind at 700 hPa | Pa s⁻¹ | Vertical velocity |
w850 |
Vertical wind at 850 hPa | Pa s⁻¹ | Vertical velocity |
w925 |
Vertical wind at 925 hPa | Pa s⁻¹ | Vertical velocity |
w1000 |
Vertical wind at 1000 hPa | Pa s⁻¹ | Vertical velocity |
All of the model's output variables that have ERA5 verification are scored.
Data¶
The numbers behind the plot are in eval_scores_graphcast.json, exported by
the eval recipe scorecard
(scorecard/export_scores.py --docs) -- one value per metric, variable
and lead time, in the variable's own units.
Reproducibility¶
Run and environment details
| Date scored | 2026-08-31 |
| Scores written | 2026-08-31 |
| GPUs | 8 x NVIDIA H100 80GB HBM3 (single node) |
| PyTorch | 2.12.0a0+0291f960b6.nv26.04.48445190 |
| CUDA | 13.2 |
| Python | 3.12.3 |
| Repo commit | a2cc76332120 |
| Provenance source | run |
| Exported | 2026-09-01 |
| Locked dependencies | uv.lock @ a2cc76332120 |
Reference¶
Lam, R., et al. (2023). Learning skillful medium-range global weather forecasting. Science, 382(6677), 1416-1421.