San Francisco Giants vs Arizona Diamondbacks
Game Highlights
Scoring summary
| INN | BATTER | PLAY | SCORE |
|---|---|---|---|
| B1 | Ketel Marte | Ketel Marte homers (16) on a fly ball to right field. | SF 0, AZ 1 |
| T5 | Jonah Cox | Jonah Cox hits a sacrifice bunt. Victor Bericoto scores. Jonah Cox to 1st. | SF 1, AZ 1 |
| B5 | Geraldo Perdomo | Geraldo Perdomo doubles (12) on a sharp line drive to left fielder Victor Bericoto. Nolan Arenado scores. Tommy Troy scores. Ketel Marte scores. | SF 1, AZ 4 |
| B6 | Nolan Arenado | Nolan Arenado homers (9) on a fly ball to left field. | SF 1, AZ 5 |
| T8 | Casey Schmitt | Casey Schmitt out on a sacrifice fly to center fielder Tommy Troy. Drew Gilbert scores. Luis Arraez to 3rd. | SF 2, AZ 5 |
| T9 | Heliot Ramos | Heliot Ramos homers (5) on a fly ball to left center field. | SF 3, AZ 5 |
| T9 | Drew Cavanaugh | Drew Cavanaugh singles on a ground ball to right fielder Corbin Carroll. Bryce Eldridge scores. | SF 4, AZ 5 |
Box score
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | |
|---|---|---|---|---|---|---|---|---|---|---|
| SF | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 2 | 4 |
| AZ | 1 | 0 | 0 | 0 | 3 | 1 | 0 | 0 | 0 | 5 |
Pitching & bullpen
How the game was pitched — the starters, the bullpen sequence and each arm's role, and the pitch counts behind them.
Tyler Mahle started for Giants, leaving trailing 1–4. Out of the bullpen, JT Brubaker took the roughest line.
-
Tyler Mahle
Starter
4.1
85
4
3
L
Pitch-by-pitch: what Tyler Mahle threw
CSW 26% 1st-pitch strike 58% 4.5 pitches/PAPitch # % Whiff CS Foul Ball In play Four-Seam Fastball 38 45% 1 9 6 14 8 Splitter 28 33% 6 0 7 13 2 Slider 11 13% 2 1 1 5 2 Cutter 8 9% 0 3 2 2 1 - Sam Hentges Middle 0.1 16 0 0 inherited 3, all 3 scored
- JT Brubaker Long 3.1 42 1 0 inherited 2, stranded 2
Eduardo Rodriguez started for Diamondbacks, leaving with a 5–1 lead. Out of the bullpen, Paul Sewald took the roughest line.
-
Eduardo Rodriguez
Starter
7.0
91
1
1
W
Pitch-by-pitch: what Eduardo Rodriguez threw
CSW 25% 1st-pitch strike 56% 3.4 pitches/PAPitch # % Whiff CS Foul Ball In play Four-Seam Fastball 42 46% 3 6 9 15 9 Changeup 25 27% 6 0 2 9 8 Curveball 10 11% 1 5 0 2 2 Sinker 9 10% 0 1 0 4 4 Cutter 5 5% 1 0 1 1 2 - Kevin Ginkel Middle 0.2 15 1 1
- Brandyn Garcia Setup 0.1 3 0 1 HLD inherited 1, stranded 1
- Paul Sewald Closer 1.0 19 2 0 SV
Where the game turned
- Perdomo 2B (3)
Batting lines
| BATTER | AB | R | H | RBI | BB | K | AVG | OBP | SLG | OPS | NOTES |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Matt Chapman 3B | 5 | 0 | 0 | 0 | 0 | 1 | .237 | .327 | .372 | .699 | |
| Luis Arraez 2B | 4 | 0 | 2 | 0 | 0 | 0 | .326 | .362 | .450 | .812 | 2B |
| Casey Schmitt SS | 3 | 0 | 0 | 1 | 0 | 0 | .287 | .312 | .503 | .815 | |
| Rafael Devers 1B | 4 | 0 | 1 | 0 | 0 | 1 | .240 | .299 | .449 | .748 | |
| Heliot Ramos RF | 4 | 1 | 1 | 1 | 0 | 0 | .267 | .310 | .436 | .746 | HR (5) |
| Bryce Eldridge DH | 4 | 1 | 2 | 0 | 0 | 0 | .285 | .377 | .486 | .863 | |
| Jung Hoo Lee PH | 1 | 0 | 0 | 0 | 0 | 0 | .321 | .353 | .460 | .813 | |
| Drew Cavanaugh PH | 1 | 0 | 1 | 1 | 0 | 0 | .286 | .375 | .286 | .661 | |
| Drew Gilbert CF | 1 | 1 | 0 | 0 | 1 | 0 | .232 | .321 | .360 | .681 | |
| Victor Bericoto LF | 3 | 1 | 2 | 0 | 0 | 0 | .286 | .306 | .571 | .877 | 2B |
| Eric Haase C | 3 | 0 | 0 | 0 | 0 | 1 | .182 | .239 | .409 | .648 | |
| Jonah Cox CF | 1 | 0 | 0 | 1 | 0 | 0 | .280 | .280 | .520 | .800 | SB |
| BATTER | AB | R | H | RBI | BB | K | AVG | OBP | SLG | OPS | NOTES |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Ketel Marte 2B | 3 | 2 | 1 | 1 | 1 | 0 | .263 | .319 | .478 | .797 | HR (16) |
| Geraldo Perdomo SS | 3 | 0 | 1 | 3 | 1 | 1 | .246 | .359 | .364 | .723 | 2B |
| Corbin Carroll RF | 2 | 0 | 0 | 0 | 2 | 1 | .276 | .362 | .528 | .890 | |
| Gabriel Moreno C | 3 | 0 | 0 | 0 | 1 | 0 | .276 | .359 | .432 | .791 | |
| Lourdes Gurriel Jr. DH | 4 | 0 | 1 | 0 | 0 | 0 | .220 | .271 | .295 | .566 | 2B |
| Max Kepler LF | 4 | 0 | 0 | 0 | 0 | 1 | .000 | .000 | .000 | .000 | |
| Nolan Arenado 3B | 2 | 2 | 2 | 1 | 1 | 0 | .243 | .318 | .399 | .717 | HR (9) |
| Pavin Smith 1B | 3 | 0 | 0 | 0 | 0 | 0 | .153 | .261 | .220 | .481 | |
| Tommy Troy CF | 3 | 1 | 1 | 0 | 0 | 0 | .232 | .305 | .379 | .684 |
Pitching lines
| PITCHER | IP | H | R | ER | BB | K | HR | NP | ERA | DEC |
|---|---|---|---|---|---|---|---|---|---|---|
| Tyler Mahle | 4.1 | 4 | 4 | 4 | 3 | 3 | 1 | 85 | 5.67 | L |
| Sam Hentges | 0.1 | 1 | 0 | 0 | 2 | 0 | 0 | 16 | 2.40 | |
| JT Brubaker | 3.1 | 1 | 1 | 1 | 1 | 0 | 1 | 42 | 2.74 |
| PITCHER | IP | H | R | ER | BB | K | HR | NP | ERA | DEC |
|---|---|---|---|---|---|---|---|---|---|---|
| Eduardo Rodriguez | 7.0 | 5 | 1 | 1 | 0 | 1 | 0 | 91 | 2.21 | W |
| Kevin Ginkel | 0.2 | 1 | 1 | 1 | 1 | 1 | 0 | 15 | 3.06 | |
| Brandyn Garcia | 0.1 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 2.45 | HLD |
| Paul Sewald | 1.0 | 3 | 2 | 2 | 0 | 0 | 1 | 19 | 4.50 | SV |
Manager comparison
Recent form
Keep reading
How RunsLeft analyzes games
Standard content on this page comes from the MLB Stats API. The pitching analysis describes how the game was pitched — the starter's line, the bullpen sequence and each arm's role (opener, bulk, setup, closer), pitch counts as a fatigue signal, and the leverage context where the game turned. Reliever roles are inferred from how the manager used each arm up to that date. It describes structure and constraints; it does not grade the manager.