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

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

No batted balls with a location in this window.

Pitch locations · 966 pitches
Called strike (171) Swinging strike (158) In play (161) Foul (145) Ball (331)

Catcher’s view · the zone drawn is the average of the 966 batter zones recorded here, 1.59 to 3.36 feet

Pitch mix
PitchNShareMPHRPMStrike%
Sinker41643.1%98.12,36447.4%
Slider37739.0%87.92,39952.8%
Four-Seam Fastball17117.7%98.82,32545.6%
Changeup20.2%92.22,04150.0%

05/Game log

2023
Regular season
DateOppResultABRHHRRBIBBSOIPHERBBSO
MAR 30@ TEXL 7112420020
MAR 30@ TEXL 71124201200.02320
APR 2@ TEXL 123000002
APR 2@ TEXL 1230000021.00002
APR 5@ NYYL 244111023
APR 5@ NYYL 2441112231.01123
APR 7vs CINW 523000000
APR 7vs CINW 5230000001.00000
APR 9vs CINL 4630000011.00001
APR 9vs CINL 463000001
APR 11vs MIAL 4810000100.10010
APR 11vs MIAL 481000010
APR 12vs MIAL 234100013
APR 12vs MIAL 2341000131.10013
APR 15@ CINL 0133000000
APR 15@ CINL 01330000001.00000
APR 18@ CWSW 743000002
APR 18@ CWSW 7430000021.00002
APR 19@ CWSW 5220000010.20001
APR 19@ CWSW 522000001
APR 22vs COLW 433000001
APR 22vs COLW 4330000011.00001
APR 23vs COLW 934010001
APR 23vs COLW 9340100011.01001
APR 27vs SEAW 1030000211.10021
APR 27vs SEAW 103000021
APR 30@ HOUL 343000001
APR 30@ HOUL 3430000011.00001
MAY 2@ LADL 1136440011
MAY 2@ LADL 11364404110.24411
MAY 5vs BOSL 3530000011.00001
MAY 5vs BOSL 353000001
MAY 6vs BOSL 473000001
MAY 6vs BOSL 4730000011.00001
MAY 9vs TORW 842000001
MAY 9vs TORW 8420001010.20001
MAY 10vs TORW 213000011
MAY 10vs TORW 2130000111.00011
MAY 13@ COLW 7430000001.00000
MAY 13@ COLW 743000000
MAY 16@ SFL 343000002
MAY 16@ SFL 3430000021.00002
MAY 17@ SFL 4783503011.05301
MAY 17@ SFL 478350001
MAY 21vs CHCW 211000000
MAY 21vs CHCW 2110000000.10000
MAY 23vs AZL 3430000121.00012
MAY 23vs AZL 343000012
MAY 25@ ATLL 585340011
MAY 25@ ATLL 5853403110.24311
JUN 1@ NYML 243000000
JUN 1@ NYML 2430000001.00000
JUN 3@ WSHW 4240100001.01000
JUN 3@ WSHW 424010000
JUN 9vs LADW 543000001
JUN 9vs LADW 5430000011.00001
JUN 11vs LADW 734111000
JUN 11vs LADW 7341111001.01100
JUN 14@ AZW 4310000100.10010
JUN 14@ AZW 431000010
JUN 15@ AZW 543010001
JUN 15@ AZW 5430100010.21001
JUN 17@ W 3220000000.20000
JUN 17@ W 322000000
JUN 22vs ATLL 153000011
JUN 22vs ATLL 1530000111.00011
JUN 23vs NYMW 5130000031.00003
JUN 23vs NYMW 513000003
JUN 27@ CHCW 5130101020.21002
JUN 27@ CHCW 513010002
JUN 29@ CHCW 3130000001.00000
JUN 29@ CHCW 313000000
JUL 5@ TBW 8440100011.01001
JUL 5@ TBW 844010001
JUL 9@ MIAL 375130001
JUL 9@ MIAL 3751301011.03101
JUL 15vs SDW 9441100001.01100
JUL 15vs SDW 944110000
JUL 16vs SDW 764220020
JUL 16vs SDW 7642202200.22220
JUL 18vs MILW 4320001000.20000
JUL 18vs MILW 432000000
JUL 21@ CLEL 564010000
JUL 21@ CLEL 5640100001.01000
JUL 23@ CLEW 8530000101.00010
JUL 23@ CLEW 853000010
JUL 26vs BALW 643000001
JUL 26vs BALW 6430000011.00001
JUL 28@ PITW 212010000
JUL 28@ PITW 2120100000.21000
JUL 30@ PITL 465110002
JUL 30@ PITL 4651100021.01002
AUG 1@ MIAW 314010001
AUG 1@ MIAW 3140100011.01001
AUG 2@ MIAL 8941211001.02100
AUG 2@ MIAL 894121000
AUG 6vs KCW 844000001
AUG 6vs KCW 8440000011.00001
AUG 8vs WSHL 4530000011.00001
AUG 8vs WSHL 453000001
AUG 12vs MINL 1844312110.13411
AUG 12vs MINL 184431011
AUG 16@ TORW 9430000011.00001
AUG 16@ TORW 943000001
AUG 18@ WSHL 7851201001.02100
AUG 18@ WSHL 785120000
AUG 22vs SFW 434010002
AUG 22vs SFW 4340100021.01002
AUG 26vs STLW 1213000000
AUG 26vs STLW 12130000001.00000
AUG 28vs LAAW 643000001
AUG 28vs LAAW 6430000011.00001
AUG 30vs LAAL 81012000210.10221
AUG 30vs LAAL 8101200021
SEP 1@ MILL 5730000021.00002
SEP 1@ MILL 573000002
SEP 4@ SDW 973220010
SEP 4@ SDW 9732202100.22210
SEP 8vs MIAL 2330000011.00001
SEP 8vs MIAL 233000001
SEP 9vs MIAW 8430000011.00001
SEP 9vs MIAW 843000001
SEP 11vs ATLW 754111001
SEP 11vs ATLW 7541111011.01101
SEP 16@ STLW 6110000000.10000
SEP 16@ STLW 611000000
SEP 18@ ATLW 7130000021.00002
SEP 18@ ATLW 713000002
SEP 20@ ATLW 6530101010.21001
SEP 20@ ATLW 653010001
SEP 22vs NYMW 544121001
SEP 22vs NYMW 5441211010.22101
SEP 23vs NYMW 754010012
SEP 23vs NYMW 7540100121.01012
SEP 27vs PITW 7630000031.00003
SEP 27vs PITW 763000003
OCT 1@ NYMW 913000002
OCT 1@ NYMW 9130000021.00002

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.