MLB/Players/Gregory Soto
Gregory Soto

GREGORY SOTO

P · Pittsburgh Pirates · 20192026 · 772 games
772
CAREER GAMES · REGULAR SEASON
6 seasons · postseason below
.239
CAREER BATTING AVERAGE
576 hits in 2,406 at-bats
60
CAREER HOME RUNS
162 RBI · 30 stolen bases
4.11
CAREER ERA
438.0 innings · 479 strikeouts
21-38
CAREER RECORD
WHIP 1.39

01/Hitting

Season by season
Regular season
SeasonClubGABRH2B3BHRRBIBBSOSBAVGOBPSLGOPS
2024BAL13241260112204831541304.272.356.398.754
2023PHI13844868942001229441304.210.280.335.615
2022DET1284366498242427681206.225.329.317.646
2021DET12446460921401431801522.198.316.319.635
2020DET541662232404626584.193.302.289.591
2019DET66480781482841838669010.308.392.496.888
Career6422,406352576110106016233868030.239.333.368.701

02/Pitching

Season by season
Regular season
SeasonClubGWLIPHERBBSOHRERAWHIP
2026PIT606459.24121246953.171.09
2025NYM701560.16228247044.181.43
2024BAL663553.05626276544.421.57
2023PHI693460.14731226564.621.14
2022DET6421160.14922346023.281.38
2021DET626363.24624407673.391.35
2020DET270123.01611132924.301.26
2019DET330557.27437334595.771.86
Career4512138438.0391200217479394.111.39

03/Postseason

Kept apart
Never folded in
SeasonClubGABHHRRBIAVGIPSOERA
2024BAL22000.0000.210.00
2023PHI1013501.3853.036.00

04/Every pitch

2026 Regular season
Play log from 2015
Spray chart · 0 batted balls

No batted balls with a location in this window.

Pitch locations · 984 pitches
Called strike (185) Swinging strike (122) In play (145) Foul (162) Ball (370)

Catcher’s view · the zone drawn is the average of the 984 batter zones recorded here, 1.62 to 3.21 feet

Pitch mix
PitchNShareMPHRPMStrike%
Sinker36837.4%96.52,31245.7%
Slider28028.5%83.52,58350.4%
Four-Seam Fastball17117.4%97.12,33443.9%
Sweeper16416.7%82.62,59251.8%
Splitter10.1%87.62,0380.0%

05/Game log

2026
Regular season
DateOppResultABRHHRRBIBBSOIPHERBBSO
MAR 26@ NYML 71100021.00002
MAR 28@ NYML 2400131.10013
MAR 31@ CINW 8310111.01011
APR 1@ CINW 8300021.00002
APR 3vs BALW 5411031.01103
APR 6vs SDL 0500111.00011
APR 7vs SDW 7100011.00001
APR 10@ CHCW 2000201.00020
APR 11@ CHCW 4300000.10000
APR 15vs WSHW 2000021.00002
APR 17vs TBW 5100001.00000
APR 18vs TBL 7800111.00011
APR 22@ TEXW 8430031.03203
APR 25@ MILW 6300011.00001
APR 27vs STLL 2410001.01000
MAY 2vs CINW 17700011.00001
MAY 3vs CINW 1000021.10002
MAY 6@ AZW 1000111.00011
MAY 7@ AZW 4200011.00001
MAY 10@ SFL 6700011.10001
MAY 12vs COLW 3120001.02100
MAY 15vs PHIL 91120201.02220
MAY 19@ STLL 6900031.00003
MAY 24@ TORW 4100111.00011
MAY 25vs CHCW 2100011.00001
MAY 29vs MINW 6500011.00001
MAY 30vs MINW 10900101.10010
JUN 2@ HOUW 10600020.20002
JUN 3@ HOUL 91130100.03310
JUN 10vs LADW 9821001.02200
JUN 13vs MIAW 3210011.01001
JUN 16@ ATHW 6520021.02002
JUN 21@ COLW 8620111.02111
JUN 25vs SEAW 5100011.00001
JUN 27vs CINL 7921211.02321
JUN 29@ PHIW 11721010.22201
JUL 2@ PHIW 6100011.00001
JUL 5@ WSHW 11511122.01112
JUL 9vs ATLL 51000001.00000
JUL 11vs MILW 7610101.01010
JUL 18@ CLEL 3510120.21012
JUL 22@ NYYW 5300011.00001
JUL 24vs CHCL 2300001.00000
JUL 27vs AZW 3210021.01002
JUL 28vs AZL 7800021.00002
JUL 30@ CINL 2310210.21121
AUG 1@ CINW 4100011.00001
AUG 3@ MILW 4310131.11013
AUG 6@ MILL 2530031.03103
AUG 9vs NYML 11120011.02101
AUG 14vs BOSW 8400111.00011
AUG 15vs BOSL 0410001.01000
AUG 17vs DETL 5820031.02003
AUG 19vs DETW 4310021.21002
AUG 21@ LADL 4510110.21011
AUG 24@ SDW 3200111.00011
AUG 25@ SDW 1000001.00000
AUG 28@ STLL 1400001.00000
AUG 29@ STLW 6210001.01000
SEP 1vs SFW 131200010.20001

Regular season and postseason are separate tables and are never summed into one career line; spring training is excluded entirely. Hitting and pitching come from different source rows, so a two-way player has both tables and neither borrows from the other. Innings pitched is summed as outs and converted once: the stored value counts thirds, so “6.1” means six innings and one out, and adding those as decimals understates a career. ERA and WHIP are computed from those totals rather than averaged across seasons. On-base percentage is (H + BB) over (AB + BB), which runs slightly under the official figure because the source rows carry no hit-by-pitch or sacrifice fly. The charts cover 2015 onward only, and the spray chart plots batted balls with a recorded landing spot: a strikeout or a walk has no location and is not a missing dot. Its field is a representative park, not the one the ball was hit in, because a spray chart pooled across a season is hit in thirty different outfields.