Milwaukee Bucks at Denver Nuggets, NBA forecast
Win probability
Starts from the pregame forecast, then moves with every score and the time left. Above the line favors DEN; hover for each play.
Game center
From the ESPN box score.
Top performers
- Giannis AntetokounmpoPoints31
- Giannis AntetokounmpoAssists11
- Kevin Porter Jr.Rebounds9
- Tim Hardaway Jr.Points25
- Peyton WatsonAssists6
- Zeke NnajiRebounds10
Last plays
- Q40.0End of Game104–108
- Q40.0End of the 4th Quarter104–108
- Q40.7
Bucks offensive team rebound104–108 - Q41.0
Kevin Porter Jr. misses tip shot104–108 - Q42.1
Kevin Porter Jr. offensive rebound104–108 - Q43.1
Giannis Antetokounmpo misses 27-foot three point pullup jump shot104–108 - Q44.4
Aaron Gordon makes free throw 2 of 2104–108 - Q44.4
Spencer Jones enters the game for Jalen Pickett104–107 - Q44.4
Zeke Nnaji enters the game for Tim Hardaway Jr.104–107 - Q44.4
Aaron Gordon makes free throw 1 of 2104–107
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.
- Q45:19
Kyle Kuzma makes 23-foot three point jumper (Kevin Porter Jr. assists)MIL 92 – 97 DEN · MIL 13% → 26% +13MIL 13% → 26%+13 pts - Q44:00
Kevin Porter Jr. makes 27-foot three point jumper (Ryan Rollins assists)MIL 95 – 99 DEN · MIL 13% → 27% +15MIL 13% → 27%+15 pts - Q43:39
Tim Hardaway Jr. makes 26-foot three point jumper (Zeke Nnaji assists)MIL 95 – 102 DEN · DEN 74% → 89% +15DEN 74% → 89%+15 pts - Q43:29
AJ Green makes 26-foot three pointer (Giannis Antetokounmpo assists)MIL 98 – 102 DEN · MIL 11% → 25% +15MIL 11% → 25%+15 pts - Q41:22
Ryan Rollins makes running layup (Giannis Antetokounmpo assists)MIL 102 – 105 DEN · MIL 7% → 20% +13MIL 7% → 20%+13 pts
The pick
Reconstructed from what was known before the game: the ratings at that point and the closing line.
Bucks 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
- MIL -6.5
- ML MIL -218 / DEN +180
- Pre-line forecast
- MIL 60%
- Elo + market-implied
- Elo ratings
- MIL -2
- MIL 57%
- Ratings vs. market
- −8.5 pts
- MIL: Elo 57.3%, market 65.7%
- Fair odds
- MIL -192
- DEN +192 · the forecast as odds, no margin
- Pregame projection
- MIL 113.0 – 106.5 DEN
- Posted spread, posted total 219.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 | MIL | DEN | Why |
|---|---|---|---|
| Team rating | 1481 | 1613 | Elo entering the game; 1500 is league average |
| Home field | — | +36 | Worth 36 Elo in the NBA |
| Lineups | +44 | −187 | MIL: Stronger than its recent lineups · DEN: Missing Christian Braun −18 · otherwise weaker than recent lineups (from the box score) |
| Travel | −12 | — | MIL crossed 1 time zone heading east to this game: 12 Elo per zone for body-clock lag |
| Elo ratings | MIL +51 Elo | MIL 57.3% | |
| Market-implied ratings | MIL 60.1% | Team strength as past closing lines priced it, same game context | |
| Pre-line forecast | MIL 59.8% | 10% Elo, 90% market-implied (log-odds blend) | |
| Forecast | MIL 65.7% | 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.
| MIL | Stat | |
|---|---|---|
| 25th of 30113.1 | Points scored | 123.11st of 30 |
| 14th of 30115.3 | Points allowed | 117.822nd of 30 |
| 21st of 30−2.2 | Margin | +5.35th of 30 |
| 19th of 30112.5 | Offense rating | 121.31st of 30 |
| 19th of 30114.6 | Defense rating | 116.126th of 30 |
| 26th of 30100.0 | Pace | 100.425th of 30 |
| 8th of 306–4 | Last 10 | 4–621st of 30 |
| 18th of 308–12 | Road vs home | 10–612th of 30 |
| 28th of 301483 | Opponent Elo | 148724th of 30 |
| 16th of 301481 | Elo rating | 16133rd 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.
Bucks
+44 EloFull strength: nobody who matters sat out.
Nuggets
−187 Elo- Christian Braun left ankle sprain−18 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 | 18–20 | 22–16 |
| Last 10 | 6–4 | 5–5 |
| Favorite | 7–10 | 15–13 |
| Underdog | 11–10 | 7–3 |
| Overs–unders | 16–22 | 24–14 |
| Overs–unders, last 10 | 4–6 | 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
MIL 2–2 DEN in their last 4 meetings; the forecast called 3 of 4.



