MLB/Players/Brad Keller
Brad Keller

BRAD KELLER

P · Philadelphia Phillies · 20182026 · 432 games
432
CAREER GAMES · REGULAR SEASON
7 seasons
.263
CAREER BATTING AVERAGE
1,454 hits in 5,534 at-bats
142
CAREER HOME RUNS
340 RBI · 42 stolen bases
4.13
CAREER ERA
821.1 innings · 645 strikeouts
44-60
CAREER RECORD
WHIP 1.41

01/Hitting

Season by season
Regular season
SeasonClubGABRH2B3BHRRBIBBSOSBAVGOBPSLGOPS
2024BOS323505696220182830642.274.332.491.823
2023KC22324528416062290624.259.420.364.784
2022KC701,106172306488347811420410.277.344.427.771
2021KC521,064178316544368012824010.297.372.457.829
2020KC1838632784041334700.202.267.244.510
2019KC561,248160308382030681402442.247.323.381.704
2018KC821,056100266384145110019214.252.317.335.652
Career3325,5347501,454220361423406361,07642.263.339.392.731

02/Pitching

Season by season
Regular season
SeasonClubGWLIPHERBBSOHRERAWHIP
2026PHI322131.12914133244.021.34
2025CHC684269.24516227542.070.96
2024BOS160441.14825153295.441.52
2023KC113445.14223453134.571.92
2022KC35614139.21537957102175.091.50
2021KC26812133.21588064120185.391.66
2020KC95354.23915173522.471.02
2019KC28714165.11547770122154.191.35
2018KC4196140.113348509673.081.30
Career2664460821.1801377353645794.131.41

04/Every pitch

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

No batted balls with a location in this window.

Pitch locations · 1113 pitches
Called strike (201) Swinging strike (135) In play (173) Foul (194) Ball (410)

Catcher’s view · the zone drawn is the average of the 1,113 batter zones recorded here, 1.62 to 3.43 feet

Pitch mix
PitchNShareMPHRPMStrike%
Four-Seam Fastball47042.2%97.22,38252.6%
Slider19217.3%87.22,63745.8%
Sweeper16114.5%86.22,71539.8%
Sinker16014.4%96.72,18948.1%
Changeup13011.7%92.71,72541.5%

05/Game log

2025
Regular season
DateOppResultABRHHRRBIBBSOIPHERBBSO
MAR 28@ AZL 1840032.04203
APR 2@ ATHW 10200101.00010
APR 5vs SDW 7100011.00001
APR 6vs SDL 7810021.01002
APR 13@ LADW 4210111.11011
APR 14@ SDL 41030120.23112
APR 18vs AZW 131100021.00002
APR 19vs AZW 6200011.00001
APR 22vs LADW 111020200.12420
APR 25vs PHIW 4010111.01011
APR 26vs PHIL 41000021.00002
APR 30@ PITL 3410011.11001
MAY 3@ MILW 6210012.01001
MAY 6vs SFL 51410001.01000
MAY 7vs SFL 1300011.00001
MAY 10@ NYMW 6500021.00002
MAY 11@ NYML 2610011.01001
MAY 14vs MIAL 1310011.01001
MAY 17vs CWSW 7300111.00011
MAY 18vs CWSW 6200011.00001
MAY 21@ MIAW 2100001.20000
MAY 23@ CINW 13610111.01011
MAY 25@ CINW 11820021.02002
MAY 27vs COLW 4300001.00000
MAY 28vs COLW 2110011.01001
MAY 31vs CINW 2000001.00000
JUN 5@ WSHW 7100001.00000
JUN 9@ PHIL 3430001.13000
JUN 10@ PHIW 8400011.00001
JUN 12vs PITW 3200120.20012
JUN 13vs PITL 1210011.01101
JUN 17vs MILW 5300111.00011
JUN 21vs SEAW 10710031.21003
JUN 26@ STLW 3000200.20020
JUN 29@ HOUL 0210001.01000
JUL 1vs CLEW 5200111.00011
JUL 2vs CLEW 5420001.02000
JUL 5vs STLL 6852011.05501
JUL 10@ MINW 8110121.01012
JUL 12@ NYYW 5221000.12200
JUL 18vs BOSW 4100011.00001
JUL 19vs BOSW 6000031.00003
JUL 26@ CWSW 6100001.00000
JUL 30@ MILW 10310012.01001
AUG 1vs BALW 1000121.00012
AUG 3vs BALW 5300121.00012
AUG 6vs CINW 6100001.00000
AUG 10@ STLL 2300021.10002
AUG 13@ TORW 4100001.00000
AUG 15vs PITL 2300011.00001
AUG 16vs PITW 3110031.01003
AUG 19vs MILW 6410220.21022
AUG 20vs MILW 4300011.00001
AUG 22@ LAAW 3200001.00000
AUG 24@ LAAW 4300011.00001
AUG 28@ SFL 3400011.00001
AUG 29@ COLW 11700010.10001
AUG 30@ COLW 4300001.00000
SEP 1vs ATLW 7600221.00022
SEP 7vs WSHL 3600021.00002
SEP 10@ ATLW 3210011.01001
SEP 12vs TBW 6400021.00002
SEP 13vs TBL 4521101.02110
SEP 15@ PITW 4000010.10001
SEP 16@ PITW 4100021.00002
SEP 21@ CINL 0100011.00001
SEP 26vs STLW 12100021.00002
SEP 27vs STLW 7320111.02011

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.