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 · ECMWF IFS HRES · lead day 4

KSFO · ifs_hres · 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, ifs-gpid161, 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
tmax00Zbilinear30d20 1 QC6.33 [5.31, 7.41]2.68-6.33 [-7.41, -5.31]7.16 [6.00, 8.19]5% [0%, 13%]10%15%-0.71+0.292026-08-05 → 2026-08-30
tmax00Zbilinear90d20 1 QC6.33 [5.21, 7.44]2.68-6.33 [-7.44, -5.21]7.16 [5.80, 8.23]5% [0%, 13%]10%15%-0.71+0.292026-08-05 → 2026-08-30
tmax00Zbilinear365d20 1 QC6.33 [5.15, 7.48]2.68-6.33 [-7.48, -5.15]7.16 [5.64, 8.26]5% [0%, 13%]10%15%-0.71+0.292026-08-05 → 2026-08-30
tmax00Zbilinearall20 1 QC6.33 [5.29, 7.62]2.68-6.33 [-7.62, -5.29]7.16 [5.94, 8.27]5% [0%, 14%]10%15%-0.71+0.292026-08-05 → 2026-08-30
tmax00Znearest30d20 1 QC2.67 [1.82, 3.29]2.82-1.07 [-1.91, -0.19]3.50 [2.49, 4.17]35% [21%, 53%]50%60%+0.28+0.252026-08-05 → 2026-08-30
tmax00Znearest90d20 1 QC2.67 [1.53, 3.29]2.82-1.07 [-1.85, -0.02]3.50 [2.10, 4.20]35% [18%, 59%]50%60%+0.28+0.252026-08-05 → 2026-08-30
tmax00Znearest365d20 1 QC2.67 [1.60, 3.34]2.82-1.07 [-1.99, -0.03]3.50 [2.19, 4.25]35% [15%, 57%]50%60%+0.28+0.252026-08-05 → 2026-08-30
tmax00Znearestall20 1 QC2.67 [1.53, 3.42]2.82-1.07 [-1.94, -0.15]3.50 [2.19, 4.29]35% [18%, 57%]50%60%+0.28+0.252026-08-05 → 2026-08-30
tmax12Zbilinear30d21 1 QC6.30 [5.60, 7.26]2.35-6.30 [-7.26, -5.60]6.95 [5.97, 7.93]5% [0%, 14%]5%10%-0.63+0.392026-08-05 → 2026-08-30
tmax12Zbilinear90d21 1 QC6.30 [5.54, 7.26]2.35-6.30 [-7.26, -5.54]6.95 [5.90, 7.91]5% [0%, 17%]5%10%-0.63+0.392026-08-05 → 2026-08-30
tmax12Zbilinear365d21 1 QC6.30 [5.44, 7.31]2.35-6.30 [-7.31, -5.44]6.95 [5.66, 7.97]5% [0%, 17%]5%10%-0.63+0.392026-08-05 → 2026-08-30
tmax12Zbilinearall21 1 QC6.30 [5.60, 7.36]2.35-6.30 [-7.36, -5.60]6.95 [5.91, 8.03]5% [0%, 15%]5%10%-0.63+0.392026-08-05 → 2026-08-30
tmax12Znearest30d21 1 QC2.62 [2.05, 3.35]2.49-1.30 [-2.01, -0.63]3.29 [2.55, 3.90]29% [6%, 54%]52%67%+0.32+0.352026-08-05 → 2026-08-30
tmax12Znearest90d21 1 QC2.62 [1.85, 3.55]2.49-1.30 [-2.12, -0.41]3.29 [2.42, 4.01]29% [4%, 62%]52%67%+0.32+0.352026-08-05 → 2026-08-30
tmax12Znearest365d21 1 QC2.62 [1.87, 3.57]2.49-1.30 [-2.17, -0.47]3.29 [2.39, 4.08]29% [0%, 62%]52%67%+0.32+0.352026-08-05 → 2026-08-30
tmax12Znearestall21 1 QC2.62 [1.94, 3.60]2.49-1.30 [-2.18, -0.45]3.29 [2.44, 4.06]29% [0%, 62%]52%67%+0.32+0.352026-08-05 → 2026-08-30
tmin00Zbilinear30d20 1 QC0.75 [0.52, 1.05]0.74-0.15 [-0.70, 0.15]1.00 [0.65, 1.27]70% [47%, 87%]95%100%+0.51+0.522026-08-05 → 2026-08-30
tmin00Zbilinear90d20 1 QC0.75 [0.53, 1.17]0.74-0.15 [-1.00, 0.13]1.00 [0.67, 1.36]70% [41%, 86%]95%100%+0.51+0.522026-08-05 → 2026-08-30
tmin00Zbilinear365d20 1 QC0.75 [0.52, 1.11]0.74-0.15 [-0.94, 0.17]1.00 [0.63, 1.36]70% [44%, 88%]95%100%+0.51+0.522026-08-05 → 2026-08-30
tmin00Zbilinearall20 1 QC0.75 [0.53, 1.15]0.74-0.15 [-1.09, 0.15]1.00 [0.63, 1.38]70% [33%, 86%]95%100%+0.51+0.522026-08-05 → 2026-08-30
tmin00Znearest30d20 1 QC0.96 [0.66, 1.27]0.98-0.11 [-0.66, 0.28]1.25 [0.88, 1.54]60% [36%, 74%]85%100%+0.38+0.372026-08-05 → 2026-08-30
tmin00Znearest90d20 1 QC0.96 [0.65, 1.35]0.98-0.11 [-0.96, 0.22]1.25 [0.88, 1.57]60% [28%, 75%]85%100%+0.38+0.372026-08-05 → 2026-08-30
tmin00Znearest365d20 1 QC0.96 [0.62, 1.35]0.98-0.11 [-0.92, 0.31]1.25 [0.83, 1.59]60% [27%, 75%]85%100%+0.38+0.372026-08-05 → 2026-08-30
tmin00Znearestall20 1 QC0.96 [0.63, 1.35]0.98-0.11 [-1.02, 0.30]1.25 [0.85, 1.57]60% [20%, 75%]85%100%+0.38+0.372026-08-05 → 2026-08-30
tmin12Zbilinear30d21 1 QC0.79 [0.57, 1.08]0.79-0.10 [-0.61, 0.20]1.03 [0.74, 1.29]67% [40%, 79%]90%100%+0.48+0.482026-08-05 → 2026-08-30
tmin12Zbilinear90d21 1 QC0.79 [0.61, 1.14]0.79-0.10 [-0.94, 0.18]1.03 [0.77, 1.34]67% [29%, 78%]90%100%+0.48+0.482026-08-05 → 2026-08-30
tmin12Zbilinear365d21 1 QC0.79 [0.58, 1.12]0.79-0.10 [-0.93, 0.22]1.03 [0.74, 1.34]67% [33%, 79%]90%100%+0.48+0.482026-08-05 → 2026-08-30
tmin12Zbilinearall21 1 QC0.79 [0.59, 1.17]0.79-0.10 [-1.00, 0.17]1.03 [0.74, 1.36]67% [20%, 79%]90%100%+0.48+0.482026-08-05 → 2026-08-30
tmin12Znearest30d21 1 QC0.89 [0.69, 1.20]0.89+0.01 [-0.65, 0.38]1.11 [0.88, 1.39]62% [36%, 72%]95%100%+0.41+0.422026-08-05 → 2026-08-30
tmin12Znearest90d21 1 QC0.89 [0.71, 1.21]0.89+0.01 [-0.95, 0.38]1.11 [0.89, 1.39]62% [28%, 72%]95%100%+0.41+0.422026-08-05 → 2026-08-30
tmin12Znearest365d21 1 QC0.89 [0.68, 1.22]0.89+0.01 [-1.01, 0.40]1.11 [0.86, 1.40]62% [25%, 72%]95%100%+0.41+0.422026-08-05 → 2026-08-30
tmin12Znearestall21 1 QC0.89 [0.69, 1.23]0.89+0.01 [-1.04, 0.39]1.11 [0.87, 1.40]62% [20%, 72%]95%100%+0.41+0.422026-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 ECMWF IFS HRES at KSFO, lead day 4, 00Z bilinear tmax+20+100-10-202026-08-05: -6.16 °F2026-08-11: -10.66 °F2026-08-12: -6.15 °F2026-08-13: -4.45 °F2026-08-14: -3.77 °F2026-08-16: -6.81 °F2026-08-17: -8.22 °F2026-08-18: -5.15 °F2026-08-19: -0.55 °F2026-08-20: -4.71 °F2026-08-21: -2.39 °F2026-08-22: -4.87 °F2026-08-23: -14.61 °F2026-08-24: -9.8 °F2026-08-25: -3.15 °F2026-08-26: -10.03 °F2026-08-27: -5.85 °F2026-08-28: -1.92 °F2026-08-29: -9.68 °F2026-08-30: -7.66 °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.66
2026-08-29-9.68
2026-08-28-1.92
2026-08-27-5.85
2026-08-26-10.03
2026-08-25-3.15
2026-08-24-9.80
2026-08-23-14.61
2026-08-22-4.87
2026-08-21-2.39
2026-08-20-4.71
2026-08-19-0.55
2026-08-18-5.15
2026-08-17-8.22
2026-08-16-6.81
2026-08-15
2026-08-14-3.77
2026-08-13-4.45
2026-08-12-6.15
2026-08-11-10.66
2026-08-10
2026-08-09
2026-08-08
2026-08-07
2026-08-06
2026-08-05-6.16

Error distribution

Distribution of the signed daily error in °F for ECMWF IFS HRES at KSFO, lead day 4-20 to -18 °F: 0 days-18 to -16 °F: 0 days-16 to -14 °F: 1 day-14 to -12 °F: 0 days-12 to -10 °F: 2 days-10 to -8 °F: 3 days-8 to -6 °F: 4 days-6 to -4 °F: 5 days-4 to -2 °F: 3 days-2 to 0 °F: 2 days0 to 2 °F: 0 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| 6 · P90 |e| 10.09 °F-200+20 °Fn = 20 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.001
-14.00-12.000
-12.00-10.002
-10.00-8.003
-8.00-6.004
-6.00-4.005
-4.00-2.003
-2.00+0.002
+0.00+2.000
+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-08206.33 -6.33

Availability

ModelScored period DaysCoverage
ECMWF IFS HRES2026-08-05 → 2026-08-30 20
ECMWF IFS HRES2026-08-05 → 2026-08-30 20
ECMWF IFS HRES2026-08-05 → 2026-08-30 21
ECMWF IFS HRES2026-08-05 → 2026-08-30 21

Compared with other models

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

Other modelCommon days MAE difference °FDistinguishable
ECMWF AIFS Single 20 +1.12 [-0.37, 2.11] no
NCEP GFS 20 +1.44 [0.93, 2.05] yes
GraphCast (IFS init) 19 +0.73 [-0.53, 1.77] no
Persistence (baseline) 20 +2.63 [1.64, 3.49] yes

Cite this page

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

LongCastCheck (2026). Station-level verification of raw weather-model 2 m temperature forecasts: KSFO (San Francisco Intl), model ifs_hres, 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/ifs_hres/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