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 · NCEP GFS · lead day 4

KSFO · gfs · lead 4

Target day = initialization date + 4 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, gfs-0p25, starting 2026-08-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
tmax00Zbilinear30d26 1 QC4.57 [3.56, 5.47]2.45-4.44 [-5.38, -3.36]5.32 [4.38, 6.09]15% [4%, 28%]19%31%-0.11+0.382026-08-05 → 2026-08-30
tmax00Zbilinear90d26 1 QC4.57 [3.41, 5.63]2.45-4.44 [-5.51, -3.10]5.32 [4.15, 6.23]15% [4%, 30%]19%31%-0.11+0.382026-08-05 → 2026-08-30
tmax00Zbilinear365d26 1 QC4.57 [3.36, 5.73]2.45-4.44 [-5.61, -3.16]5.32 [4.06, 6.42]15% [0%, 30%]19%31%-0.11+0.382026-08-05 → 2026-08-30
tmax00Zbilinearall26 1 QC4.57 [3.47, 5.61]2.45-4.44 [-5.54, -3.25]5.32 [4.21, 6.22]15% [0%, 30%]19%31%-0.11+0.382026-08-05 → 2026-08-30
tmax00Znearest30d26 1 QC3.22 [2.18, 4.47]3.21+1.23 [-0.23, 3.03]3.99 [2.72, 5.31]19% [5%, 33%]35%50%+0.22+0.192026-08-05 → 2026-08-30
tmax00Znearest90d26 1 QC3.22 [2.10, 4.62]3.21+1.23 [-0.46, 3.42]3.99 [2.62, 5.50]19% [0%, 33%]35%50%+0.22+0.192026-08-05 → 2026-08-30
tmax00Znearest365d26 1 QC3.22 [2.05, 4.61]3.21+1.23 [-0.69, 3.40]3.99 [2.58, 5.54]19% [0%, 33%]35%50%+0.22+0.192026-08-05 → 2026-08-30
tmax00Znearestall26 1 QC3.22 [2.01, 4.73]3.21+1.23 [-0.53, 3.30]3.99 [2.53, 5.53]19% [0%, 33%]35%50%+0.22+0.192026-08-05 → 2026-08-30
tmax12Zbilinear30d26 1 QC4.45 [3.50, 5.34]2.50-4.20 [-5.21, -3.12]5.18 [4.31, 5.84]12% [3%, 23%]27%35%-0.08+0.372026-08-05 → 2026-08-30
tmax12Zbilinear90d26 1 QC4.45 [3.35, 5.46]2.50-4.20 [-5.36, -2.88]5.18 [4.13, 5.95]12% [0%, 24%]27%35%-0.08+0.372026-08-05 → 2026-08-30
tmax12Zbilinear365d26 1 QC4.45 [3.32, 5.55]2.50-4.20 [-5.42, -2.91]5.18 [4.06, 5.92]12% [0%, 24%]27%35%-0.08+0.372026-08-05 → 2026-08-30
tmax12Zbilinearall26 1 QC4.45 [3.38, 5.56]2.50-4.20 [-5.43, -3.00]5.18 [4.20, 5.95]12% [0%, 24%]27%35%-0.08+0.372026-08-05 → 2026-08-30
tmax12Znearest30d26 1 QC3.45 [2.47, 4.52]3.51+1.21 [-0.42, 3.05]4.32 [3.16, 5.50]23% [12%, 33%]38%46%+0.16+0.122026-08-05 → 2026-08-30
tmax12Znearest90d26 1 QC3.45 [2.40, 4.61]3.51+1.21 [-0.58, 3.47]4.32 [3.02, 5.67]23% [11%, 33%]38%46%+0.16+0.122026-08-05 → 2026-08-30
tmax12Znearest365d26 1 QC3.45 [2.32, 4.61]3.51+1.21 [-0.81, 3.43]4.32 [2.96, 5.64]23% [10%, 35%]38%46%+0.16+0.122026-08-05 → 2026-08-30
tmax12Znearestall26 1 QC3.45 [2.31, 4.67]3.51+1.21 [-0.83, 3.39]4.32 [2.92, 5.69]23% [10%, 33%]38%46%+0.16+0.122026-08-05 → 2026-08-30
tmin00Zbilinear30d26 1 QC1.04 [0.72, 1.33]0.97-0.52 [-0.95, -0.08]1.29 [0.95, 1.53]50% [27%, 81%]88%100%+0.22+0.282026-08-05 → 2026-08-30
tmin00Zbilinear90d26 1 QC1.04 [0.65, 1.34]0.97-0.52 [-0.93, 0.00]1.29 [0.85, 1.54]50% [24%, 89%]88%100%+0.22+0.282026-08-05 → 2026-08-30
tmin00Zbilinear365d26 1 QC1.04 [0.67, 1.35]0.97-0.52 [-0.98, 0.03]1.29 [0.87, 1.56]50% [24%, 88%]88%100%+0.22+0.282026-08-05 → 2026-08-30
tmin00Zbilinearall26 1 QC1.04 [0.66, 1.34]0.97-0.52 [-0.98, 0.05]1.29 [0.83, 1.55]50% [24%, 89%]88%100%+0.22+0.282026-08-05 → 2026-08-30
tmin00Znearest30d26 1 QC2.00 [1.57, 2.43]1.23-1.72 [-2.35, -1.06]2.28 [1.78, 2.66]23% [8%, 38%]50%77%-0.48+0.082026-08-05 → 2026-08-30
tmin00Znearest90d26 1 QC2.00 [1.49, 2.45]1.23-1.72 [-2.35, -0.96]2.28 [1.70, 2.69]23% [7%, 38%]50%77%-0.48+0.082026-08-05 → 2026-08-30
tmin00Znearest365d26 1 QC2.00 [1.51, 2.45]1.23-1.72 [-2.37, -1.01]2.28 [1.69, 2.69]23% [6%, 42%]50%77%-0.48+0.082026-08-05 → 2026-08-30
tmin00Znearestall26 1 QC2.00 [1.51, 2.47]1.23-1.72 [-2.37, -0.96]2.28 [1.72, 2.70]23% [5%, 42%]50%77%-0.48+0.082026-08-05 → 2026-08-30
tmin12Zbilinear30d26 1 QC1.00 [0.71, 1.27]0.93-0.45 [-0.97, 0.10]1.25 [0.92, 1.50]62% [42%, 80%]81%100%+0.26+0.312026-08-05 → 2026-08-30
tmin12Zbilinear90d26 1 QC1.00 [0.67, 1.29]0.93-0.45 [-0.98, 0.17]1.25 [0.86, 1.51]62% [43%, 84%]81%100%+0.26+0.312026-08-05 → 2026-08-30
tmin12Zbilinear365d26 1 QC1.00 [0.68, 1.31]0.93-0.45 [-1.03, 0.32]1.25 [0.85, 1.53]62% [41%, 86%]81%100%+0.26+0.312026-08-05 → 2026-08-30
tmin12Zbilinearall26 1 QC1.00 [0.68, 1.30]0.93-0.45 [-1.04, 0.18]1.25 [0.81, 1.53]62% [41%, 86%]81%100%+0.26+0.312026-08-05 → 2026-08-30
tmin12Znearest30d26 1 QC1.92 [1.20, 2.69]1.28-1.67 [-2.56, -0.89]2.31 [1.51, 3.02]27% [10%, 50%]62%77%-0.42+0.052026-08-05 → 2026-08-30
tmin12Znearest90d26 1 QC1.92 [1.10, 2.69]1.28-1.67 [-2.59, -0.82]2.31 [1.41, 3.02]27% [9%, 54%]62%77%-0.42+0.052026-08-05 → 2026-08-30
tmin12Znearest365d26 1 QC1.92 [1.11, 2.74]1.28-1.67 [-2.66, -0.85]2.31 [1.40, 3.07]27% [9%, 56%]62%77%-0.42+0.052026-08-05 → 2026-08-30
tmin12Znearestall26 1 QC1.92 [1.07, 2.71]1.28-1.67 [-2.62, -0.81]2.31 [1.41, 3.04]27% [8%, 56%]62%77%-0.42+0.052026-08-05 → 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 NCEP GFS at KSFO, lead day 4, 00Z bilinear tmax+10+50-5-102026-08-05: -4.14 °F2026-08-06: -2.99 °F2026-08-07: +0.32 °F2026-08-08: +0.61 °F2026-08-09: -3.19 °F2026-08-10: -7.06 °F2026-08-11: -8 °F2026-08-12: -6.03 °F2026-08-13: -3.72 °F2026-08-14: -4.26 °F2026-08-15: -6.82 °F2026-08-16: -5.17 °F2026-08-17: -6.55 °F2026-08-18: -3.56 °F2026-08-19: +0.15 °F2026-08-20: -3.76 °F2026-08-21: -2.39 °F2026-08-22: -1.67 °F2026-08-23: -9.44 °F2026-08-24: -6.94 °F2026-08-25: -2.25 °F2026-08-26: -8.91 °F2026-08-27: -4.57 °F2026-08-28: +0.63 °F2026-08-29: -7.88 °F2026-08-30: -7.72 °F2026-08-052026-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 (26 days, newest first) · download CSV
Climatological dayError °F
2026-08-30-7.72
2026-08-29-7.88
2026-08-28+0.63
2026-08-27-4.57
2026-08-26-8.91
2026-08-25-2.25
2026-08-24-6.94
2026-08-23-9.44
2026-08-22-1.67
2026-08-21-2.39
2026-08-20-3.76
2026-08-19+0.15
2026-08-18-3.56
2026-08-17-6.55
2026-08-16-5.17
2026-08-15-6.82
2026-08-14-4.26
2026-08-13-3.72
2026-08-12-6.03
2026-08-11-8.00
2026-08-10-7.06
2026-08-09-3.19
2026-08-08+0.61
2026-08-07+0.32
2026-08-06-2.99
2026-08-05-4.14

Error distribution

Distribution of the signed daily error in °F for NCEP GFS at KSFO, lead day 4-10 to -9 °F: 1 day-9 to -8 °F: 2 days-8 to -7 °F: 3 days-7 to -6 °F: 4 days-6 to -5 °F: 1 day-5 to -4 °F: 3 days-4 to -3 °F: 4 days-3 to -2 °F: 3 days-2 to -1 °F: 1 day-1 to 0 °F: 0 days0 to 1 °F: 4 days1 to 2 °F: 0 days2 to 3 °F: 0 days3 to 4 °F: 0 days4 to 5 °F: 0 days5 to 6 °F: 0 days6 to 7 °F: 0 days7 to 8 °F: 0 days8 to 9 °F: 0 days9 to 10 °F: 0 daysdashed: P50 |e| 4.2 · P90 |e| 7.94 °F-100+10 °Fn = 26 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
-10.00-9.001
-9.00-8.002
-8.00-7.003
-7.00-6.004
-6.00-5.001
-5.00-4.003
-4.00-3.004
-3.00-2.003
-2.00-1.001
-1.00+0.000
+0.00+1.004
+1.00+2.000
+2.00+3.000
+3.00+4.000
+4.00+5.000
+5.00+6.000
+6.00+7.000
+7.00+8.000
+8.00+9.000
+9.00+10.000

Month by month

00Z bilinear daily maximum, newest first.

Monthn MAE °FBias °F
2026-08264.57 -4.44

Availability

ModelScored period DaysCoverage
NCEP GFS2026-08-05 → 2026-08-30 26
NCEP GFS2026-08-05 → 2026-08-30 26
NCEP GFS2026-08-05 → 2026-08-30 26
NCEP GFS2026-08-05 → 2026-08-30 26

Compared with other models

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

Other modelCommon days MAE difference °FDistinguishable
ECMWF AIFS Single 26 -0.12 [-0.63, 0.49] no
GraphCast (IFS init) 25 -0.69 [-1.18, -0.09] yes
ECMWF IFS HRES 20 -1.44 [-2.05, -0.93] yes
Persistence (baseline) 26 +0.45 [-1.62, 1.67] no

Cite this page

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

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

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