
Subscribers get the full AI matchup breakdown here — the read on today’s spot, the pitches to attack, and the weather and park context.
Upgrade to unlock →
| Split | ERA | WHIP | K% | HR | HR/9 | AVG | SLG | ISO | OPS |
|---|---|---|---|---|---|---|---|---|---|
| vs LHB | -.-- | 1.01 | 19.4% | 1 | 0.34 | .208 | .292 | 0.084 | .554 |
| vs RHB | -.-- | 1.29 | 17.5% | 8 | 1.06 | .224 | .390 | 0.166 | .699 |
| Home | 1.84 | 0.99 | 16.9% | 5 | 0.85 | .194 | .330 | 0.136 | .586 |
| Away | 2.83 | 1.50 | 19.3% | 4 | 0.88 | .252 | .403 | 0.151 | .746 |
| Day5 GS | 3.66 | 1.31 | 17.6% | 4 | 1.13 | .258 | .442 | 0.184 | .763 |
| Night11 GS | 1.57 | 1.16 | 18.3% | 5 | 0.71 | .200 | .322 | 0.122 | .606 |
| June5 GS | 2.20 | 1.22 | 18.1% | 4 | 1.28 | .214 | .398 | 0.184 | .700 |
Day, night, and June lines appear once a starter has 3+ starts in that split, with the start count (GS) shown. Smaller samples are left off so a one or two start streak does not read as a trend.
| Date | Batter | Stand | Type | EV | Angle | Dist | Bat Spd | Pitch Velo | Result |
|---|---|---|---|---|---|---|---|---|---|
| 6/23 | Rodriguez, Eduardo | L | 4-Seam FB | 97.2 | 38.0 | 342 | 78.6 | 91.7 | field out |
| 6/23 | Rodriguez, Eduardo | R | 4-Seam FB | 85.9 | 26.0 | 311 | 70.1 | 91.3 | field out |
| 6/23 | Rodriguez, Eduardo | R | Cutter | 103.0 | 59.0 | 195 | 79.6 | 90.7 | double play |
| 6/23 | Rodriguez, Eduardo | R | Cutter | 92.9 | 11.0 | 196 | 75.9 | 87.8 | single |
| 6/23 | Rodriguez, Eduardo | L | Curveball | 95.1 | -11.0 | 13 | 71.1 | 81.3 | field out |
| 6/23 | Rodriguez, Eduardo | R | Changeup | 102.1 | 40.0 | 379 | 76.2 | 86.7 | field out |
| 6/23 | Rodriguez, Eduardo | L | Curveball | 94.6 | -11.0 | 6 | 72.7 | 82.5 | field out |
| 6/23 | Rodriguez, Eduardo | R | Changeup | 83.9 | 23.0 | 291 | 67.9 | 85.6 | field out |
| 6/23 | Rodriguez, Eduardo | L | Sinker | 109.6 | 13.0 | 263 | 75.2 | 91.2 | single |
| 6/23 | Rodriguez, Eduardo | R | Cutter | 77.4 | 14.0 | 188 | 86.2 | 89.0 | single |
| Date | IP | ER | HR | K |
|---|---|---|---|---|
| 5/26 (2026) | 6.0 | 2 | 1 | 6 |
| 9/16 (2025) | 5.0 | 5 | 1 | 2 |
| 9/10 (2025) | 6.1 | 0 | 0 | 6 |
| 5/14 (2025) | 4.0 | 4 | 0 | 4 |
| 9/23 (2024) | 4.2 | 5 | 3 | 8 |
| Date | Pitcher | Type | IP | ER |
|---|---|---|---|---|
| 6/28 | Chris SaleATL | LHP | 6.0 | 1 |
| 6/27 | Bryce ElderATL | RHP | 4.0 | 5 |
| 6/26 | Reynaldo LópezATL | RHP | 3.0 | 1 |
| 6/25 | Jeffrey SpringsOAK | LHP | 5.1 | 3 |
| 6/24 | Gage JumpOAK | LHP | 5.0 | 0 |
| 6/23 | Aaron CivaleOAK | RHP | 4.0 | 2 |
| 6/21 | Ryan GustoMIA | RHP | 4.1 | 1 |
| 6/20 | Max MeyerMIA | RHP | 5.0 | 2 |
| 6/19 | Lake BacharMIA | RHP | 1.1 | 1 |
| 6/17 | JR RitchieATL | RHP | 5.0 | 5 |
| 6/17 | Grant HolmesATL | RHP | 2.0 | 3 |
| 6/16 | Grant HolmesATL | RHP | 2.0 | 3 |
| 6/14 | Ryan RolisonCHC | LHP | 1.1 | 0 |
| 6/13 | Ben BrownCHC | RHP | 5.0 | 1 |
| 6/12 | Javier AssadCHC | RHP | 6.0 | 0 |
| 6/10 | Foster GriffinWSH | LHP | 6.0 | 1 |
| 6/9 | Andrew AlvarezWSH | LHP | 4.0 | 2 |
| 6/8 | Richard LoveladyWSH | LHP | 1.0 | 0 |
| 6/7 | Jameson TaillonCHC | RHP | 1.0 | 1 |
| 6/6 | Ben BrownCHC | RHP | 5.1 | 0 |
| 6/5 | Edward CabreraCHC | RHP | 3.2 | 8 |
| 6/4 | Coleman CrowMIL | RHP | 2.1 | 6 |
| 6/3 | Robert GasserMIL | LHP | 5.0 | 1 |
| 6/2 | Kyle HarrisonMIL | LHP | 5.2 | 1 |
| 6/1 | Shane DrohanMIL | LHP | 4.0 | 2 |
| 5/31 | Tanner GordonCOL | RHP | 3.0 | 4 |
| 5/30 | Ryan FeltnerCOL | RHP | 6.0 | 0 |
Opposing starters who faced SF over the last 30 days, newest first. The stat column follows the Earned Runs / Home Runs / Strikeouts tabs up top, so it shows how SF's lineup has handled run prevention lately.