WeatherNext 3 field guide
What Google DeepMind's new AI weather model is, how it differs from the forecasts we use today, what one day of it looks like at three Swiss stations, and what Google publishes.
64 members, a new run every hour, surface fields at 0.1° and hourly steps up to 15 days. Satellite images as input make the hourly runs possible.
The 0.1° radiation, cloud and wind fields learn from ECMWF's HRES model (its analyses and its first hours of forecast), not from measurements. Among the published fields, only the station temperature and dewpoint and the two rain products learn from observations.
Mean and five quantiles of 21 variables, CC BY 4.0 once a value is an hour old. The 64 members themselves cost money to read.
Google says 2024 and 2025 were filled in after the fact, and does not say which model version produced the archive. Only forecasts from July 2026 on are surely out of sample. We have asked Google.
What WeatherNext 3 is
WeatherNext 3 (WN3) is a global weather model from Google DeepMind and Google Research, released in August and September 2026 (Rasp et al., 2026; Google, 2026a). It does not solve the equations of the atmosphere. It is a neural network that has learned how the weather evolves from decades of past states, and it produces an ensemble of 64 equally likely futures.
WN3 starts a new run every hour. The runs at 00, 06, 12 and 18 UTC go 15 days ahead (360 h); the 20 runs in between go 48 h ahead (Google, 2026a). Surface variables, including solar radiation and cloud cover, come on a 0.1° grid at hourly steps. Temperature, wind, humidity and geopotential on 13 pressure levels come at 0.25°.
Architecture
WN3 extends the Functional Generative Network (FGN) behind WeatherNext 2 (Alet et al., 2025). Each data source keeps its own grid. An encoder maps it onto a shared icosahedral mesh, a transformer moves the state forward on that mesh, and decoders map the result back to each output grid. The transformer is larger than in WN2: a latent size of 1024 instead of 768, and 32 layers instead of 24 (Rasp et al., 2026, §2.2). The model advances in 6-hour steps and predicts the five hourly frames inside each step directly, as extra output channels.
How the ensemble is made
The members differ because the network receives noise. A low-dimensional random vector perturbs its normalisation layers; this represents the uncertainty of the weather itself. Two independently trained copies of the network ("seeds") and a dropout mask drawn for each member and each step represent the uncertainty of the model. Training minimises the continuous ranked probability score (CRPS) of each variable, at each grid point and step, separately (Rasp et al., 2026, §2.2). For precipitation and cloud cover, a CRPS of the global mean is added with a weight of 0.3 (§A.1.2).
That has a consequence. The model is rewarded mostly for good distributions at each point, not for realistic joint fields. The paper shows hexagonal patterns of the mesh in single members, and jumps in the station temperature at every 6-hour boundary, where a new noise vector is drawn. Quantiles are "largely artifact-free" (Rasp et al., 2026, §4.6).
What goes in
- The two latest ECMWF analyses, 6 h apart. Between analyses, WN3 uses the latest HRES forecast for the missing hours, 1 to 5 h ahead. The paper calls this
HRES-fc0-5. - The 12 latest hourly images of a geostationary satellite mosaic, 11 channels at 0.1°, available about one hour after they are taken. At 14 UTC the model sees images up to 13 UTC: seven hours newer than the latest analysis (06 UTC), and five hours newer than the 2-hour HRES forecast that serves as its 08 UTC starting state (Rasp et al., 2026, §2.3). These images make the hourly runs possible.
What it learns from
| Output | Grid | Training target |
|---|---|---|
| 13 pressure levels and surface fields | 0.25° | ERA5 reanalysis 1959-2015, then HRES-fc0-5 from 2016 |
| Surface fields: radiation, cloud, wind, temperature, rain, pressure | 0.1°, hourly | HRES-fc0-5 from 2016 only |
| Station head: 2 m temperature and dewpoint | any point; 0.05° in production | about 5,000 airport stations (METAR), about 15,000 regional stations in 2024 (Mesonet), ships and buoys (ICOADS), from June 2001 (§2.3, §A.3.3; Table 1 gives 2016 for the same data); 5 % of stations held out; plus 2,000 points per hour filled from ERA5 or HRES |
| Precipitation, PARDIG head | 0.1°, hourly | PARDIG, Google's AI estimate of the radar on NASA's GPM satellite, from 1999 |
| Precipitation, IMERG head | 0.1°, hourly | NASA's IMERG Final satellite product, from 2000 |
| Tropical cyclones | table | IBTrACS best tracks |
| Geostationary satellite channels (not published) | 0.1°, hourly | the 11-channel satellite mosaic itself, from 2016 |
Source: Rasp et al. (2026), Table 1 and §2.3. The model behind the paper's 2024 evaluation was trained until the end of 2023. The production model was trained until 30 June 2026, including ECMWF's experimental cycle 50r1 data from 20 January to 11 May 2026.
The 0.1° radiation and cloud fields learn from HRES-fc0-5 and nothing else: "For the 0.1° variables, we train exclusively on HRES-fc0-5 starting in 2016" (Rasp et al., 2026, p. 6). They are a fast, probabilistic imitation of what ECMWF's model says in its first hours, not of what a pyranometer measures. Any bias of IFS radiation against the ground is part of the training target.
How the method differs from IFS ENS, ICON-CH and AIFS ENS
Three public systems are the natural comparisons for WN3 over Switzerland. ECMWF's IFS is the global physics model (IFS ENS is its ensemble). MeteoSwiss's ICON-CH1-EPS and ICON-CH2-EPS are the Swiss high-resolution physics ensembles. ECMWF's AIFS ENS is the operational AI ensemble of a public weather centre; the WN3 paper calls its approach related to FGN, on which WN3 is built.
| WeatherNext 3 | IFS ENS (cycle 50r1) | ICON-CH1-EPS | ICON-CH2-EPS | AIFS ENS v2 | |
|---|---|---|---|---|---|
| Kind | learned (FGN) | physics, coupled to the NEMO ocean | physics, regional | physics, regional | learned (graph transformer) |
| Run by | ECMWF | MeteoSwiss | MeteoSwiss | ECMWF | |
| Model grid | 0.1° surface, 0.25° levels, 0.05° station head | TCo1279, about 9 km, 137 levels | about 1 km, 80 levels | about 2.1 km, 80 levels | N320, about 31 km |
| Members | 64 | 50 + control | 10 + control | 20 + control | 50 + control |
| Runs per day, horizon | 24; to 360 h at 00/06/12/18 UTC, to 48 h otherwise | 00/12 UTC to 360 h; 06/18 UTC to 144 h | 8, to 33 h | 4, to 120 h | 4, to 360 h |
| Output step | 1 h for surface fields; most pressure-level fields 6 h | open data: 3 h to 144 h, then 6 h | 1 h | 1 h | 6 h |
| Starts from | the latest HRES analysis or a 1-5 h HRES forecast from it (two frames 6 h apart, about 5 h latency), and the 12 latest hourly satellite mosaics | 4D-Var analysis, perturbed by an ensemble of data assimilations and singular vectors | hourly ensemble data assimilation (LETKF, 40 + 1 members at 1 km) | same as CH1 | perturbed IFS ENS initial conditions, regridded |
| Model uncertainty | noise in normalisation layers, dropout per member and step, 2 seeds | stochastically perturbed parametrisations (SPP) | boundaries from IFS ENS; forecast model-error scheme not documented in the sources read | same as CH1 | Gaussian noise in the processor, trained with a CRPS loss |
| Learns from | ERA5, HRES analyses and short HRES forecasts, satellite images, stations, precipitation products, cyclone best tracks | physics; observations enter through data assimilation | physics; data assimilation | physics; data assimilation | ERA5 1979-2022, then ECMWF analyses 2018-2024 |
| Operational since | August 2026 | ensembles since 1992; 50r1 since 12 May 2026 | 28 May 2024 | 28 May 2024 | v1 1 July 2025; v2 12 May 2026 |
| Latency, 00 UTC run | about 7 h (paper's assumption; one observation agrees) | disseminated 06:40-07:40 UTC | about 2 h | about 3.5 h | 06:40-07:40 UTC |
Sources: Rasp et al. (2026); Google (2026a); ECMWF (2026a), IFS Documentation Cy50r1 Part V; ECMWF (2026b), cycle, open-data and dissemination pages; MeteoSwiss (2026); Hupp et al. (2025); Lang et al. (2026); ECMWF (2026c).
Four differences that matter for PV
- Learned versus simulated. IFS and ICON compute each forecast from the physics. WN3 and AIFS learn a mapping from past states to future states. They are fast, and WN3 can learn directly from observations such as stations. But a learned field can only be as good as its target, and for WN3's radiation the target is IFS (see What WeatherNext 3 is).
- Where the spread comes from. IFS perturbs its starting state and its physics. ICON-CH perturbs its starting state through its own data assimilation and takes its boundaries from IFS ENS. WN3 starts every member from the same state, injects noise and learns, through the CRPS loss, how wide the spread should be. AIFS ENS also injects noise and is trained with a CRPS loss, but each member starts from a perturbed IFS ENS initial condition, so part of its spread comes from IFS.
- Resolution in the Alps. A WN3 cell at 46° N is about 11 km by 7.7 km. It holds valley floor and ridge at once. ICON-CH1 at 1 km resolves the main valleys. IFS at 9 km sits close to WN3; AIFS at 31 km is coarser.
- Refresh. WN3 starts a run every hour, ICON-CH1 every 3 h, IFS and AIFS every 6 h. Because of latency, the freshest WN3 run is still about 7 h old when it arrives, against about 2 h for ICON-CH1.
Other AI models
Pangu-Weather (Bi et al., 2023), FourCastNet 3 (Bonev et al., 2025) and Aurora (Bodnar et al., 2025) are research models at 0.25° (Aurora also at 0.1°). Pangu-Weather and FourCastNet 3 are trained on ERA5; Aurora is pre-trained on a mix of reanalyses, forecasts and climate simulations and fine-tuned on HRES analyses. None runs as a public operational service; ECMWF ran Pangu-Weather, FourCastNet, GraphCast and Aurora as experiments until 12 May 2026 (ECMWF, 2026b). Pangu-Weather and Aurora are deterministic; FourCastNet 3 is a 50-member ensemble in its paper. FourCastNet 3 and the 0.1° Aurora publish no solar radiation.
Google's own earlier models set the background. GraphCast (Lam et al., 2023) is deterministic at 0.25°. GenCast (Price et al., 2025) is a diffusion ensemble at 0.25° and 12-hour steps. FGN, sold as WeatherNext 2 (Alet et al., 2025), is a 0.25°, 6-hourly ensemble. None of the three outputs solar radiation or cloud cover; WN3 is the first in this line that does.
One day of data at three stations
Three MeteoSwiss stations with 10-minute global radiation, three days, and two views of each day. Every forecast takes the grid cell nearest to the station.
| Station | Lat, lon | Height | Why | Model cells |
|---|---|---|---|---|
| DIA Les Diablerets (Glacier 3000) | 46.327, 7.204 | 2964 m | high alpine, above the stratus; measures radiation, not sunshine or rain | |
| GVE Genève-Cointrin | 46.248, 6.128 | 411 m | the western Plateau under winter stratus; also measures diffuse radiation | |
| SIO Sion | 46.219, 7.330 | 482 m | the dry, sunny Valais, inside the Alps |
Days, chosen from station data alone before any forecast for them was opened (A as the sunniest day at Payerne in an earlier notebook, B and C by the rule in select_days.py), all after 1 July 2026 and so out of sample. Values are for the UTC day; "clear sky" is the Haurwitz estimate, a sea-level formula that Glacier 3000 exceeds (108 %) on the clear day A.
- A 4 September 2026: clear. The sunniest day of September-October at Payerne; 737 min of sunshine at Geneva, 681 at Sion.
- B 19 October 2026: inversion. Geneva grey all day, with 1 minute of sunshine and dry after 03 UTC (0.9 mm in the first three hours); Glacier 3000 at 92 % of clear sky; Sion with 414 minutes of sunshine.
- C 25 October 2026: bad weather at Diablerets. Glacier 3000 at 16 % of clear sky, minimum -9.8 °C; 5.6 mm in Geneva and 7.4 mm in Sion. It is also the day the clocks went back, so its local day has 25 hours.
Views. "Same day" is the 00 UTC run of the day, leads 1-24 h. "Day-ahead" is the 00 UTC run of the day before, leads 25-48 h: what a trader holds at the day-ahead auction. Both cover the hours ending 01:00 to 24:00 UTC.
Every station on one map
The three stations are points. The map shows the whole field that WN3 forecast for the same days: the daily total of global radiation in every 0.1° cell, with the total measured at all MeteoSwiss stations that record radiation drawn as dots on the same colour scale. Where a dot stands out from the cells around it, the measurement and the forecast disagree; the scale below the map shows which way.
On the inversion day B, the map splits by altitude. The 77 stations below 1000 m measured a median of 0.99 kWh/m², while the WN3 cells around them had a median of 2.34 in the day-ahead run (2.33 in the same-day run); 42 of the 77 (45 in the same-day run) received less than half of what their cell forecast. The 57 stations at 1000 m and above measured a median of 2.93, against 2.87 in their cells. WN3 was not alone: at Geneva, which measured 1.09 kWh/m², the day-ahead runs of IFS ENS (mean) and ICON-CH2 forecast 3.06 and 2.47, and WN3 2.91. On the clear day A and the bad-weather day C, the medians of stations and cells stay within 0.3 kWh/m² of each other in both altitude groups.
One day is one weather situation, however many stations it covers: the low stations on day B belong to one and the same inversion, so they count as one case seen many times, not as 77 cases. The map shows what a fog day looks like in the data; how often WN3 misses fog needs many fog days.
From one run to the next
WN3 starts a run every hour, and each run forecasts the same day again. The chart shows, for each run, the daily total that it forecast at the three stations, against the time at which the run started; the dashed line is what the station measured. The 00, 06, 12 and 18 UTC runs last 15 days; the other runs stop after 48 hours, so they reach the evening of the day only when they start less than about 30 hours before it.
On the inversion day B, the runs from three days before forecast less sunshine at all three stations: the 00 UTC run of 16 October gave 2.74 kWh/m² at Glacier 3000, 2.14 at Geneva and 2.36 at Sion. The runs of the next 36 hours rose to about 3 and then stayed there. From 30 hours before the day on, the hourly runs gave Geneva between 2.73 and 2.96, and the station measured 1.09. The early runs did not see the fog either: they were lower at all three stations, also at Glacier 3000 and Sion, where every hourly run came within 0.2 kWh/m² of the measurement.
A newer run did not bring the forecast closer to the measurement. Where the runs missed, they all missed by about as much: Glacier 3000 measured 6.82 on the clear day A, and the 42 runs gave 6.17 to 6.27; at Geneva on day B, every hourly run was 1.6 to 1.9 kWh/m² too high. From one hourly run to the next, the daily total moved by a median of 0.01 kWh/m² on day A and of 0.01 to 0.05 on days B and C, and by 0.13 at most. Part of that movement can be chance: the mean of a run averages 64 members that the model draws with random noise, and a new draw gives a slightly different mean even from the same input.
For the day-ahead auction, the newest run before the close (01 UTC on the day before, dotted) differs from the 00 UTC run by at most 0.07 kWh/m² at these stations on these days. Three days and three stations show how the runs behave; how often a newer run helps needs a season of runs.
Look at the rows
The same files as the downloads below. Pick a table, a station, a day and a view; type part of a column name to choose columns (use | for "or").
Download
The workbook holds all four tables plus a README sheet (conventions, licences) and a COLUMNS sheet (units and meaning).
Methods: how to get the same data
WN3, from the statistics store on Google Cloud Storage. Sign in once with gcloud auth application-default login; never pass a billing project. Each run is a Zarr v3 group, one directory per run.
# uv add zarr gcsfs numpy import numpy as np, zarr root = "gs://weathernext3_statistics_spatial/weathernext_3_0_0_statistics/zarr/2026_to_present" g = zarr.open_group(f"{root}/20261018_00hr_01_preds/predictions.zarr", mode="r", storage_options={"token": "google_default"}) f = g["surface_solar_radiation_downwards_1hr_mean"] # (lead 1..360 h, lat 1801, lon 3600), float32 lat, lon = np.asarray(g["lat_0p1"][:]), np.asarray(g["lon_0p1"][:]) # lat -90..90, lon 0..359.9 i, j = np.abs(lat - 46.2475).argmin(), np.abs(lon - 6.1277).argmin() # Genève-Cointrin ghi = f.oindex[np.arange(24, 48), i, j] / 3600 # leads 25-48 h, W/m2; reads 24 global chunks
For a box, many fields and a resumable job, use pull_wn3_box.py and pull_explainer.sh (in wn3_explainer_scripts.zip). From a machine with about 1 Gbit/s, the 48 chunks of one field download in about 9 s; pull_wn3_box.py adds about 50 s to list the bucket and open the run.
IFS ENS, from dynamical.org's analysis-ready copy of ECMWF open data: no account.
# uv add icechunk xarray zarr import icechunk, numpy as np, xarray as xr url = ("https://dynamical-ecmwf-ifs-ens.s3.us-west-2.amazonaws.com/" "ecmwf-ifs-ens-forecast-15-day-0-25-degree/v0.1.0.icechunk") ds = xr.open_zarr(icechunk.Repository.open(icechunk.http_storage(url)).readonly_session("main").store, chunks=None) ghi = (ds["downward_short_wave_radiation_flux_surface"] # W/m2, mean over the 3 h ending at the lead .sel(init_time="2026-10-18T00").sel(latitude=46.25, longitude=6.13, method="nearest") .sel(lead_time=slice(np.timedelta64(27, "h"), np.timedelta64(48, "h"))).load()) # 51 members x 8 leads
ICON-CH, from open-meteo's archive of single runs (since 2 April 2026). elevation=nan turns off open-meteo's height correction, so you get the model at the height of its own cell.
https://single-runs-api.open-meteo.com/v1/forecast?latitude=46.2475&longitude=6.1277&run=2026-10-18T00:00&models=meteoswiss_icon_ch2&timezone=UTC&elevation=nan&hourly=shortwave_radiation,direct_radiation,cloud_cover_low
Stations, from MeteoSwiss open data: https://data.geo.admin.ch/ch.meteoschweiz.ogd-smn/gve/ogd-smn_gve_h_recent.csv (semicolon-separated, UTC, each value stamped at the end of its interval).
The same quantity arrives under four conventions: WN3 sums over the hour, IFS means over 3 h (or sums since the start at ECMWF), ICON means over the hour at open-meteo (or means since the start at MeteoSwiss), and stations average 10-minute values over the hour. All four stamp the end of the interval, but MeteoSwiss stamps its daily values at the start, and its daily rain runs from 06 to 06 UTC. A curve shifted by an hour, or off by a factor of 3600, still looks like radiation and still produces scores. Plot one clear day on a UTC axis first, with each interval mean at the middle of its interval (hourly values at t - 30 min, 3-hourly at t - 90 min): all curves must then peak together at solar noon.
What Google publishes, and how
Since when
Google lists the release as August 2026 (Google, 2026a); the paper appeared on arXiv on 3 September 2026 (Rasp et al., 2026). The archive on Google Cloud Storage starts on 1 January 2024. For 2024 and 2025 it holds the four main runs per day and the four runs at 03, 09, 15 and 21 UTC; from 2026 it holds all 24 runs per day. Earth Engine holds 2026 only.
Google's model page says the 2024-2025 data is being filled in after the fact. No page says when the January-June 2026 runs were computed, or by which model version. The paper's quasi-real-time evaluation used WN3's operational feed from 1 July 2026 (Rasp et al., 2026, §4.5). The production model was trained on data up to 30 June 2026. If that model computed the earlier archive, every forecast before July 2026 comes from a network that has already seen that weather. Its scores would then look better than its real skill, by an unknown amount, and IFS has no such advantage. Only forecasts from 1 July 2026 onward are surely out of sample. We asked Google on 28 October 2026 and are waiting for an answer.
How free
- Licence. Values that relate to a time at least one hour in the past are CC BY 4.0. Newer and future values fall under Google's experimental terms, which allow internal use and educational sharing with conditions, and set no fee for now. Published findings must cite the product and carry a notice that ends "This data is intended for experimental modelling only and is not intended, validated, or approved for real world use." The credit before that sentence differs: for historic data it names DeepMind Technologies Limited's models and the dataset page, under CC BY 4.0 (Google, 2026b); for real-time data it names Google LLC, under the experimental terms (Google, 2026c).
- Statistics are free to read. The statistics store is "requester pays off": Google pays for reads and network. A Google login is still needed; anonymous reads are refused.
- Members are not free. The 64 members and the pressure levels sit in a separate bucket where the reader pays.
- Earth Engine is free for non-commercial use, after registration, and samples points on Google's side. BigQuery is a trap for time series: in our test, a query for one field at one point for one run would have billed about 630 GB (a 300 GB limit stopped it).
- Every chunk is a whole globe. One chunk holds one field for one lead over the whole Earth: about 23 MB at 0.1°, and four times that (about 92 MB) for the 12 station-head fields at 0.05°. A single point costs the same download as the globe. One run with all 126 fields for 24 leads reads about 90 GB.
Every dimension, side by side
| WN3 statistics store | IFS ENS open data | ICON-CH1/CH2-EPS open data | |
|---|---|---|---|
| Where | Google Cloud Storage Zarr; also Earth Engine and BigQuery | ECMWF open data (last 12 runs); cloud mirrors since Feb 2024; dynamical.org Zarr of the 00 UTC run since Apr 2024 | MeteoSwiss STAC, last 24 h only; open-meteo archive of single runs since 2 Apr 2026 |
| Account | Google login | none | none |
| Grid | 0.1° regular; 0.05° for the station head | 0.25°; 0.1° since 20 Oct 2026 | native icosahedral 1 / 2.1 km; open-meteo regrids to 0.01° / 0.02° |
| Step and horizon | 1 h; 360 h (00/06/12/18 UTC) or 48 h | 3 h to 144 h, then 6 h; 360 h at 00/12 UTC | 1 h; 33 h / 120 h |
| Runs per day | 24 | 4 | 8 / 4 |
| Members you get | none: mean, p10, p25, p50, p75, p90 only | all 51 | 11 / 21 at MeteoSwiss; one series per run on open-meteo |
| Variables | 21 surface variables x 6 statistics = 126 fields | dozens, surface and pressure levels | dozens |
| Radiation convention | J/m² summed over the hour ending at the valid time | J/m² summed since the run started (ECMWF); W/m² mean over the step (dynamical.org) | W/m² mean since the run started (MeteoSwiss); hourly mean (open-meteo) |
| Lead 0 (analysis) | no, the first lead is 1 h | yes | yes |
| Latency | about 7 h | about 7-8 h | about 2 h / 3.5 h |
| Licence | CC BY 4.0 for values at least 1 h old | CC BY 4.0 | CC BY 4.0, "Source: MeteoSwiss" |
The 21 variables
Each variable comes six times: the ensemble mean and the 10th, 25th, 50th, 75th and 90th percentiles across the 64 members. The column "learns from" is the main point of What WeatherNext 3 is.
| Field | What it is | Unit, time | Learns from |
|---|---|---|---|
surface_solar_radiation_downwards_1hr | global horizontal irradiance: direct + diffuse light on a flat surface. What MeteoSwiss's pyranometers measure | J/m², sum over the hour ending at valid time (/3600 = W/m²) | IFS |
total_sky_direct_solar_radiation_at_surface_1hr | the direct-beam part of the above, on a horizontal plane, under real clouds. Diffuse = global - direct | J/m², same | IFS |
total_cloud_cover, low_, medium_, high_cloud_cover | cloud fraction of the cell, in total and per layer; the total is not the sum, because layers overlap. Low cloud is the stratus variable | 0-1, instantaneous | IFS |
total_precipitation_1hr | rain and snow of the model, IFS style | m, sum over the hour | IFS |
experimental_tp_1hr | the PARDIG head (our reading of the name) | m, sum over the hour | PARDIG radar estimate |
imerg_tp_1hr | the IMERG head | m, sum over the hour | NASA IMERG Final |
temperature_2m, dewpoint_temperature_2m | at the cell's mean model terrain height; in the Alps a cell 1 km below a station reads about 6.5 K warmer | K, instantaneous | IFS |
station_head_temperature_2m, station_head_dewpoint_temperature_2m | what a thermometer would read at the 0.05° grid point, at that point's height | K, instantaneous, 0.05° | stations, plus points filled from ERA5 or HRES |
u_/v_component_of_wind, wind_speed at 10 m and 100 m | wind; 100 m is near turbine hub height. The speed statistics are those of the member speeds, not the speed of the mean wind | m/s, instantaneous | IFS |
mean_sea_level_pressure | pressure reduced to sea level; gradients across the Alps indicate foehn and bise | Pa, instantaneous | IFS |
sea_surface_temperature | sea surface temperature (empty over the whole Swiss box, lakes included) | K, instantaneous | IFS |
What the statistics cannot give
Google computes the statistics separately for each cell, each hour and each variable. Three things follow.
- No quantiles of sums. The p10 of a daily total, or of a Swiss total, is not the sum of hourly or per-cell p10s. The uncertainty of national PV needs the members.
- No joint scenarios. The p10 of radiation and the p90 of cloud cover do not come from the same member.
- Five quantiles only. The CRPS can only be approximated, with the pinball loss on five levels, and a probability integral transform (PIT) histogram has at most six bins.
More and less than traditional NWP
More: a run every hour; a station head on a 0.05° grid (about 5.6 km by 3.9 km at 46° N); two observation-based rain products; ready-made quantiles; hourly radiation at 0.1° out to 15 days, where IFS open data is 3-hourly to 144 h and 6-hourly after that.
Less: no members in the free store; no analysis at lead 0; no gusts, longwave radiation, snowfall or precipitation type, which IFS ENS publishes; no sunshine duration, explicit diffuse radiation or direct normal irradiance, which open-meteo's ICON-CH provides; no clear-sky direct radiation, which Google trained but withheld because its skill "was an outlier and substantially worse than expected" (Rasp et al., 2026, p. 5). And the radiation fields imitate IFS instead of measurements.
When each forecast arrives
A forecast is useful only if it arrives before the decision that it informs. For solar power in Switzerland, the first market decision that a weather forecast for a day D can inform is the day-ahead auction, which closes at 11:00 Swiss time on D-1 (EPEX SPOT, 2021, p. 5). After the auction, intraday trading continues until 5 minutes before delivery (1 hour for trades across borders) (EPEX SPOT, 2024; VSE, 2026). The chart shows when the runs of each system reach a forecaster on D-1, for day B (19 October 2026, still in summer time; see One day of data).
When the auction closes in summer (09:00 UTC), the newest WN3 run that has arrived started at 01 UTC; the 02 UTC run arrives with the closing itself. The 01 UTC run is the freshest forecast that covers the whole day D, one hour fresher than IFS ENS, AIFS ENS and ICON-CH2, which all started at 00 UTC. Hourly runs give WN3 that lead, but the 7 hours of latency keep it small. ICON-CH2's 06 UTC run arrives at about 09:30 UTC: half an hour after the auction in summer, half an hour before it in winter, when it is four hours fresher than WN3's newest run. ICON-CH1 has the shortest delay, but its runs stop after 33 hours: those that arrive before the auction stop at 15:00 UTC on D or earlier, before the sun sets. For the auction, ICON-CH1 cannot forecast the whole day; for intraday trading on D, it gives the freshest start.
Appendix: performance as Google reports it
The paper evaluates the full year 2024 with a model trained until the end of 2023, mostly on the 00 and 12 UTC runs. A second evaluation covers 1 July to 11 August 2026 with the production model, against the operational feeds of WN2 and AIFS ENS v2 (Rasp et al., 2026, §3, §4.5). The truth differs by output:
- Gridded fields, including radiation and cloud:
HRES-fc0, "which is also what WN3 is initialized from" (p. 8). - Station head: METAR stations held out of training.
- Precipitation: IMERG Final, the US radar product MRMS, and rain gauges.
- Cyclones: IBTrACS.
Main results
- Upper air. About 5 % lower CRPS than WN2 in the medium range, which the authors equate to about 6 hours of extra lead time (§4.1). About 10 % better than AIFS ENS v2 on all upper-air variables, averaged over the first forecast week (lead times up to 7 days), in the 2026 window (§4.5).
- Surface fields at 0.1°. Better than WN2 on all surface variables, most for 2 m temperature, and more so against ENS. For the variables WN2 lacked (2 m dewpoint, surface solar radiation, direct solar radiation, and total, high, medium and low cloud cover), "substantial improvements in CRPS skill across all variables" against ENS, with radiation scored as 6-hour sums (p. 11). The exceptions are leads of 6 h, sometimes 12 h, for some variables.
- Station head. At short leads, up to 30 % lower CRPS for 2 m temperature than WN2 and 40 % lower than ENS, at stations not used in training. It overfits its training stations "by a few percent" (§4.2).
- 10 m wind. About 5 % lower CRPS at early leads (§4.2).
- Precipitation (PARDIG head). At early leads, CRPS up to 60 % lower against IMERG, 30 % against MRMS and 10 % against rain gauges, than WN2 and ENS. Better calibrated. The hourly runs gain 2 to 3 hours of lead time over 6-hourly runs (§4.3).
- Cyclones. Small but consistent gains in track and intensity over WN2; the ensemble spread is too narrow for intensity and wind radii, more so than for WN2 (§4.4).
The radiation scores use ECMWF's own HRES radiation as truth: the same family of fields WN3 is trained on, and itself a model output. They measure how well WN3 reproduces ECMWF's model, not the irradiance at a site. The only hourly radiation score is Figure A.3: WN3 alone against HRES-fc0-5 for the first 48 h, with no baseline. The paper has no score against pyranometers and no breakdown for Europe or the Alps. The 2026 window is six weeks long, which the authors call "a relatively small sample size" (p. 16). Google's Earth Engine page adds that the operational product's accuracy "may not directly correspond to the accuracy reported for the research model" (Google, 2026b).
Appendix: evaluations by others
A search of arXiv, ECMWF's pages and the web on 28 October 2026 found one outside evaluation of WN3, and none against observations.
- Brightband's Operational WeatherBench ranks the WN3 ensemble mean first on 2 m temperature error for 26 of the last 30 days of August 2026, against WN2, AIFS ENS and others (Brightband, 2026). The truth is the IFS analysis; there are no stations, no precipitation, no radiation and no cloud cover in it. Its author is thanked in the WN3 paper's acknowledgments, so it is only partly independent.
- Open Climate Fix, a UK non-profit for PV and grid forecasting, read the paper for a substation forecasting project. It notes that every radiation result uses an ECMWF analysis as truth, and keeps WN3 as a research candidate (Kelly, 2026). This is a reading, not an evaluation.
Evaluations of the related models against stations give a mixed picture. The result depends on the model and the variable more than on whether the model is AI, and every model looks worse against observations than against an analysis.
- Raw IFS ENS beats raw AIFS ENS on 10 m wind at 9,246 SYNOP stations, at all lead times (12 UTC runs, scored from 13 September to 30 November 2025); post-processing narrows the gap (Kocsis & Baran, 2026).
- ECMWF's own study finds the AIFS-CRPS ensemble at N320 ahead of the IFS ensemble "for most surface variables" when verified against surface observations (Lang et al., 2026).
- At European stations, including MeteoSwiss and BSRN sites with hourly global irradiance, the authors find "no uniform AI-specific deficit in the tails": some AI models beat IFS in extreme conditions, others fall behind, and the physics models vary as much. AIFS and AIFS ENS stay below IFS in the tails of wind and temperature, and are left out of the solar scores because they have no hourly solar output (Gabler et al., 2026). The authors work for Jua, a vendor that scores its own models in the same study.
- At 183 Norwegian stations, most of them along the coast and fjords and in valleys, a 2.5 km regional ensemble beats both Pangu-Weather and ECMWF on temperature and wind (Bremnes et al., 2024). This is the closest published analogue to WN3 at 0.1° against ICON-CH at Swiss stations.
- In the South Asian monsoon, an assessment of seven AI models finds errors against observations (stations, rain gauges, satellite) up to 15-45 % larger than errors against reanalysis and traditional forecasts (Gupta et al., 2025).
No independent study has scored the solar radiation of WN3 or AIFS ENS against pyranometers; WN2 and GenCast have no solar output to score. Among the AI ensembles of Google and ECMWF, WN3 is the only one with hourly radiation. A commercial global ensemble, Jua's EPT-2e, has been scored on hourly irradiance at European stations, by its own developer (Gabler et al., 2026). WN3's only radiation scores are Google's own, and there is no independent evaluation of WN3 over Switzerland or the Alps.
References
- Alet, F., Price, I., El-Kadi, A., Masters, D., et al. (2025). Skillful joint probabilistic weather forecasting from marginals. arXiv:2506.10772. arxiv.org/abs/2506.10772
- Bi, K., Xie, L., Zhang, H., Chen, X., Gu, X., Tian, Q. (2023). Accurate medium-range global weather forecasting with 3D neural networks. Nature 619, 533-538. doi:10.1038/s41586-023-06185-3
- Bodnar, C., Bruinsma, W. P., Lucic, A., et al. (2025). A foundation model for the Earth system. Nature 641, 1180-1187. doi:10.1038/s41586-025-09005-y
- Bonev, B., Kurth, T., Mahesh, A., et al. (2025). FourCastNet 3: A geometric approach to probabilistic machine-learning weather forecasting at scale. arXiv:2507.12144. arxiv.org/abs/2507.12144
- Bremnes, J. B., Nipen, T. N., Seierstad, I. A. (2024). Evaluation of forecasts by a global data-driven weather model with and without probabilistic post-processing at Norwegian stations. Nonlinear Processes in Geophysics 31, 247-257. doi:10.5194/npg-31-247-2024
- Brightband (Rothenberg, D.) (2026, 2 September). WeatherNext 3 on Operational WeatherBench. brightband.com; methodology owb.brightband.com/methodology
- ECMWF (2026a). IFS Documentation Cy50r1, Part V: Ensemble Prediction System. ecmwf.int
- ECMWF (2026b). Implementation of IFS Cycle 50r1; Open data; Dissemination schedule. confluence.ecmwf.int, ecmwf.int/en/forecasts/datasets/open-data, dissemination schedule
- ECMWF (2026c). Implementation of AIFS ENS v2; AIFS machine-learning data. confluence.ecmwf.int, ecmwf.int
- dynamical.org (2026). ECMWF IFS ENS forecast, 15 day, 0.25 degree. Processed from ECMWF Open Data. doi:10.5281/zenodo.18777399
- EPEX SPOT (2021). Trading at EPEX SPOT 2021, brochure of 15 March 2021, p. 5: the day-ahead order book "closes one day before delivery at 12:00 for all Day-Ahead coupled markets, at 11:00 for Switzerland". Read from the copy at nworbmot.org; a 2026 statement of the time was not found.
- EPEX SPOT (2024, 5 March). Monthly Power Trading Results of February 2024: Swiss intraday lead time reduced to 5 minutes before delivery on 13 February 2024. epexspot.com
- Gabler, M. V., Molinaro, R., Siegenheim, N., et al. (2026). Do AI weather models miss extremes? Evidence from ten months of verification against European weather stations. arXiv:2608.09972v2. arxiv.org/abs/2608.09972
- Google (2026a). WeatherNext models. developers.google.com/weathernext/guides/models
- Google (2026b). WeatherNext 3 (0.1°), Earth Engine data catalog. developers.google.com/earth-engine
- Google (2026c). WeatherNext terms of use, last modified 3 September 2026. storage.googleapis.com/weathernext-public/terms-of-use.pdf
- Gupta, A., Sheshadri, A., Suri, D. (2025). MAUSAM: An observations-focused assessment of global AI weather prediction models during the South Asian monsoon. arXiv:2509.01879. arxiv.org/abs/2509.01879
- Hupp, D., Müller, C., Luz, M., Magkanaris, I., Ehrengruber, T. (2025). A Python dynamical core for operational numerical weather prediction. MeteoSwiss, ECMWF HPC workshop slides. events.ecmwf.int
- Kelly, J. (Open Climate Fix) (2026, 20 September). Record WeatherNext 3 as a candidate NWP source, pull request 782. github.com/openclimatefix
- Kocsis, M., Baran, S. (2026). AI and physics-based weather forecasting: A comparative study. arXiv:2606.02508. arxiv.org/abs/2606.02508
- Lam, R., Sanchez-Gonzalez, A., Willson, M., et al. (2023). Learning skillful medium-range global weather forecasting. Science 382, 1416-1421. doi:10.1126/science.adi2336
- Lang, S., Alexe, M., Clare, M. C. A., et al. (2026). AIFS-CRPS: ensemble forecasting using a model trained with a loss function based on the continuous ranked probability score. npj Artificial Intelligence 2, 18. doi:10.1038/s44387-026-00073-7
- MeteoSwiss (2026). Numerical weather forecasting model ICON-CH1/2-EPS, open data documentation. opendatadocs.meteoswiss.ch
- Open-Meteo (2026). MeteoSwiss ICON-CH API and Single Runs API. open-meteo.com/en/docs/meteoswiss-api, open-meteo.com/en/docs/single-runs-api
- Price, I., Sanchez-Gonzalez, A., Alet, F., et al. (2025). Probabilistic weather forecasting with machine learning. Nature 637, 84-90. doi:10.1038/s41586-024-08252-9
- Rasp, S., Babenko, B., Masters, D., El-Kadi, A., et al. (2026). WeatherNext 3: Increasing resolution and performance of global weather models with raw observations. arXiv:2609.03582v1. arxiv.org/abs/2609.03582
- VSE / AES, Association of Swiss Electricity Companies (2026, 16 March). Mesures concernant le marché intraday, document thématique, p. 2: trading "jusqu'à 5 minutes avant la livraison physique (au niveau transfrontalier, un délai d'une heure avant la livraison s'applique)". strom.ch
Data: WN3 subsets of the Google DeepMind WeatherNext 3 statistics store; historic data under CC BY 4.0, created with DeepMind Technologies Limited's machine learning models (dataset page: Google, 2026b). "This data is intended for experimental modelling only and is not intended, validated, or approved for real world use." IFS ENS: ECMWF IFS ENS forecast data processed by dynamical.org from ECMWF Open Data, CC BY 4.0. ICON-CH: open-meteo.com, Source: MeteoSwiss, CC BY 4.0. Stations: Source: MeteoSwiss.