Pittsburgh Pirates vs San Francisco Giants
Game Highlights
Scoring summary
| INN | BATTER | PLAY | SCORE |
|---|---|---|---|
| T5 | Brandon Lowe | Brandon Lowe out on a sacrifice fly to center fielder Drew Gilbert. Joey Bart scores. | PIT 1, SF 0 |
| T5 | Bryan Reynolds | Bryan Reynolds singles on a ground ball to left fielder Heliot Ramos. Oneil Cruz scores. Bryan Reynolds to 2nd. | PIT 2, SF 0 |
| B5 | Bryce Eldridge | Bryce Eldridge homers (1) on a fly ball to right field. | PIT 2, SF 1 |
| T6 | Konnor Griffin | Konnor Griffin singles on a line drive to center fielder Drew Gilbert. Spencer Horwitz scores. Konnor Griffin to 2nd. | PIT 3, SF 1 |
| T6 | Joey Bart | Joey Bart singles on a ground ball to right fielder Jung Hoo Lee. Konnor Griffin scores. | PIT 4, SF 1 |
| T7 | Spencer Horwitz | Spencer Horwitz doubles (4) on a line drive to center fielder Drew Gilbert, deflected by left fielder Heliot Ramos. Ryan O'Hearn scores. Nick Gonzales to 3rd. | PIT 5, SF 1 |
| T7 | Konnor Griffin | Konnor Griffin out on a sacrifice fly to right fielder Jung Hoo Lee. Nick Gonzales scores. Spencer Horwitz to 3rd. | PIT 6, SF 1 |
| T7 | Joey Bart | Joey Bart singles on a fly ball to left fielder Heliot Ramos. Spencer Horwitz scores. | PIT 7, SF 1 |
| T7 | Brandon Lowe | Brandon Lowe triples (1) on a line drive to right fielder Jung Hoo Lee. Joey Bart scores. Oneil Cruz scores. | PIT 9, SF 1 |
| T7 | Ryan O'Hearn | Ryan O'Hearn singles on a ground ball to pitcher Gregory Santos. Brandon Lowe scores. Bryan Reynolds to 2nd. | PIT 10, SF 1 |
| T9 | Brandon Lowe | Brandon Lowe doubles (9) on a line drive to left fielder Heliot Ramos. Joey Bart scores. Oneil Cruz to 3rd. | PIT 11, SF 1 |
| T9 | Jared Triolo | Jared Triolo singles on a ground ball to center fielder Drew Gilbert. Oneil Cruz scores. Brandon Lowe to 3rd. | PIT 12, SF 1 |
| T9 | Ryan O'Hearn | Ryan O'Hearn grounds into a double play, shortstop Willy Adames to first baseman Bryce Eldridge. Brandon Lowe scores. Jared Triolo out at 2nd. Ryan O'Hearn out at 1st. | PIT 13, SF 1 |
| B9 | Drew Gilbert | Drew Gilbert walks. Heliot Ramos scores. Logan Porter to 3rd. Matt Chapman to 2nd. | PIT 13, SF 2 |
| B9 | Eric Haase | Eric Haase singles on a line drive to left fielder Nick Yorke. Logan Porter scores. Matt Chapman to 3rd. Drew Gilbert to 2nd. | PIT 13, SF 3 |
Box score
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | |
|---|---|---|---|---|---|---|---|---|---|---|
| PIT | 0 | 0 | 0 | 0 | 2 | 2 | 6 | 0 | 3 | 13 |
| SF | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 2 | 3 |
Pitching & bullpen
How the game was pitched — the starters, the bullpen sequence and each arm's role, and the pitch counts behind them.
Braxton Ashcraft started for Pirates, leaving with a 10–1 lead. Out of the bullpen, Cam Sanders took the roughest line.
-
Braxton Ashcraft
Starter
7.0
80
1
6
W
Pitch-by-pitch: what Braxton Ashcraft threw
CSW 29% 1st-pitch strike 65% 3.1 pitches/PAPitch # % Whiff CS Foul Ball In play Slider 27 34% 7 5 5 7 3 Four-Seam Fastball 26 33% 3 5 7 2 9 Curveball 14 18% 0 1 4 5 4 Sinker 12 15% 0 2 3 4 3 Splitter 1 1% 0 0 0 0 1 - Evan Sisk Middle 1.0 10 0 1
- Cam Sanders Reliever 1.0 34 2 0
Landen Roupp started for Giants, leaving with the game tied 0–0. Out of the bullpen, JT Brubaker took the roughest line.
-
Landen Roupp
Starter
4.0
94
1
8
L
Pitch-by-pitch: what Landen Roupp threw
CSW 30% 1st-pitch strike 44% 5.2 pitches/PAPitch # % Whiff CS Foul Ball In play Curveball 29 31% 4 7 9 8 1 Sinker 25 27% 1 7 2 13 2 Changeup 25 27% 4 2 7 10 2 Cutter 11 12% 0 2 6 2 1 Four-Seam Fastball 4 4% 0 1 1 1 1 - Ryan Borucki Reliever 0.2 16 1 0 inherited 1, all 1 scored
- Ryan Walker Closer 0.2 26 2 1 inherited 1, stranded 1
- Matt Gage Reliever 0.2 15 0 1 inherited 1, stranded 1
- JT Brubaker Middle 0.2 30 4 1
- Gregory Santos Reliever 1.1 32 2 0 inherited 1, all 1 scored
- Christian Koss Reliever 1.0 19 3 0
Where the game turned
- Lowe SF (1)
Batting lines
| BATTER | AB | R | H | RBI | BB | K | AVG | OBP | SLG | OPS | NOTES |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Oneil Cruz CF | 6 | 3 | 3 | 0 | 0 | 2 | .256 | .320 | .463 | .783 | SB |
| Brandon Lowe 2B | 4 | 2 | 2 | 4 | 1 | 1 | .269 | .368 | .585 | .953 | 2B, 3B |
| Jared Triolo SS | 1 | 0 | 1 | 1 | 0 | 0 | .194 | .256 | .250 | .506 | |
| Nick Gonzales 3B | 6 | 1 | 4 | 0 | 0 | 1 | .323 | .389 | .369 | .758 | 2B |
| Marcell Ozuna DH | 6 | 0 | 1 | 0 | 0 | 3 | .197 | .266 | .323 | .589 | 2B |
| Spencer Horwitz 1B | 3 | 2 | 1 | 1 | 2 | 1 | .255 | .377 | .396 | .773 | 2B |
| Joey Bart C | 5 | 3 | 4 | 2 | 0 | 0 | .259 | .290 | .379 | .669 | |
| Bryan Reynolds LF | 4 | 0 | 1 | 1 | 1 | 1 | .248 | .395 | .397 | .792 | |
| Ryan O'Hearn RF | 5 | 1 | 2 | 1 | 1 | 0 | .294 | .380 | .441 | .821 | |
| Konnor Griffin SS | 4 | 1 | 1 | 2 | 0 | 2 | .258 | .321 | .383 | .704 |
| BATTER | AB | R | H | RBI | BB | K | AVG | OBP | SLG | OPS | NOTES |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Jung Hoo Lee RF | 5 | 0 | 1 | 0 | 0 | 1 | .268 | .312 | .380 | .692 | |
| Luis Arraez 2B | 4 | 0 | 1 | 0 | 0 | 1 | .312 | .336 | .390 | .726 | |
| Heliot Ramos LF | 3 | 1 | 2 | 0 | 1 | 0 | .270 | .307 | .411 | .718 | |
| Bryce Eldridge 1B | 4 | 1 | 1 | 1 | 0 | 0 | .154 | .214 | .385 | .599 | HR (1) |
| Willy Adames SS | 4 | 0 | 0 | 0 | 0 | 1 | .197 | .233 | .329 | .562 | |
| Matt Chapman 3B | 3 | 0 | 1 | 0 | 1 | 0 | .229 | .306 | .306 | .612 | |
| Drew Gilbert CF | 3 | 0 | 0 | 1 | 1 | 1 | .246 | .292 | .361 | .653 | |
| Eric Haase C | 4 | 0 | 1 | 1 | 0 | 1 | .286 | .286 | .429 | .715 | |
| Rafael Devers 1B | 3 | 0 | 0 | 0 | 0 | 2 | .224 | .266 | .347 | .613 | |
| Christian Koss P | 0 | 0 | 0 | 0 | 0 | 0 | .077 | .143 | .154 | .297 |
Pitching lines
| PITCHER | IP | H | R | ER | BB | K | HR | NP | ERA | DEC |
|---|---|---|---|---|---|---|---|---|---|---|
| Braxton Ashcraft | 7.0 | 6 | 1 | 1 | 0 | 6 | 1 | 80 | 2.77 | W |
| Evan Sisk | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 10 | 1.80 | |
| Cam Sanders | 1.0 | 1 | 2 | 2 | 3 | 0 | 0 | 34 | 10.80 |
| PITCHER | IP | H | R | ER | BB | K | HR | NP | ERA | DEC |
|---|---|---|---|---|---|---|---|---|---|---|
| Landen Roupp | 4.0 | 3 | 1 | 1 | 3 | 8 | 0 | 94 | 3.09 | L |
| Ryan Borucki | 0.2 | 2 | 1 | 1 | 0 | 0 | 0 | 16 | 6.00 | |
| Ryan Walker | 0.2 | 3 | 2 | 2 | 1 | 1 | 0 | 26 | 6.46 | |
| Matt Gage | 0.2 | 1 | 0 | 0 | 0 | 1 | 0 | 15 | 1.13 | |
| JT Brubaker | 0.2 | 4 | 4 | 3 | 0 | 1 | 0 | 30 | 4.08 | |
| Gregory Santos | 1.1 | 2 | 2 | 0 | 1 | 0 | 0 | 32 | 3.60 | |
| Christian Koss | 1.0 | 5 | 3 | 3 | 0 | 0 | 0 | 19 | 13.50 |
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.