Raw model output on the native 0.25° grid — no MOS, no bias correction, no post-processing. Scores understate operational forecast quality. Read the fairness statement →

CastCheck methodology v0.2 · data through 2026-08-30

San Francisco Intl · GraphCast (IFS init) · lead day 0

KSFO · graphcast_ifs · lead 0

Target day = initialization date + 0 days. This page is a permanent link: the numbers change as history accumulates, the address and the methodology version do not.

Scores use the latest model version segment, GRAP_v100, starting 2026-01-01 — days before that ran a different version of the model and are excluded rather than silently pooled. Of the scored days, 1 carry a QC flag on the observation.

JSON for this page CSV of the daily errors Cite this page

Every number for this combination

All four windows × both initializations × both interpolations × both variables. Errors are computed in °C and shown in °F; CI is a 95 % moving-block bootstrap interval. MAE debiased and skill, debiased remove the constant offset of the window first, so a station that the model always reads a degree too warm is not scored as if it had no skill — compare the two skill columns to see how much of the error is a fixed offset. n QC next to n counts days whose observation carries a QC flag.

VariableInitMethod Windown MAE °F MAE debiased Bias °F RMSE °F ±1 °F±2 °F±3 °F Skill Skill, debiased Period
tmax00Zbilinear30d28 1 QC4.62 [3.65, 5.65]2.59-4.43 [-5.54, -3.39]5.41 [4.30, 6.40]11% [0%, 23%]25%36%2026-08-01 → 2026-08-30
tmax00Zbilinear90d28 1 QC4.62 [3.62, 5.72]2.59-4.43 [-5.69, -3.22]5.41 [4.18, 6.46]11% [0%, 23%]25%36%2026-08-01 → 2026-08-30
tmax00Zbilinear365d34 1 QC4.39 [3.46, 5.45]2.39-4.23 [-5.36, -3.26]5.14 [3.94, 6.20]9% [0%, 20%]24%38%2026-01-01 → 2026-08-30
tmax00Zbilinearall34 1 QC4.39 [3.49, 5.44]2.39-4.23 [-5.36, -3.28]5.14 [3.99, 6.16]9% [0%, 20%]24%38%2026-01-01 → 2026-08-30
tmax00Znearest30d28 1 QC3.75 [2.86, 4.76]2.90+2.89 [1.17, 4.29]4.70 [3.50, 5.75]18% [4%, 32%]36%50%2026-08-01 → 2026-08-30
tmax00Znearest90d28 1 QC3.75 [2.88, 4.77]2.90+2.89 [1.17, 4.37]4.70 [3.54, 5.80]18% [2%, 33%]36%50%2026-08-01 → 2026-08-30
tmax00Znearest365d34 1 QC3.66 [2.85, 4.48]3.27+1.82 [-0.67, 3.83]4.53 [3.51, 5.46]18% [6%, 32%]32%50%2026-01-01 → 2026-08-30
tmax00Znearestall34 1 QC3.66 [2.93, 4.50]3.27+1.82 [-0.49, 3.86]4.53 [3.55, 5.49]18% [5%, 32%]32%50%2026-01-01 → 2026-08-30
tmin00Zbilinear30d28 1 QC0.70 [0.52, 0.91]0.64+0.48 [0.28, 0.72]0.90 [0.66, 1.12]71% [61%, 82%]96%100%2026-08-01 → 2026-08-30
tmin00Zbilinear90d28 1 QC0.70 [0.49, 0.96]0.64+0.48 [0.20, 0.84]0.90 [0.61, 1.21]71% [57%, 85%]96%100%2026-08-01 → 2026-08-30
tmin00Zbilinear365d34 1 QC0.70 [0.53, 0.93]0.65+0.48 [0.26, 0.78]0.91 [0.67, 1.17]71% [57%, 81%]97%100%2026-01-01 → 2026-08-30
tmin00Zbilinearall34 1 QC0.70 [0.52, 0.91]0.65+0.48 [0.25, 0.75]0.91 [0.65, 1.16]71% [58%, 83%]97%100%2026-01-01 → 2026-08-30
tmin00Znearest30d28 1 QC0.76 [0.60, 0.96]0.76+0.02 [-0.25, 0.28]0.96 [0.76, 1.16]68% [52%, 83%]100%100%2026-08-01 → 2026-08-30
tmin00Znearest90d28 1 QC0.76 [0.62, 1.02]0.76+0.02 [-0.30, 0.28]0.96 [0.76, 1.23]68% [50%, 85%]100%100%2026-08-01 → 2026-08-30
tmin00Znearest365d34 1 QC0.82 [0.66, 1.06]0.82-0.11 [-0.49, 0.20]1.02 [0.83, 1.24]62% [42%, 79%]100%100%2026-01-01 → 2026-08-30
tmin00Znearestall34 1 QC0.82 [0.65, 1.03]0.82-0.11 [-0.51, 0.18]1.02 [0.83, 1.22]62% [43%, 79%]100%100%2026-01-01 → 2026-08-30

+ 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 error, last 90 days

Daily forecast minus observed error in °F for GraphCast (IFS init) at KSFO, lead day 0, 00Z bilinear tmax+20+100-10-202026-08-01: -3.01 °F2026-08-02: -8.91 °F2026-08-03: -8.02 °F2026-08-04: -5.05 °F2026-08-05: -4.69 °F2026-08-06: -4.81 °F2026-08-07: -0.62 °F2026-08-08: +0.44 °F2026-08-09: -1.51 °F2026-08-10: -6.93 °F2026-08-11: -10.16 °F2026-08-12: -9.41 °F2026-08-13: -8.21 °F2026-08-14: -5.48 °F2026-08-15: -3.58 °F2026-08-16: -2.87 °F2026-08-17: -5.65 °F2026-08-18: -2.47 °F2026-08-19: -1.49 °F2026-08-20: -3.95 °F2026-08-21: -2.89 °F2026-08-22: -1.56 °F2026-08-23: -7.61 °F2026-08-24: -7.19 °F2026-08-25: +0.4 °F2026-08-28: +1.81 °F2026-08-29: -5.4 °F2026-08-30: -5.23 °F2026-08-012026-08-30°F, forecast − observed
Forecast − observed, °F, 00Z bilinear daily maximum. The dashed line is zero; the thick line is a centred 7-day mean, drawn only where the whole window is present. Gaps are days with no score, never interpolation. Hover a point for its date and value.
The same series as a table (30 days, newest first) · download CSV
Climatological dayError °F
2026-08-30-5.23
2026-08-29-5.40
2026-08-28+1.81
2026-08-27
2026-08-26
2026-08-25+0.40
2026-08-24-7.19
2026-08-23-7.61
2026-08-22-1.56
2026-08-21-2.89
2026-08-20-3.95
2026-08-19-1.49
2026-08-18-2.47
2026-08-17-5.65
2026-08-16-2.87
2026-08-15-3.58
2026-08-14-5.48
2026-08-13-8.21
2026-08-12-9.41
2026-08-11-10.16
2026-08-10-6.93
2026-08-09-1.51
2026-08-08+0.44
2026-08-07-0.62
2026-08-06-4.81
2026-08-05-4.69
2026-08-04-5.05
2026-08-03-8.02
2026-08-02-8.91
2026-08-01-3.01

Error distribution

Distribution of the signed daily error in °F for GraphCast (IFS init) at KSFO, lead day 0-20 to -18 °F: 0 days-18 to -16 °F: 0 days-16 to -14 °F: 0 days-14 to -12 °F: 0 days-12 to -10 °F: 1 day-10 to -8 °F: 4 days-8 to -6 °F: 3 days-6 to -4 °F: 9 days-4 to -2 °F: 9 days-2 to 0 °F: 5 days0 to 2 °F: 3 days2 to 4 °F: 0 days4 to 6 °F: 0 days6 to 8 °F: 0 days8 to 10 °F: 0 days10 to 12 °F: 0 days12 to 14 °F: 0 days14 to 16 °F: 0 days16 to 18 °F: 0 days18 to 20 °F: 0 daysdashed: P50 |e| 4.09 · P90 |e| 8.15 °F-200+20 °Fn = 34 days
All scored days for 00Z bilinear daily maximum, 20 equal bins. The dashed marks are the 50th and 90th percentiles of the absolute error, mirrored on both sides. Hover a bar for its bin and count.
Bin counts as a table
From °FTo °FDays
-20.00-18.000
-18.00-16.000
-16.00-14.000
-14.00-12.000
-12.00-10.001
-10.00-8.004
-8.00-6.003
-6.00-4.009
-4.00-2.009
-2.00+0.005
+0.00+2.003
+2.00+4.000
+4.00+6.000
+6.00+8.000
+8.00+10.000
+10.00+12.000
+12.00+14.000
+14.00+16.000
+16.00+18.000
+18.00+20.000

Month by month

00Z bilinear daily maximum, newest first.

Monthn MAE °FBias °F
2026-08284.62 -4.43
2026-0163.31 -3.31

Availability

ModelScored period DaysCoverage
GraphCast (IFS init)2026-01-01 → 2026-08-30 34
GraphCast (IFS init)2026-01-01 → 2026-08-30 34

Compared with other models

Paired bootstrap on the days both models cover (90d, 00Z, bilinear, daily maximum). Negative means GraphCast (IFS init) has the lower MAE. "Distinguishable" means the 95 % interval excludes zero.

Other modelCommon days MAE difference °FDistinguishable
ECMWF AIFS Single 28 +0.10 [-0.11, 0.31] no
Aurora (GFS init) 2 -2.37 [-2.66, -2.09] yes
Aurora (IFS init) 3 -1.28 [-2.94, 1.79] no
FourCastNet v2 (GFS init) 2 +0.31 [-0.06, 0.67] no
FourCastNet v2 (IFS init) 3 +0.81 [-0.39, 1.41] no
NCEP GFS 28 -0.16 [-0.91, 0.33] no
GraphCast (GFS init) 2 -0.88 [-0.99, -0.76] yes
ECMWF IFS HRES 23 -1.68 [-2.36, -0.96] yes
Pangu-Weather (GFS init) 2 -1.98 [-2.42, -1.53] yes
Pangu-Weather (IFS init) 3 -0.59 [-1.33, 0.87] no

Cite this page

ShortCastCheck, KSFO graphcast_ifs lead 0, methodology v0.2, accessed 2026-08-31, https://castcheck.zifanzhang.com/station/KSFO/model/graphcast_ifs/lead/0/

LongCastCheck (2026). Station-level verification of raw weather-model 2 m temperature forecasts: KSFO (San Francisco Intl), model graphcast_ifs, lead day 0. Methodology version 0.2, schema version 0.1, data through 2026-08-30. Accessed 2026-08-31. https://castcheck.zifanzhang.com/station/KSFO/model/graphcast_ifs/lead/0/

Accessed2026-08-31 (data through 2026-08-30; page built 2026-08-31T03:52:06+00:00)

JSON CSV all scores methodology v0.2 licence