Game quality
How well each team played, beyond the score: EPA (expected points added) per play, adjusted for the opponent. A big day against a bad defence counts for less. Season views include playoff games.
Teams, 2024
Per-game averages. Expected wins sums each game's win expectancy, so wins minus expected is mostly luck. Click a column to sort.
| Team | Record | Adj off EPA | Adj def EPA | Adj margin | Raw margin | Expected wins | Wins − expected | Avg vs line | Turnover diff |
|---|---|---|---|---|---|---|---|---|---|
| BAL | 13–6 | +0.241 | -0.039 | +0.280 | +0.267 | 15.6 | -2.6 | +2.9 | +3 |
| PHI | 18–3 | +0.106 | -0.125 | +0.231 | +0.238 | 16.3 | +1.7 | +6.8 | +23 |
| DET | 15–3 | +0.169 | -0.056 | +0.225 | +0.211 | 14.0 | +1.0 | +6.0 | +4 |
| BUF | 15–5 | +0.201 | +0.000 | +0.201 | +0.187 | 14.3 | +0.7 | +5.5 | +26 |
| GB | 11–7 | +0.085 | -0.087 | +0.172 | +0.150 | 12.8 | -1.8 | +3.8 | +8 |
| DEN | 10–8 | +0.011 | -0.096 | +0.107 | +0.111 | 10.3 | -0.3 | +5.4 | +5 |
| TB | 10–8 | +0.117 | +0.012 | +0.105 | +0.107 | 10.8 | -0.8 | +4.7 | -8 |
| WAS | 14–6 | +0.134 | +0.034 | +0.100 | +0.097 | 12.9 | +1.1 | +3.5 | +4 |
| MIN | 14–4 | -0.003 | -0.094 | +0.090 | +0.089 | 11.7 | +2.3 | +2.4 | +9 |
| KC | 17–3 | +0.061 | +0.015 | +0.046 | +0.026 | 12.2 | +4.8 | -1.8 | +2 |
| LAC | 11–7 | -0.013 | -0.053 | +0.040 | +0.056 | 10.0 | +1.0 | +2.6 | +13 |
| CIN | 9–8 | +0.090 | +0.064 | +0.026 | +0.041 | 9.5 | -0.5 | -1.0 | +4 |
| SF | 6–11 | +0.055 | +0.029 | +0.026 | +0.016 | 8.9 | -2.9 | -5.2 | -8 |
| ARI | 8–9 | +0.061 | +0.035 | +0.025 | +0.015 | 8.8 | -0.8 | +2.1 | -5 |
| HOU | 11–8 | -0.058 | -0.078 | +0.020 | +0.020 | 10.2 | +0.8 | -0.3 | +10 |
| LA | 11–8 | +0.024 | +0.017 | +0.007 | -0.016 | 10.1 | +0.9 | +0.6 | +5 |
| PIT | 10–8 | -0.018 | -0.012 | -0.006 | -0.019 | 8.9 | +1.1 | +1.7 | +13 |
| SEA | 10–7 | -0.033 | -0.021 | -0.013 | -0.023 | 8.1 | +1.9 | +0.4 | -1 |
| NYJ | 5–12 | -0.012 | +0.022 | -0.033 | -0.030 | 7.7 | -2.7 | -4.8 | -3 |
| MIA | 8–9 | -0.047 | -0.006 | -0.041 | -0.020 | 8.1 | -0.1 | -1.9 | -3 |
| ATL | 8–9 | +0.018 | +0.066 | -0.048 | -0.028 | 7.8 | +0.2 | -3.7 | -6 |
| IND | 8–9 | -0.057 | +0.028 | -0.084 | -0.069 | 6.0 | +2.0 | -1.9 | -4 |
| CHI | 5–12 | -0.088 | -0.001 | -0.087 | -0.088 | 6.4 | -1.4 | -1.0 | +10 |
| NO | 5–12 | -0.065 | +0.049 | -0.114 | -0.092 | 5.3 | -0.3 | -0.4 | +0 |
| TEN | 3–14 | -0.119 | +0.024 | -0.143 | -0.139 | 4.5 | -1.5 | -5.5 | -16 |
| LV | 4–13 | -0.143 | +0.012 | -0.156 | -0.152 | 4.4 | -0.4 | -2.4 | -16 |
| NE | 4–13 | -0.102 | +0.067 | -0.169 | -0.164 | 5.8 | -1.8 | -1.5 | -14 |
| NYG | 3–14 | -0.107 | +0.063 | -0.170 | -0.169 | 5.0 | -2.0 | -3.3 | -7 |
| JAX | 4–13 | -0.019 | +0.160 | -0.179 | -0.170 | 4.7 | -0.7 | -4.0 | -15 |
| DAL | 7–10 | -0.115 | +0.077 | -0.192 | -0.197 | 5.1 | +1.9 | -3.8 | -6 |
| CLE | 3–14 | -0.192 | +0.006 | -0.198 | -0.205 | 3.9 | -0.9 | -6.3 | -21 |
| CAR | 5–12 | -0.085 | +0.164 | -0.249 | -0.236 | 4.9 | +0.1 | -4.5 | -6 |
How the ratings are built
Opponent adjustment. A unit's rating for a game is its average over its other games that season, blended with 16 games' worth of prior (league average plus half of last season's gap from it; 24 games for pass defence, which is noisier). Early in a season that leans on last year; by midseason it is mostly this year. Chosen by how well it predicts a held-out game: it cut that error by about a quarter against no shrinkage, and adjusted numbers agree between odd and even weeks more than raw ones do (team EPA margin r 0.52 → 0.55, defence 0.32 → 0.36, QB EPA/dropback 0.47 → 0.49, 2016–2025).Win expectancy is a logistic fit of wins on EPA margin over 6,036 completed games (it names the winner 86.5% of the time). These describe what happened; one game is not a forecast. Play-by-play credits the quarterback with every sack and dropback, so a bad line shows up in his numbers. Seasons 2016–2026, built 2026-11-07 11:05 UTC, from nflverse. Write-up:
backtests/nfl_game_quality/FINDINGS.md.