MODEL PERFORMANCE — PITCHER STRIKEOUTS

The Calibration Ledger

RunsLeft publishes calibrated MLB pitcher strikeout probabilities — and tracks how those probabilities perform. The claim we make is calibration: when the model says a number, how often does that number come true.

Data through 2026-07-10 — the most recent graded slate.

Predicted vs. actual, by probability bucket

Every graded strikeout pick lands in a bucket by the probability the model gave it. Perfect calibration sits on the diagonal: a bucket's actual hit rate matching what the model predicted. 4 of 5 buckets have earned a point so far; the rest stay marked collecting until they reach 100 graded predictions. Buckets short of 100 are never plotted, estimated, or filled in — the curve forms as the sample does.

50%50%60%60%70%70%80%80%90%90%100%100%<55collecting(n=31)55-60: predicted 57.7%, actual 65.5% (n=139)55-60 · n=13960-65: predicted 62.7%, actual 64.4% (n=149)60-65 · n=14965-70: predicted 67.5%, actual 68.5% (n=203)65-70 · n=20370+: predicted 76.4%, actual 75.8% (n=335)70+ · n=335Model-predicted probabilityActual hit rate
Bucket (predicted)Graded nMean predictedActual
<55 31 collecting data (n=31)
55-60 139 57.7% 65.5%
60-65 149 62.7% 64.4%
65-70 203 67.5% 68.5%
70+ 335 76.4% 75.8%
Predictions graded882 857 decided · 0 push · 25 voided
Calibration error2.8 pp mean gap across 4 buckets with n≥100
Brier score0.208 strikeout picks only, this graded set — lower is better
Calibration curve2026-07-04-k-refit fitted 2026-07-04

Rolling graded record

Grouped by the confidence the pick was published with. All windows are measured through 2026-07-10. Past results do not predict future results.

WindowHigh — recordHigh — hit rateMedium — recordMedium — hit rate
Last 7 days from 2026-07-04 81–26 (+2 voided — excluded from the rate) 75.7% 11–10 (+1 voided — excluded from the rate) collecting data (n=21)
Last 30 days from 2026-06-11 320–122 (+17 voided — excluded from the rate) 72.4% 50–29 (+3 voided — excluded from the rate) collecting data (n=79)
Season from 2026-05-27 528–216 (+22 voided — excluded from the rate) 71.0% 75–38 (+3 voided — excluded from the rate) 66.4%

By line tier

Most graded picks ride reduced-payout lines, so a single pooled number would flatter the record. Rates are shown per tier, labeled for what the tier is, and never pooled across tiers.

TierDecidedRecordHit rate
standard line 3 1–2 collecting data (n=3)
goblin — reduced payout 746 538–208 72.1%
demon — boosted payout 1 0–1 collecting data (n=1)
tier unrecovered 107 64–43 59.8%
Monthstandardgoblindemonunrecoveredtier coverage
May 2026 0 117 0 0 100.0%
June 2026 3 510 1 57 90.0%
July 2026 0 119 0 50 70.4%

Line-tier recovered for 87.5% of decided picks.

How often the high-probability spots occur

The model publishes a pick only when a line clears its capture bar — on most slates that is a handful of pitchers, not the whole board. Counts of decided picks this season, by the probability the model assigned:

Predicted probabilityDecided picks
50–60%170
60–70%352
70%+335

Recent evaluated predictions

The last 20 decided picks, newest first — every decided pick in order, never curated, never sorted by result.

DatePitcherLinePredictedResult
2026-07-10 Aaron Nola o5.5 53.9% HIT
2026-07-10 Chris Sale o5.5 53.7% MISS
2026-07-10 Hunter Brown o5.5 58.3% MISS
2026-07-10 Jacob Lopez o1.5 85.6% MISS
2026-07-10 Parker Messick o4.5 63.7% MISS
2026-07-10 Shota Imanaga o5.5 56.1% MISS
2026-07-10 Tanner Gordon o3.5 60.3% MISS
2026-07-09 Andre Pallante o3.5 56.6% MISS
2026-07-09 Anthony Kay o3.5 54.5% HIT
2026-07-09 Bailey Ober o3.5 59.2% HIT
2026-07-09 Bryce Elder o3.5 65.9% MISS
2026-07-09 Carson Whisenhunt o3.5 64.8% HIT
2026-07-09 David Peterson o4.5 57.1% MISS
2026-07-09 Framber Valdez o4.5 59.6% HIT
2026-07-09 Gavin Williams o5.5 58.2% HIT
2026-07-09 Janson Junk o3.5 60.4% HIT
2026-07-09 Nathan Eovaldi o6.5 53.3% HIT
2026-07-09 Patrick Sandoval o4.5 57.8% HIT
2026-07-08 Alan Rangel o4.5 63.9% HIT
2026-07-08 Dean Kremer o4.5 60.4% MISS

How this ledger works

What counts as a pick

Each evening the model snapshots every published strikeout line it likes, with the probability it assigned at capture time. The next morning, each pick is graded against what the pitcher actually did: over the line is a hit, under it is a miss. When a pitcher has more than one graded line for the same night, the ledger keeps the single line the model rated highest and discards the rest, so one start never counts twice.

What calibration means

A calibrated model is one whose numbers mean what they say: gather every pick it rated at some probability, and about that share of them should come true. That is the whole claim this page tracks — the chart above compares what the model predicted with what actually happened, bucket by bucket. It is a different and humbler claim than promising winners.

Why the chart shows the raw model probability

The model produces a raw probability, and a calibration layer adjusts it before publication. Stamping the calibrated number into the graded ledger only began on July 4, 2026, so it covers just a small share of the graded history. Mixing the two numbers into one chart would be dishonest, so the historical view is built on the raw probability every pick has carried since day one. A calibrated view will be added alongside it once enough stamped picks have graded — the raw view will not be silently swapped out.

Pushes, voids, and scratches

A push (the pitcher lands exactly on a whole-number line) and a void (the pitcher never played) are counted and shown, but excluded from every hit-rate denominator. Scratches are also handled at the source: when a pitcher is confirmed out after the evening snapshot, the capture is removed before grading and swept again at the nightly backfill, and each removal is copied to an audit table — so the graded set reflects picks that could actually have been played, and the removals stay reviewable.

The tier mix

Most of the graded sample rides reduced-payout ("goblin") lines, which are easier to hit by construction. A single pooled hit rate over that mix would look better than it is — which is why every rate on this page is segmented by tier and labeled, and why no pooled number appears anywhere.

How the windows work

Every table on this page is a rolling window measured through the most recent graded slate — nothing is a frozen, cherry-picked span. Any cell still short of 100 graded picks says "collecting data" instead of quoting a rate that small samples would make noisy.