San Antonio Spurs at Portland Trail Blazers, NBA forecast
You didn't pick this one.
Win probability
Starts from the pregame forecast, then moves with every score and the time left. Above the line favors POR; hover for each play.
Game center
From the ESPN box score.
Top performers
- De'Aaron FoxPoints28
- Stephon CastleAssists8
- Victor WembanyamaRebounds12
- Deni AvdijaPoints26
- Jrue HolidayAssists4
- Deni AvdijaRebounds7
Last plays
- Q40.0End of Game114–93
- Q40.0End of the 4th Quarter114–93
- Q45.8
shot clock turnover114–93 - Q429.1
Blake Wesley lost ball turnover (Jordan McLaughlin steals)114–93 - Q435.1
Jordan McLaughlin makes 11-foot driving floating jump shot (Carter Bryant assists)114–93 - Q455.0
Kris Murray makes driving layup112–93 - Q41:12
Carter Bryant makes 24-foot three point jumper (Jordan McLaughlin assists)112–91 - Q41:31
Blake Wesley makes free throw 2 of 2109–91 - Q41:31
Mason Plumlee enters the game for Victor Wembanyama109–90 - Q41:31
Trail Blazers offensive team rebound109–90
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.
- Q38:55
Devin Vassell makes 23-foot three point jumper (Stephon Castle assists)SA 52 – 58 POR · SA 33% → 42% +9SA 33% → 42%+9 pts - Q36:36
Stephon Castle makes 23-foot three point jumper (Devin Vassell assists)SA 57 – 62 POR · SA 34% → 44% +10SA 34% → 44%+10 pts - Q33:51
Jrue Holiday makes 25-foot three point step back jumpshotSA 64 – 65 POR · POR 34% → 44% +10POR 34% → 44%+10 pts - Q311.3
Deni Avdija makes 28-foot three point jumper (Robert Williams III assists)SA 72 – 74 POR · POR 38% → 50% +12POR 38% → 50%+12 pts - Q30.7
Victor Wembanyama makes tip in dunkSA 74 – 74 POR · SA 50% → 58% +8SA 50% → 58%+8 pts
The pick
Reconstructed from what was known before the game: the ratings at that point and the closing line.
Spurs 66%
Forecast Elo ratings alone
How often that comes true: NBA favorites the forecast gave 65–70% have won 65.2% of 388 graded games.
- Market
- SA -5.5
- ML SA -225 / POR +185
- Pre-line forecast
- SA 68%
- Elo + market-implied
- Elo ratings
- SA -5.5
- SA 72%
- Ratings vs. market
- +5.2 pts
- SA: Elo 71.6%, market 66.4%
- Fair odds
- SA -197
- POR +197 · the forecast as odds, no margin
- Pregame projection
- SA 111.5 – 106.0 POR
- Posted spread, posted total 217.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 | POR | Why |
|---|---|---|---|
| Team rating | 1694 | 1498 | Elo entering the game; 1500 is league average |
| Home field | — | +36 | Worth 36 Elo in the NBA |
| Lineups | +53 | +52 | SA: Stronger than its recent lineups · POR: Stronger than its recent lineups (from the box score) |
| Elo ratings | SA +160 Elo | SA 71.6% | |
| Market-implied ratings | SA 68.1% | Team strength as past closing lines priced it, same game context | |
| Pre-line forecast | SA 68.4% | 10% Elo, 90% market-implied (log-odds blend) | |
| Forecast | SA 66.4% | 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 | |
|---|---|---|
| 3rd of 30119.7 | Points scored | 115.517th of 30 |
| 8th of 30111.7 | Points allowed | 115.816th of 30 |
| 3rd of 30+8.1 | Margin | −0.319th of 30 |
| 4th of 30117.4 | Offense rating | 111.822nd of 30 |
| 3rd of 30109.5 | Defense rating | 112.113th of 30 |
| 14th of 30101.7 | Pace | 102.88th of 30 |
| 3rd of 308–2 | Last 10 | 7–36th of 30 |
| 2nd of 3029–12 | Road vs home | 24–1714th of 30 |
| 17th of 301499 | Opponent Elo | 149916th of 30 |
| 2nd of 301694 | Elo rating | 149818th 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
+53 EloFull strength: nobody who matters sat out.
Trail Blazers
+52 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 | 50–36 | 45–40 |
| Last 10 | 6–4 | 6–4 |
| Favorite | 36–30 | 20–17 |
| Underdog | 14–6 | 25–23 |
| Overs–unders | 37–49 | 44–41 |
| Overs–unders, last 10 | 5–5 | 3–7 |
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 9–4 POR in their last 13 meetings; the forecast called 10 of 13.
- Apr 24
SA 120 @ POR 108PlayoffsPicked SA 53%Hit - Apr 21
POR 106 @ SA 103PlayoffsPicked SA 83%Miss - Apr 19
POR 98 @ SA 111PlayoffsPicked SA 84%Hit - Apr 8
POR 101 @ SA 112Picked SA 58%Hit - Jan 3
POR 115 @ SA 110Picked SA 73%Miss - Nov 26
SA 115 @ POR 102Picked SA 52%Hit - Apr 6
SA 109 @ POR 120Picked POR 58%Hit - Dec 21
POR 94 @ SA 114Picked SA 70%Hit



