Model evaluation
Performance
One record: every graded game since 2022-23, one forecast each, from a model that had not seen the game. Most of these forecasts were produced after the fact by the walk-forward evaluation; the rest were saved by the daily pipeline before tip-off.
How both are produced: Methodology.
The record in brief
Oct 18 – Nov 8| Measure | Result | What it means |
|---|---|---|
| Games evaluated | 5,390 | Regular season and playoff games from 2022-23 to 2026-27, each predicted by a model trained only on earlier seasons. 2026-27 is in progress. |
| Winners picked | 65.1% | The team with the higher projected score won this often. |
| Home team won | 55.6% | The baseline: picking the home team every time would have been right this often. |
| Margin error | 11.0 pts | Average distance between the forecast margin and the final margin. |
| Total points error | 15.0 pts | Average distance between forecast and actual combined score. |
| Team score error | 9.4 pts | Average miss on a single team's score. Half of team scores land within 8 points. |
| Brier score | 0.217 | Average squared error of the home win probability. Lower is better; always saying 50% scores 0.250. |
This season so far
- Average margin miss
- 11.7 pts
- Brier score
- 0.208
- Home team won
- 51.4%
Last 10 games
- Nov 7, ORL at GSW: correct
- Nov 7, HOU at PHX: missed
- Nov 7, SAS at POR: correct
- Nov 8, PHI at CHI: correct
- Nov 8, LAL at DET: missed
- Nov 8, UTA at MIN: correct
- Nov 8, BKN at DAL: correct
- Nov 8, BOS at MIL: correct
- Nov 8, NOP at LAC: correct
- Nov 8, MIA at SAC: correct
Winner calls
Every graded game, sorted by which side the forecast picked and which side won. The diagonal is the hits.
| Home won | Road won | |
|---|---|---|
| Picked home | 2,25142% | 1,13521% |
| Picked road | 74514% | 1,25923% |
The forecast picked the home team in 63% of games and was right 66% of the time when it did; road picks were right 63% of the time.
Accuracy by season
Share of games where the forecast winner won.
Data table
| Season | Regular season | Games | Playoffs | Games | Home team won |
|---|---|---|---|---|---|
| 2022-23 | 62% | 1230 | 61.9% | 84 | 58.1% |
| 2023-24 | 64.6% | 1230 | 59.8% | 82 | 54.6% |
| 2024-25 | 67.3% | 1225 | 57.1% | 84 | 54.6% |
| 2025-26 | 67.3% | 1225 | 65.5% | 84 | 55.5% |
| 2026-27 | 67.1% | 146 | – | 0 | 51.4% |
| Season | Games | Winners | Margin err. | Brier |
|---|---|---|---|---|
| 2022-23 | 1,314 | 62.0% | 10.3 | 0.231 |
| Playoffs | 84 | 61.9% | 11.4 | 0.243 |
| 2023-24 | 1,312 | 64.3% | 11.3 | 0.223 |
| Playoffs | 82 | 59.8% | 12.8 | 0.234 |
| 2024-25 | 1,309 | 66.7% | 11.0 | 0.211 |
| Playoffs | 84 | 57.1% | 12.5 | 0.233 |
| 2025-26 | 1,309 | 67.2% | 11.4 | 0.206 |
| Playoffs | 84 | 65.5% | 12.9 | 0.227 |
| 2026-27 (in progress) | 146 | 67.1% | 11.7 | 0.208 |
| All | 5,390 | 65.1% | 11.0 | 0.217 |
Accuracy rose as the training history grew: the 2022-23 model had one earlier season to learn from, the 2025-26 model had four. Playoff samples are small (about 84 games a season), so their year-to-year swings are mostly noise. The 2026-27 row covers only the games played so far; it is a small sample.
Every game, season by season
Hover or tap a dot to see that game.
Beyond the overall record
Team Predictability
Which teams' games this model forecasts well and which it misses: average margin miss with intervals, bias, variability, expected wins and Brier score for all 30 teams, by season.
Surprise Games
The results furthest from the forecast, ranked two ways: winners the forecast gave the lowest chance (this week: MIN at 13%), and the biggest misses on the final margin.
What moves the forecasts
How explanations are checkedBy input group
Largest single inputs
Average size of each input's push on the projected margin, in points, across the 14 forecasts whose model could be verified (mostly production model saved 2026-11-07 and walk-forward 2026-27). Group values add up the inputs in the group, so they can exceed the largest single input.
Are the win probabilities honest?
Games grouped by the forecast's confidence in its pick.
Calibration table
| Confidence band | Games | Average forecast | Picks that won |
|---|---|---|---|
| 50–55% | 948 | 52.6% | 53.4% |
| 55–60% | 1,108 | 57.2% | 58.2% |
| 60–65% | 1,072 | 62.3% | 61.9% |
| 65–70% | 838 | 67.4% | 66.7% |
| 70–75% | 572 | 72.3% | 74.1% |
| 75–80% | 466 | 77.4% | 81.8% |
| 80–85% | 270 | 82.3% | 84.4% |
| 85%+ | 116 | 87.7% | 88.8% |
Reading the chart
If a 70% forecast is honest, teams given 70% should win about 70% of the time. Each band's points sit close to the diagonal, with the favorite winning slightly more often than forecast in the 70–80% bands.
Predicted against actual margins
Average home margin, grouped by the forecast margin.
Data table
| Predicted range | Games | Avg predicted | Avg actual |
|---|---|---|---|
| Road by 10+ | 205 | -12.1 | -12 |
| Road by 6–10 | 512 | -7.3 | -7.1 |
| Road by 3–6 | 636 | -4 | -3.8 |
| Road by 0–3 | 651 | -1.4 | -0.6 |
| Home by 0–3 | 1,076 | 1.9 | 1.8 |
| Home by 3–6 | 891 | 4.9 | 4.1 |
| Home by 6–10 | 766 | 8.3 | 8 |
| Home by 10+ | 653 | 13.6 | 13.2 |
What it shows
On average, games land close to where the forecast put them: when the model favors a team by a given amount, that team's average margin is in the same range. Individual games scatter widely around those averages.
Predicted margins have a standard deviation of 6.8 points against 15.5 for actual margins. A forecast is an expected outcome, so it is always narrower than real results, but it does mean a 20-point win is almost never forecast as one.
How big are the misses?
Distribution of errors across all graded games. Positive values mean the home side (margin) or the game (total) finished higher than forecast.
Margin error
Data table
| Range (pts) | Count | Share |
|---|---|---|
| -40 to -36 | 30 | 0.6% |
| -36 to -32 | 37 | 0.7% |
| -32 to -28 | 65 | 1.2% |
| -28 to -24 | 107 | 2.0% |
| -24 to -20 | 146 | 2.7% |
| -20 to -16 | 255 | 4.7% |
| -16 to -12 | 337 | 6.3% |
| -12 to -8 | 438 | 8.1% |
| -8 to -4 | 577 | 10.7% |
| -4 to 0 | 608 | 11.3% |
| 0 to 4 | 682 | 12.7% |
| 4 to 8 | 569 | 10.6% |
| 8 to 12 | 505 | 9.4% |
| 12 to 16 | 365 | 6.8% |
| 16 to 20 | 246 | 4.6% |
| 20 to 24 | 176 | 3.3% |
| 24 to 28 | 103 | 1.9% |
| 28 to 32 | 63 | 1.2% |
| 32 to 36 | 28 | 0.5% |
| 36 to 40 | 53 | 1.0% |
Values beyond the outer bins are counted in the first or last bin. Total: 5,390.
Total points error
Data table
| Range (pts) | Count | Share |
|---|---|---|
| -50 to -45 | 26 | 0.5% |
| -45 to -40 | 37 | 0.7% |
| -40 to -35 | 69 | 1.3% |
| -35 to -30 | 116 | 2.2% |
| -30 to -25 | 163 | 3.0% |
| -25 to -20 | 275 | 5.1% |
| -20 to -15 | 369 | 6.8% |
| -15 to -10 | 455 | 8.4% |
| -10 to -5 | 498 | 9.2% |
| -5 to 0 | 592 | 11.0% |
| 0 to 5 | 552 | 10.2% |
| 5 to 10 | 534 | 9.9% |
| 10 to 15 | 474 | 8.8% |
| 15 to 20 | 364 | 6.8% |
| 20 to 25 | 294 | 5.5% |
| 25 to 30 | 212 | 3.9% |
| 30 to 35 | 139 | 2.6% |
| 35 to 40 | 89 | 1.7% |
| 40 to 45 | 60 | 1.1% |
| 45 to 50 | 72 | 1.3% |
Values beyond the outer bins are counted in the first or last bin. Total: 5,390.
Team score error
Data table
| Range (pts) | Count | Share |
|---|---|---|
| 0 to 2 | 1,082 | 10.0% |
| 2 to 4 | 1,440 | 13.4% |
| 4 to 6 | 1,360 | 12.6% |
| 6 to 8 | 1,232 | 11.4% |
| 8 to 10 | 1,129 | 10.5% |
| 10 to 12 | 961 | 8.9% |
| 12 to 14 | 825 | 7.7% |
| 14 to 16 | 723 | 6.7% |
| 16 to 18 | 558 | 5.2% |
| 18 to 20 | 432 | 4.0% |
| 20 to 22 | 341 | 3.2% |
| 22 to 24 | 219 | 2.0% |
| 24 to 26 | 143 | 1.3% |
| 26 to 28 | 112 | 1.0% |
| 28 to 30 | 223 | 2.1% |
Values beyond the outer bins are counted in the first or last bin. Total: 10,780.
36% of team scores land within 5 points of the forecast and 62% within 10.
Performance by context
All graded games split three ways. Every row shows its own sample size.
By predicted margin
| Group | Games | Winners | Margin err. | Brier |
|---|---|---|---|---|
| Favored by 0–3 | 1,954 | 54.9% | 11.1 | 0.247 |
| Favored by 3–6 | 1,470 | 63.0% | 11.2 | 0.234 |
| Favored by 6–10 | 1,167 | 72.2% | 10.9 | 0.201 |
| Favored by 10+ | 799 | 83.7% | 10.8 | 0.137 |
By which side was favored
| Group | Games | Winners | Margin err. | Brier |
|---|---|---|---|---|
| Home favorite | 3,386 | 66.5% | 11.0 | 0.212 |
| Road favorite | 2,004 | 62.8% | 11.1 | 0.226 |
Regular season and playoffs
| Group | Games | Winners | Margin err. | Brier |
|---|---|---|---|---|
| Regular Season | 5,056 | 65.4% | 10.9 | 0.216 |
| Playoffs | 334 | 61.1% | 12.4 | 0.234 |
Close forecasts are close to coin flips by design; accuracy rises with the size of the predicted margin. Road favorites are picked correctly less often than home favorites.
External benchmark: market lines
The model does not use betting lines. Where a betting line was stored for a game, it is compared here as a reference point. Lines are available for only 41 games (Apr 22 – Nov 8), far too few to draw conclusions.
| Average error, 41 games | Model | Market line |
|---|---|---|
| Margin | 10.7 | 10.4 |
| Total points | 13.8 | 12.0 |
| Same favorite as the line | 37 of 41 | |