San Antonio Spurs at Milwaukee Bucks, NBA forecast
Win probability
Starts from the pregame forecast, then moves with every score and the time left. Above the line favors MIL; hover for each play.
Game center
From the ESPN box score.
Top performers
- Victor WembanyamaPoints23
- Stephon CastleAssists10
- Victor WembanyamaRebounds15
- Gary Trent Jr.Points18
- Ousmane DiengAssists5
- Jericho SimsRebounds10
Last plays
- Q40.0End of Game127–95
- Q40.0End of the 4th Quarter127–95
- Q419.7
Andre Jackson Jr. bad pass
turnover (Kelly Olynyk steals)127–95 - Q423.4
Jericho Sims defensive rebound127–95 - Q427.4
Lindy Waters III misses 25-foot three point jumper127–95 - Q442.3
Jericho Sims makes two point shot (AJ Green assists)127–95 - Q457.8
Luke Kornet makes 11-foot floating jump shot (Carter Bryant assists)127–93 - Q41:13
Taurean Prince makes driving layup125–93 - Q41:18
Jordan McLaughlin makes running layup (Kelly Olynyk assists)125–91 - Q41:20
Jericho Sims lost ball turnover (Jordan McLaughlin steals)123–91
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.
- Q111:43
Stephon Castle makes 1-foot layup (Victor Wembanyama assists)SA 2 – 0 MIL · SA 91% → 93% +2SA 91% → 93%+2 pts - Q18:55
Stephon Castle makes 25-foot three point step back jumpshot (De'Aaron Fox assists)SA 9 – 4 MIL · SA 92% → 94% +2SA 92% → 94%+2 pts - Q17:11
Victor Wembanyama makes 1-foot alley oop dunk (Stephon Castle assists)SA 13 – 9 MIL · SA 92% → 93% +2SA 92% → 93%+2 pts - Q15:41
Devin Vassell makes 23-foot three point jumper (Stephon Castle assists)SA 18 – 11 MIL · SA 93% → 95% +2SA 93% → 95%+2 pts - Q14:01
Dylan Harper makes 24-foot three point jumper (Keldon Johnson assists)SA 24 – 16 MIL · SA 94% → 95% +2SA 94% → 95%+2 pts
The pick
Reconstructed from what was known before the game: the ratings at that point and the closing line.
Spurs 91%
Forecast Elo ratings alone
How often that comes true: NBA favorites the forecast gave 90–95% have won 98.7% of 78 graded games.
- Market
- SA -17.5
- ML SA -1800 / MIL +1000
- Pre-line forecast
- SA 92%
- Elo + market-implied
- Elo ratings
- SA -16.5
- SA 93%
- Ratings vs. market
- +2.0 pts
- SA: Elo 93.2%, market 91.2%
- Fair odds
- SA -1042
- MIL +1042 · the forecast as odds, no margin
- Pregame projection
- SA 122.5 – 105.0 MIL
- Posted spread, posted total 227.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 | MIL | Why |
|---|---|---|---|
| Team rating | 1680 | 1382 | Elo entering the game; 1500 is league average |
| Home field | — | +36 | Worth 36 Elo in the NBA |
| Lineups | +51 | −118 | SA: Stronger than its recent lineups · MIL: Missing Bobby Portis −22 · otherwise weaker than recent lineups (from the box score) |
| Travel | — | −24 | MIL crossed 2 time zones heading east to this game: 12 Elo per zone for body-clock lag |
| Elo ratings | SA +455 Elo | SA 93.2% | |
| Market-implied ratings | SA 91.4% | Team strength as past closing lines priced it, same game context | |
| Pre-line forecast | SA 91.6% | 10% Elo, 90% market-implied (log-odds blend) | |
| Forecast | SA 91.2% | 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 | |
|---|---|---|
| 4th of 30119.2 | Points scored | 110.629th of 30 |
| 8th of 30111.6 | Points allowed | 116.620th of 30 |
| 3rd of 30+7.6 | Margin | −6.025th of 30 |
| 4th of 30116.8 | Offense rating | 111.024th of 30 |
| 3rd of 30109.4 | Defense rating | 117.026th of 30 |
| 12th of 30101.8 | Pace | 99.224th of 30 |
| 1st of 309–1 | Last 10 | 2–825th of 30 |
| 2nd of 3026–11 | Road vs home | 16–1922nd of 30 |
| 13th of 301502 | Opponent Elo | 150116th of 30 |
| 2nd of 301680 | Elo rating | 138223rd 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
+51 EloFull strength: nobody who matters sat out.
Bucks
−118 Elo- Bobby Portis left wrist sprain−22 Elo
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 | 43–31 | 31–41 |
| Last 10 | 6–4 | 3–7 |
| Favorite | 30–25 | 9–17 |
| Underdog | 13–6 | 22–24 |
| Overs–unders | 32–42 | 32–40 |
| Overs–unders, last 10 | 6–4 | 6–4 |
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–3 MIL in their last 5 meetings; the forecast called 4 of 5.



