STATS
MLB/Players/Caleb Thielbar
Caleb Thielbar

CALEB THIELBAR

P · Chicago Cubs · 20132026 · 813 games
813
CAREER GAMES · REGULAR SEASON
8 seasons · postseason below
.229
CAREER BATTING AVERAGE
546 hits in 2,388 at-bats
66
CAREER HOME RUNS
150 RBI · 44 stolen bases
3.45
CAREER ERA
422.2 innings · 458 strikeouts
29-18
CAREER RECORD
WHIP 1.16

01/Hitting

Season by season
Regular season
SeasonClubGABRH2B3BHRRBIBBSOSBAVGOBPSLGOPS
2024MIN1183766610018012304810614.266.349.410.759
2023MIN722262446102141812724.204.244.451.695
2022MIN134452521021421022361606.226.283.332.615
2021MIN118474481103201633401544.232.292.401.693
2020MIN341461228400318442.192.280.219.500
2015MIN123861020010100.263.263.316.579
2014MIN10836438102128624327010.280.338.407.745
2013MIN98312224816481928784.154.224.308.531
Career6942,388268546108166615021469444.229.292.370.662

02/Pitching

Season by season
Regular season
SeasonClubGWLIPHERBBSOHRERAWHIP
2026CHC523244.241251755115.041.30
2025CHC673458.03817135652.640.88
2024MIN592447.15028245365.321.56
2023MIN363130.2231163673.230.95
2022MIN674359.15123188053.491.16
2021MIN597064.05523207783.231.17
2020MIN172120.014592202.251.15
2015MIN6005.0530505.401.00
2014MIN542147.25118163533.401.41
2013MIN493246.0249143941.760.83
Career4662918422.2352162137458493.451.16

03/Postseason

Kept apart
Never folded in
SeasonClubGABHHRRBIAVGIPSOERA
2023MIN811423.3643.029.00
2020MIN22102.5000.100.00

04/Every pitch

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

No batted balls with a location in this window.

Pitch locations · 371 pitches
Called strike (60) Swinging strike (53) In play (51) Foul (78) Ball (129)

Catcher’s view · the zone drawn is the average of the 371 batter zones recorded here, 1.60 to 3.38 feet

Pitch mix
PitchNShareMPHRPMStrike%
Four-Seam Fastball20254.4%89.82,42158.4%
Curveball9425.3%68.72,55646.8%
Sweeper6116.4%77.52,49539.3%
Slider143.8%78.82,49442.9%

05/Game log

2020
Regular season
DateOppResultABRHHRRBIBBSOIPHERBBSO
AUG 4vs PITW 73122502232.15223
AUG 4vs PITW 7312250023
AUG 7@ KCL 234010000
AUG 7@ KCL 2340100001.01000
AUG 12@ MILW 1221000001
AUG 12@ MILW 12210000010.10001
AUG 18vs MILW 433000000
AUG 18vs MILW 4330000001.00000
AUG 19vs MILL 3930000111.10011
AUG 19vs MILL 393000011
AUG 21@ KCL 272000001
AUG 21@ KCL 2720000010.20001
AUG 24@ CLEW 325020003
AUG 24@ CLEW 3250200031.02003
AUG 30@ DETL 236000004
AUG 30@ DETL 2360000042.00004
SEP 1vs CWSW 3240100021.01002
SEP 1vs CWSW 324010002
SEP 4@ DETW 3210030012
SEP 4@ DETW 32100300122.13012
SEP 8@ STLL 4610001100.10010
SEP 8@ STLL 461000010
SEP 13vs CLEW 752100021
SEP 13vs CLEW 7521000210.20121
SEP 17@ CWSL 343000001
SEP 17@ CWSL 3430000011.00001
SEP 18@ CHCL 0130000211.00021
SEP 18@ CHCL 013000021
SEP 23vs DETW 764220001
SEP 23vs DETW 7642200010.22201
SEP 25vs CINL 276000000
SEP 25vs CINL 2760000002.00000
SEP 27vs CINL 354100001
SEP 27vs CINL 3541000011.10001

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.