KSAN — San Diego Lindbergh
32.7336, -117.1831 · 4 m· standard offset UTC-8 h · truth product CLISAN
These pages are always bilinear interpolation, the headline method. The nearest-node variant, and every other window/initialization/interpolation/variable combination, is published on each permanent link below — follow any number.
Daily maximum temperature — MAE °F
| Model | d0 | d1 | d2 | d3 | d4 | d5 | d6 | d7 | d8 | d9 | lead 1–9 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ECMWF AIFS Singleaifs_single | 3.97-3.97 · n=30 | 3.81-3.81 · n=29 | 3.60-3.60 · n=28 | 3.54-3.47 · n=27 | 3.48-3.48 · n=26 | 3.48-3.38 · n=25 | 3.40-3.20 · n=24 | 3.35-3.09 · n=23 | 3.58-3.36 · n=22 | — | |
| Aurora (GFS init)aurora_gfs | 5.78-5.78 · n=2 | 4.06-4.06 · n=1 | — | — | — | — | — | — | — | — | |
| Aurora (IFS init)aurora_ifs | 4.67-4.67 · n=3 | 5.18-5.18 · n=2 | 3.85-3.85 · n=1 | — | — | — | — | — | — | — | |
| FourCastNet v2 (GFS init)fourcastnet_gfs | 2.93-2.93 · n=2 | 0.54-0.54 · n=1 | — | — | — | — | — | — | — | — | |
| FourCastNet v2 (IFS init)fourcastnet_ifs | 2.69-2.69 · n=3 | 2.56-2.56 · n=2 | 0.54-0.54 · n=1 | — | — | — | — | — | — | — | |
| NCEP GFSgfs | 2.93-2.91 · n=30 | 2.68-2.65 · n=29 | 2.82-2.78 · n=28 | 2.97-2.91 · n=27 | 3.09-3.07 · n=26 | 3.32-3.27 · n=25 | 3.40-3.35 · n=24 | 3.72-3.43 · n=23 | 3.83-3.55 · n=22 | — | |
| GraphCast (GFS init)graphcast_gfs | 5.30-5.30 · n=2 | 3.50-3.50 · n=1 | — | — | — | — | — | — | — | — | |
| GraphCast (IFS init)graphcast_ifs | 5.43-5.43 · n=28 | 5.88-5.88 · n=27 | 5.72-5.72 · n=26 | 5.79-5.79 · n=25 | 5.80-5.80 · n=25 | 5.60-5.60 · n=25 | 5.58-5.58 · n=24 | 5.70-5.70 · n=23 | 5.91-5.91 · n=22 | — | |
| ECMWF IFS HRESifs_hres | 5.81-5.81 · n=25 | 5.68-5.68 · n=22 | 5.78-5.78 · n=23 | 5.53-5.50 · n=22 | 5.69-5.66 · n=20 | 5.86-5.86 · n=18 | 5.56-5.56 · n=19 | 5.47-5.47 · n=18 | 6.28-6.28 · n=17 | — | |
| Pangu-Weather (GFS init)pangu_gfs | 5.38-5.38 · n=2 | 4.97-4.97 · n=1 | — | — | — | — | — | — | — | — | |
| Pangu-Weather (IFS init)pangu_ifs | 5.51-5.51 · n=3 | 6.41-6.41 · n=2 | 4.85-4.85 · n=1 | — | — | — | — | — | — | — | |
| Persistence (baseline)persistence | — | 1.50-0.12 · n=90 | 1.90-0.30 · n=90 | 1.99-0.46 · n=90 | 2.27-0.60 · n=90 | 2.27-0.82 · n=90 | 2.30-1.01 · n=90 | 2.63-1.17 · n=90 | 2.64-1.36 · n=90 | 2.64-1.51 · n=90 |
Up to 1 of the scored days in this table carry a QC flag on the observation (a CLI value that disagreed with the hourly observations, or a fallback source). They are kept in the scores and counted here rather than dropped — see methodology.
+ model too warm · − model too cold · bias interval includes zero · ★ lowest MAE · = not distinguishable from the leader · ▼ significantly worse · n < 30 greyed and unranked · CI is a 95 % moving-block bootstrap interval.
Daily minimum temperature — MAE °F
| Model | d0 | d1 | d2 | d3 | d4 | d5 | d6 | d7 | d8 | d9 | lead 1–9 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ECMWF AIFS Singleaifs_single | 1.34-1.18 · n=30 | 1.52-1.31 · n=29 | 1.44-1.06 · n=28 | 1.23-0.79 · n=27 | 1.09-0.72 · n=26 | 0.82-0.66 · n=25 | 0.85-0.51 · n=24 | 0.80-0.48 · n=23 | 1.14-0.47 · n=22 | — | |
| Aurora (GFS init)aurora_gfs | 2.08-2.08 · n=2 | 3.02-3.02 · n=1 | — | — | — | — | — | — | — | — | |
| Aurora (IFS init)aurora_ifs | 0.92-0.92 · n=3 | 1.16-1.16 · n=2 | 2.74-2.74 · n=1 | — | — | — | — | — | — | — | |
| FourCastNet v2 (GFS init)fourcastnet_gfs | 0.79+0.05 · n=2 | 0.66-0.66 · n=1 | — | — | — | — | — | — | — | — | |
| FourCastNet v2 (IFS init)fourcastnet_ifs | 1.21+0.09 · n=3 | 1.16+0.30 · n=2 | 0.82-0.82 · n=1 | — | — | — | — | — | — | — | |
| NCEP GFSgfs | 2.14+2.03 · n=30 | 2.37+2.26 · n=29 | 2.54+2.39 · n=28 | 2.63+2.40 · n=27 | 2.49+2.28 · n=26 | 2.46+2.35 · n=25 | 2.35+2.31 · n=24 | 2.34+2.34 · n=23 | 2.08+1.70 · n=22 | — | |
| GraphCast (GFS init)graphcast_gfs | 1.52-0.94 · n=2 | 1.97-1.97 · n=1 | — | — | — | — | — | — | — | — | |
| GraphCast (IFS init)graphcast_ifs | 0.85-0.54 · n=28 | 1.08-0.77 · n=27 | 1.02-0.65 · n=26 | 0.81-0.44 · n=25 | 0.70-0.31 · n=25 | 0.58-0.25 · n=25 | 0.74-0.04 · n=24 | 0.67+0.06 · n=23 | 1.07-0.13 · n=22 | — | |
| ECMWF IFS HRESifs_hres | 0.82-0.43 · n=25 | 1.12-0.87 · n=22 | 1.12-0.85 · n=23 | 1.33-0.96 · n=22 | 1.35-0.77 · n=20 | 1.40-0.98 · n=18 | 1.15-0.79 · n=19 | 1.40-0.82 · n=18 | 1.50-1.26 · n=17 | — | |
| Pangu-Weather (GFS init)pangu_gfs | 1.39-1.11 · n=2 | 3.14-3.14 · n=1 | — | — | — | — | — | — | — | — | |
| Pangu-Weather (IFS init)pangu_ifs | 1.12-0.30 · n=3 | 1.54-1.54 · n=2 | 3.13-3.13 · n=1 | — | — | — | — | — | — | — | |
| Persistence (baseline)persistence | — | 0.81-0.12 · n=90 | 1.03-0.26 · n=90 | 1.28-0.41 · n=90 | 1.47-0.56 · n=90 | 1.61-0.72 · n=90 | 1.80-0.84 · n=90 | 1.84-0.96 · n=90 | 1.97-1.03 · n=90 | 2.07-1.11 · n=90 |
Up to 1 of the scored days in this table carry a QC flag on the observation (a CLI value that disagreed with the hourly observations, or a fallback source). They are kept in the scores and counted here rather than dropped — see methodology.
Month by month
MAE °F at lead day 1, 00Z, bilinear, daily maximum — the seasonal slice behind the window averages. A model that is excellent in one season and poor in another shows up here and nowhere else.
| Month | aifs_single | aurora_gfs | aurora_ifs | fourcastnet_gfs | fourcastnet_ifs | gfs | graphcast_gfs | graphcast_ifs | ifs_hres | pangu_gfs | pangu_ifs |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-08 | 3.81-3.81 · n=29 | 4.06-4.06 · n=1 | 5.18-5.18 · n=2 | 0.54-0.54 · n=1 | 2.56-2.56 · n=2 | 2.68-2.65 · n=29 | 3.50-3.50 · n=1 | 5.88-5.88 · n=27 | 5.68-5.68 · n=22 | 4.97-4.97 · n=1 | 6.41-6.41 · n=2 |
| 2026-01 | — | — | — | — | — | — | — | 3.97-3.97 · n=6 | — | — | — |
Model availability at this station
| Model | Period | Scored days | Coverage |
|---|---|---|---|
| ECMWF AIFS Single | 2026-08-02 → 2026-08-30 | 29 | |
| Aurora (GFS init) | 2026-08-30 → 2026-08-30 | 1 | |
| Aurora (IFS init) | 2026-08-29 → 2026-08-30 | 2 | |
| FourCastNet v2 (GFS init) | 2026-08-30 → 2026-08-30 | 1 | |
| FourCastNet v2 (IFS init) | 2026-08-29 → 2026-08-30 | 2 | |
| NCEP GFS | 2026-08-02 → 2026-08-30 | 29 | |
| GraphCast (GFS init) | 2026-08-30 → 2026-08-30 | 1 | |
| GraphCast (IFS init) | 2026-01-02 → 2026-08-30 | 33 | |
| ECMWF IFS HRES | 2026-08-02 → 2026-08-30 | 22 | |
| Pangu-Weather (GFS init) | 2026-08-30 → 2026-08-30 | 1 | |
| Pangu-Weather (IFS init) | 2026-08-29 → 2026-08-30 | 2 | |
| Persistence (baseline) | 2024-01-02 → 2026-08-30 | 970 |
Observed truth — last 30 days
| Climatological day | Tmax °F | Tmin °F | Source | Flag |
|---|---|---|---|---|
| 2026-08-30 | 80 | 73 | OBS | obs_fallback |
| 2026-08-29 | 87 | 73 | CLI | |
| 2026-08-28 | 84 | 73 | CLI | |
| 2026-08-27 | 83 | 72 | CLI | |
| 2026-08-26 | 89 | 73 | CLI | |
| 2026-08-25 | 85 | 71 | CLI | |
| 2026-08-24 | 83 | 71 | CLI | |
| 2026-08-23 | 87 | 69 | CLI | |
| 2026-08-22 | 82 | 70 | CLI | |
| 2026-08-21 | 82 | 70 | CLI | |
| 2026-08-20 | 81 | 70 | CLI | |
| 2026-08-19 | 79 | 69 | CLI | |
| 2026-08-18 | 79 | 69 | CLI | |
| 2026-08-17 | 80 | 69 | CLI | |
| 2026-08-16 | 78 | 69 | CLI | |
| 2026-08-15 | 78 | 69 | CLI | |
| 2026-08-14 | 78 | 71 | CLI | |
| 2026-08-13 | 77 | 70 | CLI | |
| 2026-08-12 | 80 | 71 | CLI | |
| 2026-08-11 | 81 | 71 | CLI | |
| 2026-08-10 | 82 | 71 | CLI | |
| 2026-08-09 | 82 | 71 | CLI | |
| 2026-08-08 | 81 | 69 | CLI | |
| 2026-08-07 | 81 | 71 | CLI | |
| 2026-08-06 | 81 | 71 | CLI | |
| 2026-08-05 | 79 | 68 | CLI | |
| 2026-08-04 | 77 | 69 | CLI | |
| 2026-08-03 | 78 | 70 | CLI | |
| 2026-08-02 | 80 | 70 | CLI | |
| 2026-08-01 | 81 | 69 | CF6 |
All scores as JSON scores_latest.csv daily_errors.csv.gz data & licences