STATS
MLB/Players/Thomas Hatch
Thomas Hatch

THOMAS HATCH

P · 20202025 · 90 games
90
CAREER GAMES · REGULAR SEASON
4 seasons · postseason below
.276
CAREER BATTING AVERAGE
148 hits in 536 at-bats
18
CAREER HOME RUNS
44 RBI · 10 stolen bases
5.24
CAREER ERA
103.0 innings · 83 strikeouts
6-5
CAREER RECORD
WHIP 1.59

01/Hitting

Season by season
Regular season
SeasonClubGABRH2B3BHRRBIBBSOSBAVGOBPSLGOPS
2023PIT36226366618041924526.292.360.425.785
2022TOR24620244068480.522.5601.0001.560
2021TOR6761422804512160.289.386.553.939
2020TOR3418822364241226464.191.290.298.588
Career785369214834218446612210.276.355.448.803

02/Pitching

Season by season
Regular season
SeasonClubGWLIPHERBBSOHRERAWHIP
2025MIN122134.04022172275.821.68
2023PIT181128.23313122624.081.57
2022TOR1014.2121024319.293.00
2021TOR3019.11176826.751.82
2020TOR173126.1188132322.731.18
Career5165103.0114605083165.241.59

03/Postseason

Kept apart
Never folded in
SeasonClubGABHHRRBIAVGIPSOERA
2020TOR46000.0002.010.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 · 474 pitches
Called strike (68) Swinging strike (69) In play (89) Foul (75) Ball (173)

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

Pitch mix
PitchNShareMPHRPMStrike%
Cutter16635.0%87.92,54945.8%
Changeup12927.2%85.51,96641.9%
Sinker11524.3%94.82,38046.1%
Four-Seam Fastball6313.3%94.72,56046.0%
Sweeper10.2%83.82,4400.0%

05/Game log

2023
Regular season
DateOppResultABRHHRRBIBBSOIPHERBBSO
MAY 19vs BALL 2620100000.11000
MAY 19vs BALL 262010000
MAY 22@ TBL 4630000131.00013
MAY 22@ TBL 463000013
JUN 11vs MINW 7660201131.12013
JUN 11vs MINW 766020013
JUN 13@ BALL 6114000012
JUN 13@ BALL 61140000121.00012
JUL 6@ CWSW 6232202100.12110
JUL 6@ CWSW 623220010
AUG 3vs BALL 16103502122.15212
AUG 3vs BALL 1610350012
AUG 10vs ATLW 7513020002
AUG 10vs ATLW 75130200024.02002
AUG 13vs CINL 566230000
AUG 13vs CINL 5662301001.13200
AUG 19@ MINW 743000012
AUG 19@ MINW 7430000121.00012
AUG 21vs STLW 111100200113.02011
AUG 21vs STLW 11110020011
AUG 24vs CHCL 454210020
AUG 24vs CHCL 4542101201.01020
AUG 26vs CHCL 6109230001
AUG 26vs CHCL 61092302012.03201
AUG 30@ KCW 412000010
AUG 30@ KCW 4120000101.00010
SEP 2@ STLW 76103313012.13301
SEP 2@ STLW 7610331001
SEP 5vs MILL 3710130004
SEP 5vs MILL 37101302042.23004
SEP 10@ ATLL 255010010
SEP 10@ ATLL 2550102101.11010
SEP 15vs NYYL 576230012
SEP 15vs NYYL 5762302121.03212
SEP 16vs NYYL 3671211031.22103
SEP 16vs NYYL 367121003

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.