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 Antonio Intl · NCEP GFS · lead day 0

KSAT · gfs · 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, 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
tmax00Zbilinear30d30 1 QC2.11 [1.56, 2.64]1.27-1.97 [-2.60, -1.32]2.55 [1.83, 3.11]27% [13%, 37%]60%73%2026-08-01 → 2026-08-30
tmax00Zbilinear90d30 1 QC2.11 [1.47, 2.89]1.27-1.97 [-2.85, -1.23]2.55 [1.70, 3.34]27% [11%, 41%]60%73%2026-08-01 → 2026-08-30
tmax00Zbilinear365d30 1 QC2.11 [1.41, 2.92]1.27-1.97 [-2.89, -1.16]2.55 [1.61, 3.35]27% [10%, 42%]60%73%2026-08-01 → 2026-08-30
tmax00Zbilinearall30 1 QC2.11 [1.41, 2.87]1.27-1.97 [-2.85, -1.19]2.55 [1.64, 3.30]27% [11%, 41%]60%73%2026-08-01 → 2026-08-30
tmax00Znearest30d30 1 QC1.99 [1.46, 2.50]1.32-1.80 [-2.43, -1.15]2.43 [1.74, 2.96]37% [23%, 53%]63%77%2026-08-01 → 2026-08-30
tmax00Znearest90d30 1 QC1.99 [1.37, 2.70]1.32-1.80 [-2.67, -1.07]2.43 [1.60, 3.15]37% [17%, 54%]63%77%2026-08-01 → 2026-08-30
tmax00Znearest365d30 1 QC1.99 [1.32, 2.73]1.32-1.80 [-2.70, -1.00]2.43 [1.54, 3.15]37% [15%, 57%]63%77%2026-08-01 → 2026-08-30
tmax00Znearestall30 1 QC1.99 [1.35, 2.71]1.32-1.80 [-2.65, -1.05]2.43 [1.56, 3.14]37% [18%, 56%]63%77%2026-08-01 → 2026-08-30
tmin00Zbilinear30d30 1 QC1.69 [1.44, 1.96]1.65-0.14 [-1.34, 1.04]2.08 [1.72, 2.46]37% [23%, 50%]67%87%2026-08-01 → 2026-08-30
tmin00Zbilinear90d30 1 QC1.69 [1.43, 1.99]1.65-0.14 [-1.35, 1.21]2.08 [1.66, 2.54]37% [22%, 50%]67%87%2026-08-01 → 2026-08-30
tmin00Zbilinear365d30 1 QC1.69 [1.40, 2.01]1.65-0.14 [-1.47, 1.27]2.08 [1.65, 2.57]37% [21%, 52%]67%87%2026-08-01 → 2026-08-30
tmin00Zbilinearall30 1 QC1.69 [1.41, 1.96]1.65-0.14 [-1.36, 1.23]2.08 [1.66, 2.49]37% [21%, 53%]67%87%2026-08-01 → 2026-08-30
tmin00Znearest30d30 1 QC1.63 [1.27, 2.01]1.69+0.32 [-0.92, 1.51]2.14 [1.54, 2.69]37% [23%, 50%]77%87%2026-08-01 → 2026-08-30
tmin00Znearest90d30 1 QC1.63 [1.23, 2.08]1.69+0.32 [-0.94, 1.69]2.14 [1.44, 2.78]37% [25%, 51%]77%87%2026-08-01 → 2026-08-30
tmin00Znearest365d30 1 QC1.63 [1.22, 2.15]1.69+0.32 [-1.09, 1.75]2.14 [1.45, 2.83]37% [24%, 50%]77%87%2026-08-01 → 2026-08-30
tmin00Znearestall30 1 QC1.63 [1.22, 2.04]1.69+0.32 [-0.94, 1.69]2.14 [1.45, 2.71]37% [25%, 52%]77%87%2026-08-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 NCEP GFS at KSAT, lead day 0, 00Z bilinear tmax+10+50-5-102026-08-01: -1.84 °F2026-08-02: +0.51 °F2026-08-03: -0.45 °F2026-08-04: -2.34 °F2026-08-05: -1.6 °F2026-08-06: -0.37 °F2026-08-07: -3.82 °F2026-08-08: -2.36 °F2026-08-09: -4.38 °F2026-08-10: -4.54 °F2026-08-11: -1.71 °F2026-08-12: -1.28 °F2026-08-13: -3.85 °F2026-08-14: -2.59 °F2026-08-15: -1.91 °F2026-08-16: +0.96 °F2026-08-17: +0.57 °F2026-08-18: -1.12 °F2026-08-19: -3.06 °F2026-08-20: -1.15 °F2026-08-21: -0.9 °F2026-08-22: -2.1 °F2026-08-23: -1.15 °F2026-08-24: -1.5 °F2026-08-25: -0.83 °F2026-08-26: -0.73 °F2026-08-27: -3.06 °F2026-08-28: -4.8 °F2026-08-29: -5.89 °F2026-08-30: -1.87 °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-1.87
2026-08-29-5.89
2026-08-28-4.80
2026-08-27-3.06
2026-08-26-0.73
2026-08-25-0.83
2026-08-24-1.50
2026-08-23-1.15
2026-08-22-2.10
2026-08-21-0.90
2026-08-20-1.15
2026-08-19-3.06
2026-08-18-1.12
2026-08-17+0.57
2026-08-16+0.96
2026-08-15-1.91
2026-08-14-2.59
2026-08-13-3.85
2026-08-12-1.28
2026-08-11-1.71
2026-08-10-4.54
2026-08-09-4.38
2026-08-08-2.36
2026-08-07-3.82
2026-08-06-0.37
2026-08-05-1.60
2026-08-04-2.34
2026-08-03-0.45
2026-08-02+0.51
2026-08-01-1.84

Error distribution

Distribution of the signed daily error in °F for NCEP GFS at KSAT, lead day 0-10 to -9 °F: 0 days-9 to -8 °F: 0 days-8 to -7 °F: 0 days-7 to -6 °F: 0 days-6 to -5 °F: 1 day-5 to -4 °F: 3 days-4 to -3 °F: 4 days-3 to -2 °F: 4 days-2 to -1 °F: 10 days-1 to 0 °F: 5 days0 to 1 °F: 3 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| 1.77 · P90 |e| 4.4 °F-100+10 °Fn = 30 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.000
-9.00-8.000
-8.00-7.000
-7.00-6.000
-6.00-5.001
-5.00-4.003
-4.00-3.004
-3.00-2.004
-2.00-1.0010
-1.00+0.005
+0.00+1.003
+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-08302.11 -1.97

Availability

ModelScored period DaysCoverage
NCEP GFS2026-08-01 → 2026-08-30 30
NCEP GFS2026-08-01 → 2026-08-30 30

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 30 -1.08 [-1.89, -0.35] yes
Aurora (GFS init) 2 -3.45 [-3.55, -3.36] yes
Aurora (IFS init) 3 -2.10 [-2.60, -1.85] yes
FourCastNet v2 (GFS init) 2 -0.47 [-0.88, -0.06] yes
FourCastNet v2 (IFS init) 3 -0.03 [-1.37, 0.64] no
GraphCast (GFS init) 2 -2.80 [-3.26, -2.34] yes
GraphCast (IFS init) 28 -3.33 [-3.78, -2.73] yes
ECMWF IFS HRES 24 -0.98 [-1.47, -0.18] yes
Pangu-Weather (GFS init) 2 +0.84 [-0.79, 2.48] no
Pangu-Weather (IFS init) 3 +1.46 [-0.46, 2.42] no

Cite this page

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

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