San Antonio Spurs at Detroit Pistons, NBA forecast
Win probability
Starts from the pregame forecast, then moves with every score and the time left. Above the line favors DET; hover for each play.
Game center
From the ESPN box score.
Top performers
- Devin VassellPoints28
- Stephon CastleAssists11
- Victor WembanyamaRebounds17
- Jalen DurenPoints25
- Cade CunninghamAssists10
- Jalen DurenRebounds14
Last plays
- Q40.0End of Game114–103
- Q40.0End of the 4th Quarter114–103
- Q417.6
shot clock turnover114–103 - Q440.5
Stephon Castle defensive rebound114–103 - Q441.0
Jalen Duren misses 16-foot pullup jump shot114–103 - Q456.7
Julian Champagnie makes 1-foot dunk (Stephon Castle assists)114–103 - Q41:02
Jalen Duren makes free throw 1 of 1112–103 - Q41:02
Paul Reed enters the game for Tobias Harris112–102 - Q41:02
Ronald Holland II enters the game for Duncan Robinson112–102 - Q41:02
Julian Champagnie shooting foul112–102
Turning points
The 5 plays that swung the win chance most, each judged at its own moment: the chance with the score just before it against just after.
- Q21:10
Devin Vassell makes 31-foot three point jumper (De'Aaron Fox assists)SA 51 – 51 DET · SA 40% → 48% +8SA 40% → 48%+8 pts - Q310:51
Duncan Robinson makes 27-foot three point jumper (Cade Cunningham assists)SA 59 – 58 DET · DET 40% → 49% +9DET 40% → 49%+9 pts - Q36:51
Stephon Castle makes 24-foot running jump shot (Devin Vassell assists)SA 68 – 64 DET · SA 52% → 61% +10SA 52% → 61%+10 pts - Q35:56
Victor Wembanyama makes 28-foot running jump shot (Devin Vassell assists)SA 71 – 64 DET · SA 62% → 71% +9SA 62% → 71%+9 pts - Q32:59
Harrison Barnes makes 22-foot three point jumper (De'Aaron Fox assists)SA 81 – 72 DET · SA 70% → 79% +9SA 70% → 79%+9 pts
The pick
Reconstructed from what was known before the game: the ratings at that point and the closing line.
Pistons 53%
Forecast Elo ratings alone
How often that comes true: NBA favorites the forecast gave 50–55% have won 49.4% of 342 graded games.
- Market
- DET -1.5
- ML SA +102 / DET -122
- Pre-line forecast
- DET 56%
- Elo + market-implied
- Elo ratings
- DET -3.5
- DET 63%
- Ratings vs. market
- +10.5 pts
- DET: Elo 63.1%, market 52.6%
- Fair odds
- DET -111
- SA +111 · the forecast as odds, no margin
- Pregame projection
- SA 115.5 – 117.0 DET
- Posted spread, posted total 232.5
How the number is built
Elo inputs in rating points (higher favors that team; 25–28 Elo is about a point of spread in football and basketball), then how the pieces combine.
| Factor | SA | DET | Why |
|---|---|---|---|
| Team rating | 1602 | 1648 | Elo entering the game; 1500 is league average |
| Home field | — | +36 | Worth 36 Elo in the NBA |
| Lineups | +50 | +62 | SA: Stronger than its recent lineups · DET: Stronger than its recent lineups (from the box score) |
| Travel | −12 | −12 | SA crossed 1 time zone and DET crossed 1 time zone heading east to this game: 12 Elo per zone for body-clock lag |
| Elo ratings | DET +93 Elo | DET 63.1% | |
| Market-implied ratings | DET 55.4% | Team strength as past closing lines priced it, same game context | |
| Pre-line forecast | DET 56.2% | 10% Elo, 90% market-implied (log-odds blend) | |
| Forecast | DET 52.6% | Follows the market (vig removed): in testing, adding the ratings made it less accurate | |
Tale of the tape
This season coming into the game, regular season, each number with its league rank (the longer the bar, the higher). Home and road: the host's record at home against the visitor's on the road. Opponent Elo: how strong the teams each has played are, 1st the toughest. Offense and defense are points per 100 possessions, which sets aside how fast a team plays.
| SA | Stat | |
|---|---|---|
| 6th of 30118.5 | Points scored | 117.69th of 30 |
| 8th of 30112.2 | Points allowed | 109.33rd of 30 |
| 4th of 30+6.2 | Margin | +8.22nd of 30 |
| 6th of 30115.9 | Offense rating | 114.911th of 30 |
| 3rd of 30109.8 | Defense rating | 106.82nd of 30 |
| 13th of 30102.0 | Pace | 102.014th of 30 |
| 1st of 309–1 | Last 10 | 8–22nd of 30 |
| 5th of 3018–10 | Road vs home | 21–62nd of 30 |
| 23rd of 301494 | Opponent Elo | 148628th of 30 |
| 7th of 301602 | Elo rating | 16483rd of 30 |
Who's playing
Who sat out, from the box score, and what each absence cost against the lineups the team had been playing.
Spurs
+50 EloFull strength: nobody who matters sat out.
Pistons
+62 EloFull strength: nobody who matters sat out.
Rating history
Each team's Elo over the last two seasons. Hover or drag to compare on any date.
Recent form
Last five results, and whether the forecast hit.
Against the line
How each team has done against the closing spread and total, coming into this game.
| This season | ||
|---|---|---|
| Against the spread | 33–24 | 31–24 |
| Last 10 | 8–2 | 7–3 |
| Favorite | 21–18 | 21–23 |
| Underdog | 12–6 | 10–1 |
| Overs–unders | 24–33 | 23–32 |
| Overs–unders, last 10 | 6–4 | 5–5 |
Against each game's closing line. Books set every line knowing these records: across 3,901 past games, the team with the better record against the spread so far that season covered 51.2%, short of the 52.4% a standard −110 bet needs, and over/under streaks held 48.0% of the time. They describe the past.
Head to head
SA 2–2 DET in their last 4 meetings; the forecast called 4 of 4.



