The honesty page · backtest evidence 2026-10-09

Most sites show confidence. We show receipts.

Calibration is the only thing a probability claim has to be: when we publish 55%, does it hit 55%? On every plot below, published probability runs along the bottom and actual hit rate up the side. Perfect calibration is the dashed diagonal.

Our raw models sat far off it — a published 77% was hitting 45%. The gap between our number and the Vegas line turned out to be mostly our error, not our insight. So on 2026-10-09 we replaced the textbook formula with an empirical calibration: every published probability now runs through the actual hit rates from that model’s own walk-forward backtest. A number we publish as 55% is a number that hit about 55% in testing.

The curves cluster near 50% because that’s the honest answer. The models barely beat a coin flip against the line, and we say so — right here, in public, with the bins anyone can re-derive.

How to read this page
  • Circles are backtest bins, sized by picks. Emerald line is the fitted recalibration curve — what we actually publish now.
  • Emerald diamonds are this season’s live receipts, computed in your browser from the graded picks as games go final. Hollow diamonds are small samples (n < 30) — shown, not hidden.
  • “Graded picks in bins” means picks that fell into the published-probability bins — pushes and below-threshold exclusions omitted. It is not total walk-forward games.
NFL · calibration

NFL

EPA ratings, walk-forward — the live model, not the legacy 45-season Elo table.

Against the spread

The verdict: Severely overconfident — a published 77% hit 45%.

991 graded picks in bins · Walk-forward 2021–2024, EPA model

25%25%30%30%35%35%40%40%45%45%50%50%55%55%60%60%65%65%70%70%75%75%80%80%perfect calibrationBacktest 50–55%: published 53%, hit 43% (n=196)Backtest 55–60%: published 57%, hit 49% (n=214)Backtest 60–65%: published 62%, hit 50% (n=210)Backtest 65–70%: published 67%, hit 50% (n=137)Backtest 70%+: published 78%, hit 45% (n=234)This season 50–51%: published 50%, hit 27% (n=26) — small sampleThis season 53%+: published 67%, hit 62% (n=13) — small samplePublished probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
50–55%53%43%196
55–60%57%49%214
60–65%62%50%210
65–70%67%50%137
70%+78%45%234
2026 season · live
BinPublishedActualn
50–51%small sample50%27%26
53%+small sample67%62%13

Totals

The verdict: Overconfident — 65–70% publishes at 66%, hits 48%.

574 graded picks in bins · Walk-forward 2021–2024, EPA model

30%30%35%35%40%40%45%45%50%50%55%55%60%60%65%65%70%70%75%75%80%80%85%85%90%90%95%95%100%100%perfect calibrationBacktest 50–55%: published 54%, hit 51% (n=96)Backtest 55–60%: published 57%, hit 51% (n=192)Backtest 60–65%: published 62%, hit 53% (n=180)Backtest 65–70%: published 66%, hit 48% (n=106)This season 50–51%: published 50%, hit 67% (n=6) — small sampleThis season 51–52%: published 51%, hit 100% (n=5) — small sampleThis season 53%+: published 73%, hit 31% (n=16) — small samplePublished probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
50–55%54%51%96
55–60%57%51%192
60–65%62%53%180
65–70%66%48%106
2026 season · live
BinPublishedActualn
50–51%small sample50%67%6
51–52%small sample51%100%5
53%+small sample73%31%16
College Football · calibration

College Football

PPA-based ratings, 13 seasons of walk-forward history.

Against the spread

The verdict: Severely overconfident — the 70%+ bin (n=2,284) hits 49.7%.

8,606 graded picks in bins · Walk-forward 2014–2026, PPA model

45%45%50%50%55%55%60%60%65%65%70%70%75%75%80%80%perfect calibrationBacktest 50–55%: published 53%, hit 50% (n=1,552)Backtest 55–60%: published 57%, hit 51% (n=1,871)Backtest 60–65%: published 62%, hit 51% (n=1,643)Backtest 65–70%: published 68%, hit 47% (n=1,256)Backtest 70%+: published 78%, hit 50% (n=2,284)This season 50–51%: published 50%, hit 62% (n=45)This season 51–52%: published 51%, hit 67% (n=6) — small sampleThis season 52–53%: published 52%, hit 50% (n=4) — small sampleThis season 53%+: published 71%, hit 47% (n=47)Published probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
50–55%53%50%1,552
55–60%57%51%1,871
60–65%62%51%1,643
65–70%68%47%1,256
70%+78%50%2,284
2026 season · live
BinPublishedActualn
50–51%50%62%45
51–52%small sample51%67%6
52–53%small sample52%50%4
53%+71%47%47

Totals

The verdict: Overconfident — recalibration slope 0.30, still far below 1.

5,133 graded picks in bins · Walk-forward 2014–2026, PPA model

25%25%30%30%35%35%40%40%45%45%50%50%55%55%60%60%65%65%70%70%perfect calibrationBacktest 50–55%: published 54%, hit 49% (n=1,065)Backtest 55–60%: published 57%, hit 51% (n=1,790)Backtest 60–65%: published 62%, hit 52% (n=1,560)Backtest 65–70%: published 66%, hit 53% (n=718)This season 50–51%: published 50%, hit 25% (n=12) — small sampleThis season 51–52%: published 51%, hit 50% (n=6) — small sampleThis season 52–53%: published 52%, hit 33% (n=12) — small sampleThis season 53%+: published 69%, hit 46% (n=48)Published probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
50–55%54%49%1,065
55–60%57%51%1,790
60–65%62%52%1,560
65–70%66%53%718
2026 season · live
BinPublishedActualn
50–51%small sample50%25%12
51–52%small sample51%50%6
52–53%small sample52%33%12
53%+69%46%48
NBA · calibration

NBA

Margin-adjusted Elo with efficiency totals and rest-day adjustment.

Against the spread

The verdict: Severely overconfident — slope ≈ 0; 70%+ is a coin flip.

15,678 graded picks in bins · Walk-forward 2008–2023, rest-adjusted model

45%45%50%50%55%55%60%60%65%65%70%70%75%75%80%80%85%85%90%90%95%95%100%100%perfect calibrationBacktest 50–55%: published 53%, hit 51% (n=5,161)Backtest 55–60%: published 57%, hit 50% (n=5,478)Backtest 60–65%: published 62%, hit 50% (n=3,011)Backtest 65–70%: published 67%, hit 52% (n=1,270)Backtest 70%+: published 74%, hit 51% (n=758)This season 50–51%: published 50%, hit 100% (n=2) — small samplePublished probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
50–55%53%51%5,161
55–60%57%50%5,478
60–65%62%50%3,011
65–70%67%52%1,270
70%+74%51%758
2027 season · live
BinPublishedActualn
50–51%small sample50%100%2

Totals

Not published — pulled

We no longer publish NBA totals. The 18,552-game walk-forward below has them at 48.3% — worse than a coin flip — so we’d rather show nothing than a losing pick. The plot and bins stay up as the receipt for why.

The verdict: Severely overconfident — slope negative.

13,717 graded picks in bins · Walk-forward 2008–2023, rest-adjusted model

45%45%50%50%55%55%60%60%65%65%70%70%perfect calibrationBacktest 50–55%: published 54%, hit 50% (n=4,382)Backtest 55–60%: published 57%, hit 49% (n=5,698)Backtest 60–65%: published 62%, hit 48% (n=2,852)Backtest 65–70%: published 66%, hit 50% (n=785)Published probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
50–55%54%50%4,382
55–60%57%49%5,698
60–65%62%48%2,852
65–70%66%50%785
2027 season · live
No graded picks yet — check back as this season’s games go final.
College Basketball · calibration

College Basketball

Efficiency ratings, walk-forward across 2013–2021 and 2025–2026.

Against the spread

The verdict: Severely overconfident — a raw 79% recalibrates to ~50%.

34,449 graded picks in bins · Walk-forward 2013–2021 + 2025–2026, efficiency model

45%45%50%50%55%55%60%60%65%65%70%70%75%75%80%80%perfect calibrationBacktest 50–55%: published 55%, hit 48% (n=436)Backtest 55–60%: published 57%, hit 49% (n=11,736)Backtest 60–65%: published 62%, hit 50% (n=8,830)Backtest 65–70%: published 67%, hit 49% (n=5,444)Backtest 70%+: published 79%, hit 50% (n=8,003)Published probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
50–55%55%48%436
55–60%57%49%11,736
60–65%62%50%8,830
65–70%67%49%5,444
70%+79%50%8,003
2027 season · live
No graded picks yet — check back as this season’s games go final.

Totals

The verdict: Overconfident — empirical hit rates sit at ~50–52% in every bin.

30,383 graded picks in bins · Walk-forward 2013–2021 + 2025–2026, efficiency model

45%45%50%50%55%55%60%60%65%65%70%70%75%75%80%80%perfect calibrationBacktest 55–60%: published 58%, hit 51% (n=8,005)Backtest 60–65%: published 62%, hit 51% (n=8,787)Backtest 65–70%: published 67%, hit 50% (n=6,012)Backtest 70%+: published 77%, hit 52% (n=7,579)Published probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
55–60%58%51%8,005
60–65%62%51%8,787
65–70%67%50%6,012
70%+77%52%7,579
2027 season · live
No graded picks yet — check back as this season’s games go final.
MLB · calibration

MLB

Park-adjusted runs ratings with a Normal-CDF win probability. Already honest — no recalibration needed.

The contrast: already honest

Baseball is the one sport where the textbook formula survived contact with reality. A published 57% won 57%; the bins sit on the diagonal with no fitted curve needed. Its Brier score (0.2456 vs the closing line’s 0.2402) still says the line is sharper — but at least the probabilities mean what they claim. Every other sport on this site needed recalibration to earn that sentence.

Moneyline

The verdict: Roughly calibrated — the exception; slight tilt favoring underdogs.

22,765 graded picks in bins · Walk-forward 2012–2021, runs model · no recalibration curve — the raw model was already honest

30%30%35%35%40%40%45%45%50%50%55%55%60%60%65%65%70%70%perfect calibrationBacktest <35%: published 30%, hit 35% (n=976)Backtest 35–40%: published 38%, hit 45% (n=1,446)Backtest 40–45%: published 43%, hit 49% (n=2,908)Backtest 45–50%: published 48%, hit 51% (n=4,724)Backtest 50–55%: published 52%, hit 54% (n=5,123)Backtest 55–60%: published 57%, hit 57% (n=3,929)Backtest 60–65%: published 62%, hit 62% (n=2,204)Backtest 65%+: published 69%, hit 66% (n=1,455)Published probabilityActual hit rate
Perfect calibrationBacktest bin (size = picks)Fitted calibration curveThis season (live)Small sample (n < 30)
Backtest
BinPublishedActualn
<35%30%35%976
35–40%38%45%1,446
40–45%43%49%2,908
45–50%48%51%4,724
50–55%52%54%5,123
55–60%57%57%3,929
60–65%62%62%2,204
65%+69%66%1,455
2027 season · live
No graded picks yet — check back as this season’s games go final.

Published probabilities switched to the recalibrated scale on 2026-10-09. Weeks generated before that (NFL week 4, CFB weeks 5–6) show the old formula’s numbers — they’re still in the live bins, because deleting bad history would be the opposite of the point. The backtest tables, the code, and the grading crons are all in the repo. Audit us.