
Win probability
Game Prediction Model
- 20seasons of data2006–2025
- 5,133games trained on4,166 more held back for testing
- 64.7%called correctlyon games the model never saw
- ±2.1points of calibration driftwhen it says 70%, it happens about 70% of the time
A quarter of NFL games come down to a field goal, which is the ceiling every forecaster runs into. Predicting every game decided by more than a touchdown perfectly, and coin-flipping the rest, would still only reach 76.3%. Across 5,133 games, 2006–2025.
How this is worked out
Calibrated Logistic Regression (core + market features), trained on 5,133 games from 2006–2025 and tested on 4,166 it never saw. Form is a 10-game exponentially weighted, shifted 1 game, so a team is described by how it has been playing rather than by the season average.
| Forecaster | Accuracy | Log loss | Calibration |
|---|---|---|---|
| The betting market best | 66.7% | 0.6078 | n/a |
| This model | 64.7% | 0.6280 | ±2.1 pts |
| Always pick the home team | 56.0% | 0.6859 | n/a |
Lower log loss is better. It rewards being confident and right, and punishes being confident and wrong. The market wins on both measures, and the page does not pretend otherwise. What the model does have is calibration: its stated probabilities land within about 2.1 points of what actually happens, so a 70% here means close to 70%. That is the property worth using, and it improved sharply when the training window widened to 2006.
- 01Team-game panelEvery team-game since 1999 is assembled with its own offense and, mirrored from the opponent, its defense.
- 02Rolling formEach metric is smoothed with a 10-game exponentially weighted average so recent games matter more than old ones.
- 03Leakage guardEvery rolling feature is shifted one game before smoothing, so a prediction for a game can only ever use games played before it.
- 04Matchup interactionsA team's offensive EPA is paired against the specific defense it faces, rather than compared to league average.
- 05Situational contextRest days, bye weeks, injuries, venue, weather and the opponent's base defensive front are encoded as categorical inputs.
- 06Walk-forward validationThe model is only ever tested on seasons later than the ones it trained on, never a random split.
- Expected Points Added per play
- Passing efficiency
- Rushing efficiency
- Completion % Over Expected
- Drive-sustaining rate
- Sacks taken per dropback
- Giveaways per play
- Position-weighted availability score
- 20+ yard completions per attempt
The injury score has no values for an upcoming slate, because reports are not published this far out, which is why that metric shows an empty state on each game. These are completed games, kept so the measure means something concrete. They are history, not predictions, and are not part of any forecast on this site.
| Game | Injury score | Gap | Final margin |
|---|---|---|---|
| CARatDEN2024 wk 8 | 10.0 / 0.5 | CAR worse off | DEN by 14 |
| NYJatJAX2025 wk 15 | 10.0 / 0.5 | NYJ worse off · QB out | JAX by 28 |
| KCatDEN2024 wk 18 | 10.2 / 0.7 | KC worse off | DEN by 38 |
Three games is an illustration, not evidence. The weights behind the score are fitted across thousands: a quarterback absence costs roughly 2.6 points of margin and a skill-position absence 0.7, while line, linebacker and secondary absences came back indistinguishable from zero.
Margins are not a smooth curve. A field goal and a touchdown are the units the game is scored in, so games pile up on those numbers and thin out between them. Three points alone accounts for 14.6% of all games, more than three times either neighbor, while nine points, a margin no combination of scores lands on naturally, happens in 1.7%.
- 2 pts4.3%
- 3 pts14.6%
- 4 pts5.1%
- 6 pts6.5%
- 7 pts8.8%
- 8 pts3.8%
- 9 pts1.7%
- 10 pts5.2%
This explains why so many games finish close. It does not, on its own, help predict who wins them.
The head-to-head chart on a game page shows nine metrics, which can read as though nine numbers decide the forecast. They do not. Here is the whole input list, grouped.
Every feature the shipped model fits on, grouped. The head-to-head chart on a game page shows a readable subset; this is the whole input list. Wider feature sets were tested and scored worse: 202 features reached 61.2% and 455 reached 62.8%, against 63.2% for this one.
Recent results2
- Point differential
- Team win rate
Offensive efficiency10
- Offensive CPOE
- Offensive EPA per dropback
- Offensive EPA per play
- Offensive EPA per rush
- Offensive explosive pass rate
- Offensive penalty yards per play
- Offensive pressure rate allowed
- Offensive sack rate
- Offensive success rate
- Offensive turnover rate
Defensive efficiency9
- Defensive CPOE allowed
- Defensive EPA per dropback allowed
- Defensive EPA per play allowed
- Defensive EPA per rush allowed
- Defensive pressure proxy rate
- Defensive pressure rate
- Defensive sack rate
- Defensive success rate allowed
- Defensive takeaway rate
Matchup interactions4
- CPOE matchup
- Overall matchup
- Pass matchup
- Rush matchup
Quarterback1
- Team QBR
Availability3
- Away injury qb out
- Injury impact
- Home injury qb out
Defensive front5
- Away front 3 4
- Away front 4 3
- Front score
- Home front 3 4
- Home front 4 3
Rest and schedule5
- Away offensive bye
- Away short week
- Home offensive bye
- Home short week
- Rest advantage
Conditions8
- Roof closed
- Roof dome
- Roof open
- Roof outdoors
- Surface grass
- Surface turf
- Temp f
- Wind mph
Market lines3
- Market home implied prob
- Spread line
- Total line
Game context5
- Home field
- Divisional game
- Is neutral site
- Is postseason
- Week num
- Point differential
- Overall matchup
- Team win rate
- Offensive EPA per play
- Pass matchup
- Offensive EPA per dropback
- Offensive success rate
- INJ impact
- Team QBR
- Defensive pressure rate
- Home INJ QB out
- Offensive sack rate
Point differential and win rate dominate, which is worth knowing: most of what the model does is notice which team has been better lately. The efficiency terms refine that rather than replace it. Only the twelve heaviest are published, so a metric missing from this list is unranked rather than proven unimportant.
Validation: walk-forward by season (train on all prior seasons, test on the next). Source: nflverse team-week aggregates, PFR advanced stats, ESPN QBR, injury reports.
Calibrated Logistic Regression (core + market features) · walk-forward by season (train on all prior seasons, test on the next)