Philadelphia Phillies at San Francisco Giants, MLB forecast
Win probability
Starts from the pregame forecast, then moves with the score and the time left after each inning. Above the line favors SF.
Game center
From the ESPN box score.
Top performers
- Kyle SchwarberBatting1-2
- Aaron NolaPitching6.0 IP, 3 ER, 3 K
- Rafael DeversBatting2-4, 1 HR, 4 RBI
- Tyler MahlePitching5.2 IP, 0 ER, 6 K
Scoring summary
- 8
Devers singled to center, Arraez scored.0–5 - 8
Arraez hit sacrifice bunt, Adames scored, Arraez to first on throwing error by pitcher Alvarado, Arraez to second.0–4 - 6
Devers homered to center (411 feet), Adames scored and Arraez scored.0–3
The pick
Reconstructed from what was known before the game: the ratings at that point and the closing line.
Phillies 55%
Forecast Elo ratings alone
How often that comes true: MLB favorites the forecast gave 55–60% have won 55.5% of 2,596 graded games.
- Market
- PHI 55%
- ML PHI -136 / SF +113
- Pre-line forecast
- PHI 51%
- Elo + market-implied
- Elo ratings
- PHI 53%
- Ratings vs. market
- −2.2 pts
- PHI: Elo 52.9%, market 55.1%
- Fair odds
- PHI -123
- SF +123 · the forecast as odds, no margin
- Pregame projection
- PHI 4.5 – 4.0 SF
- Margin from the forecast, posted total 8.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 | PHI | SF | Why |
|---|---|---|---|
| Team rating | 1531 | 1492 | Elo entering the game; 1500 is league average |
| Home field | — | +18 | Worth 18 Elo in MLB |
| Starting pitchers | 0 | 0 | PHI: Aaron Nola: team allows 0.00 more runs than with its usual starter (≈10 weighted starts) · SF: Tyler Mahle: team allows 0.01 fewer runs than with its usual starter (≈9 weighted starts) |
| Elo ratings | PHI +20 Elo | PHI 52.9% | |
| Market-implied ratings | PHI 51.0% | Team strength as past closing lines priced it, same game context | |
| Pre-line forecast | PHI 51.2% | 15% Elo, 85% market-implied (log-odds blend) | |
| Forecast | PHI 55.1% | 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.
| PHI | Stat | |
|---|---|---|
| 19th of 303.8 | Runs scored | 3.030th of 30 |
| 20th of 304.7 | Runs allowed | 4.821st of 30 |
| 22nd of 30−0.9 | Margin | −1.828th of 30 |
| 11th of 305–5 | Last 10 | 4–622nd of 30 |
| 7th of 303–2 | Road vs home | 2–729th of 30 |
| 30th of 301464 | Opponent Elo | 15291st of 30 |
| 4th of 301531 | Elo rating | 149220th of 30 |
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 | ||
|---|---|---|
| Run line | 3–8 | 4–8 |
| Last 10 | 2–8 | 4–6 |
| Favorite | 3–8 | 2–2 |
| Underdog | — | 2–6 |
| Overs–unders | 6–4–1 | 5–4–3 |
| Overs–unders, last 10 | 6–4 | 5–3–2 |
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
PHI 11–11 SF in their last 22 meetings; the forecast called 16 of 22.



