MLB/Players/John Schreiber
John Schreiber

JOHN SCHREIBER

P · Kansas City Royals · 20192026 · 526 games
526
CAREER GAMES · REGULAR SEASON
6 seasons · postseason below
.236
CAREER BATTING AVERAGE
346 hits in 1,464 at-bats
30
CAREER HOME RUNS
112 RBI · 4 stolen bases
3.64
CAREER ERA
309.1 innings · 309 strikeouts
16-15
CAREER RECORD
WHIP 1.24

01/Hitting

Season by season
Regular season
SeasonClubGABRH2B3BHRRBIBBSOSBAVGOBPSLGOPS
2024KC118396469620222540922.242.312.318.630
2023BOS9234644821621227501060.237.333.399.732
2022BOS1284623890284632381482.195.256.312.568
2021BOS2242840022100.333.385.500.885
2020DET3012822381204158280.297.338.484.823
2019DET261081832206118380.296.345.481.826
Career3961,464170346828301121464224.236.306.365.670

02/Pitching

Season by season
Regular season
SeasonClubGWLIPHERBBSOHRERAWHIP
2026NYY561350.14120223673.581.25
2025KC743364.057271962103.801.19
2024KC594351.24821204613.661.32
2023BOS462146.24120255363.861.41
2022BOS644465.04516197432.220.98
2021BOS1003.0411503.001.67
2020DET150115.2191141426.321.47
2019DET132013.016941936.231.54
Career3281615309.1271125114309323.641.24

03/Postseason

Kept apart
Never folded in
SeasonClubGABHHRRBIAVGIPSOERA
2024KC1011001.0003.240.00

04/Every pitch

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

No batted balls with a location in this window.

Pitch locations · 249 pitches
Called strike (48) Swinging strike (32) In play (35) Foul (45) Ball (89)

Catcher’s view · the zone drawn is the average of the 249 batter zones recorded here, 1.57 to 3.32 feet

Pitch mix
PitchNShareMPHRPMStrike%
Four-Seam Fastball13754.6%91.82,09251.1%
Sweeper7730.7%78.92,46545.5%
Sinker187.2%91.12,03455.6%
Changeup176.8%86.11,31758.8%
Unknown20.8%0.0%

05/Game log

2019
Regular season
DateOppResultABRHHRRBIBBSOIPHERBBSO
AUG 9vs KCW 525131000
AUG 9vs KCW 5251311000.23100
AUG 10vs KCL 074210022
AUG 10vs KCL 0742102221.01222
SEP 1vs MINL 3882302021.23202
SEP 1vs MINL 388230002
SEP 4@ KCL 4530100110.21011
SEP 4@ KCL 453010011
SEP 6@ W 542000001
SEP 6@ W 5420000010.20001
SEP 10vs NYYW 12114221001
SEP 10vs NYYW 121142212010.22201
SEP 12vs NYYL 463010000
SEP 12vs NYYL 4630100001.01000
SEP 14vs BALW 841000000
SEP 14vs BALW 8410000000.10000
SEP 17@ CLEL 277000014
SEP 17@ CLEL 2770001142.10014
SEP 20vs CWSL 1105020001
SEP 20vs CWSL 11050200011.02001
SEP 22vs CWSW 636010003
SEP 22vs CWSW 6360100031.21003
SEP 25vs MINL 153221001
SEP 25vs MINL 1532213010.12201
SEP 29@ CWSL 3530000031.00003
SEP 29@ CWSL 353000003

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.