Full history · nothing hidden

Track record

Margin-adjusted Elo, fundamentals only (final scores; the line is never an input). Walk-forward: every prediction made before learning the result.

2026 season — livegrading in progress

This season’s picks, graded as games go final. Nothing hidden, nothing rewritten.

15-24-2
38%
Against the spread, 2026
14-13-0
52%
Over/under, 2026
1-1-0
50%
Parlay of the week, 2026

Week 7 · partial

Parlay:Under 42.5 · Over 47.5 · Under 38.5—
GameScoreSpread pickATSO/U pickO/U
NE @ CHICHI -3—NE +3 (50%)—Under 50.5 (51%)—
PIT @ NOPIT -3.5—NO +3.5 (50%)—Under 44.5 (51%)—
SF @ ATLSF -3.5—ATL +3.5 (50%)—No play—
CIN @ BALBAL -2.5—CIN +2.5 (50%)—No play—
TB @ CARCAR -3.5—CAR -3.5 (50%)—Under 44.5 (51%)—
NYG @ HOUHOU -10—HOU -10 (50%)—Under 42.5 (51%)—
IND @ MINMIN -6.5—MIN -6.5 (50%)—No play—
MIA @ NYJNYJ -4.5—MIA +4.5 (50%)—No play—
CLE @ TENCLE -1.5—CLE -1.5 (50%)—Under 38.5 (52%)—
DEN @ ARIDEN -4.5—DEN -4.5 (50%)—No play—
GB @ DETDET -3—GB +3 (50%)—No play—
LA @ LVLA -4.5—LA -4.5 (50%)—Over 47.5 (53%)—
KC @ SEASEA -2.5—SEA -2.5 (50%)—Under 42.5 (53%)—
DAL @ PHIDAL -4.5—PHI +4.5 (50%)—Over 44.5 (52%)—

Week 6

Parlay:Over 50.5 · Under 40.5 · Under 40.5—
GameScoreSpread pickATSO/U pickO/U
SEA @ DENSEA -2.514-17SEA -2.5 (50%)lossNo play—
HOU @ JAXJAX -2.534-31JAX -2.5 (50%)lossUnder 42.5 (50%)loss
CHI @ ATLCHI -1.531-23ATL +1.5 (50%)lossOver 51.5 (51%)win
BAL @ CLEBAL -3.510-13BAL -3.5 (50%)lossUnder 40.5 (51%)win
TEN @ INDIND -726-20No play—Over 44.5 (51%)win
NYJ @ NENE -7.519-26NE -7.5 (50%)lossUnder 43.5 (53%)loss
NO @ NYGNO -1.534-27NYG +1.5 (50%)lossNo play—
CAR @ PHICAR -3.525-14PHI +3.5 (50%)lossNo play—
PIT @ TBPIT -2.526-19TB +2.5 (50%)lossNo play—
ARI @ LALA -12.518-16LA -12.5 (50%)lossNo play—
LAC @ KCKC -7.56-22LAC +7.5 (50%)lossNo play—
BUF @ LVBUF -5.533-30BUF -5.5 (50%)lossOver 53.5 (50%)win
DAL @ GBGB -1.513-23GB -1.5 (50%)winNo play—
WAS @ SFSF -7.517-23SF -7.5 (50%)lossOver 51.5 (50%)loss

Week 5

Parlay:Under 41.5 · Under 39.5 · Over 43.5win
GameScoreSpread pickATSO/U pickO/U
TB @ DALDAL -9.524-16TB +9.5 (50%)winNo play—
PHI @ JAXJAX -7.517-19JAX -7.5 (50%)lossUnder 41.5 (51%)win
CHI @ GBCHI -1.57-31CHI -1.5 (50%)lossNo play—
CIN @ MIACIN -731-24CIN -7 (50%)pushNo play—
LV @ NENE -3.517-45NE -3.5 (50%)winNo play—
MIN @ NOMIN -2.523-13MIN -2.5 (50%)winNo play—
CLE @ NYJNYJ -2.512-17CLE +2.5 (50%)lossUnder 39.5 (50%)win
IND @ PITPIT -322-34IND +3 (50%)lossOver 43.5 (51%)win
HOU @ TENHOU -726-3HOU -7 (50%)winNo play—
NYG @ WASWAS -3.527-27NYG +3.5 (50%)winOver 41.5 (50%)win
DEN @ LACDEN -3.523-17No play—No play—
DET @ ARIDET -5.545-21ARI +5.5 (50%)lossOver 54.5 (52%)win
SF @ SEASEA -332-29SEA -3 (50%)lossNo play—
BAL @ ATLATL -3.530-23BAL +3.5 (50%)winNo play—
BUF @ LALA -337-34LA -3 (50%)lossNo play—

Week 4

Parlay:CHI -3.5 · Under 42.5 · Under 47.5loss
GameScoreSpread pickATSO/U pickO/U
PIT @ CLEPIT -2.524-27No play—Under 38.5 (80%)loss
IND @ WASIND -3.530-13IND -3.5 (61%)winOver 47.5 (86%)loss
TEN @ BALBAL -11.518-24BAL -11.5 (60%)lossOver 42.5 (67%)loss
NE @ BUFBUF -6.529-26NE +6.5 (65%)winOver 48.5 (68%)win
NYJ @ CHICHI -3.512-23CHI -3.5 (90%)winOver 43.5 (76%)loss
JAX @ CINCIN -2.522-17JAX +2.5 (84%)winOver 51.5 (64%)loss
DAL @ HOUHOU -334-30HOU -3 (79%)lossOver 48.5 (56%)win
ARI @ NYGARI -2.524-36NYG +2.5 (65%)winOver 44.5 (78%)win
LA @ PHILA -324-20LA -3 (67%)winOver 43.5 (57%)win
GB @ TBGB -3.517-14TB +3.5 (55%)winOver 38.5 (84%)loss
MIA @ MINMIN -10.510-15MIA +10.5 (54%)winUnder 38.5 (65%)win
KC @ LVKC -4.530-27KC -4.5 (76%)lossUnder 47.5 (87%)loss
LAC @ SEASEA -723-30SEA -7 (83%)pushUnder 42.5 (88%)loss
DEN @ SFSF -314-24DEN +3 (61%)lossOver 47.5 (70%)loss
DET @ CARDET -3.526-32DET -3.5 (54%)lossNo play—
ATL @ NONO -2.545-24No play—Under 47.5 (84%)loss

Historical backtest

45 seasons of walk-forward predictions from our earlier Elo model — the predecessor to today's EPA ratings — graded against actual final scores.

45
Seasons backtested
11,352
Games
64%
Straight-up
3738-3436-201 · 52%
ATS (≥1.5pt edge)

ATS by decade — the edge decays

The model beats bad lines from weak eras. Against the modern market, it does not. The dashed line is 52.4% — break-even against standard -110 vig.

1980s
54%
1990s
51%
2000s
52%
2010s
52%
2020s
51%
DecadeRecordWin %Our RMSELine RMSE
1980s677-580-2754%13.9713.80
1990s813-768-4751%13.4013.04
2000s895-827-4352%13.8613.46
2010s881-803-5252%13.6613.29
2020s472-458-3251%13.2512.72

52.4% is break-even against standard -110 vig. Green = profitable, red = not.

Season by season

Every season the model was tested on. Green ATS seasons beat the vig; the rest didn’t.

SeasonGamesStraight-upOur RMSELine RMSEATS recordATS %
202428566%13.3712.6985-95-747%
202328561%13.6013.2689-83-952%
202228462%11.9711.4697-97-650%
202128559%14.1213.5599-98-450%
202026962%13.1712.65102-85-655%
201926765%13.6813.0593-88-851%
201826764%13.3813.0093-75-655%
201726766%13.8513.2789-84-651%
201626762%12.0511.7476-95-344%
201526765%13.2413.0495-71-657%
201426769%14.4814.4284-67-456%
201326764%13.3112.9095-89-852%
201226762%14.4213.9285-78-352%
201126766%14.0513.6794-77-755%
201026764%14.1213.8577-79-149%
200926769%14.9514.33100-91-452%
200826763%14.1313.9093-84-453%
200726762%13.9813.3792-84-252%
200626760%13.5513.4694-67-458%
200526767%13.7913.0470-106-640%
200426762%13.4212.8992-91-350%
200326765%13.9613.5081-81-550%
200226761%13.6413.5190-66-458%
200125962%13.4313.1186-79-652%
200025961%13.7813.4597-78-555%
199925963%13.8513.3091-79-954%
199825169%12.9312.1973-89-645%
199725162%13.4913.2983-74-653%
199625165%13.2713.0187-75-454%
199525165%12.6512.5995-77-455%
199423560%12.6812.3573-69-451%
199323562%13.4713.1584-72-554%
199223571%14.3814.2390-79-053%
199123570%13.1112.5666-74-347%
199023567%14.2413.7871-80-647%
198923365%14.0013.7772-64-253%
198823363%14.2514.0773-67-152%
198717760%14.1614.1763-48-357%
198623368%14.1113.9184-62-258%
198523368%13.9713.7158-72-445%
198423367%14.1013.6362-66-248%
198323357%13.9814.1061-47-156%
198214160%12.9212.9741-31-057%
198123358%14.1214.0566-53-355%
198023360%13.7113.3797-70-958%