Codi Heuer
2026Grade
Below league average across the board.
Heuer is getting hit harder than most pitchers
The simulator expects 0.474 bases allowed per batter faced against him — better than 20th percentile of qualified pitchers. His standout tool is HR Suppression (93rd percentile). The soft spot is Strikeouts (21st percentile). Short relief stints inflate strikeout rates a touch, so read the Strikeouts spoke with that in mind.
46 batters faced · data through 2026-08-31.
How to read this chart
Plays like…
Same archetype, nearest by rate — the pitchers whose profile looks most like this one.
Pitcher type
Arsenal
Codi Heuer mixes his four-seam fastball (43%) and slider (32%). His best pitch has been the four-seam fastball, saving 0.9 bases per 100 thrown vs average.
Pitch mix & swing-and-miss
allowed 21 bases vs a replacement arm's 24 over the same batters faced
Replacement level is per-batter and can't be split by pitch type, so the bars below use league average.
1.5 bases cost vs league average, across 142 pitches — 1.1 per 100.
His changeup isn't in the charts below — only 46 of them were tracked with velocity and movement data this season.
Rarely used: sinker (1%)
How to read this chart
Mix by batter side
Compared with the league, his four-seam fastball tilts 16 points more toward righties.
How to read this chart
Codi Heuer's pitch movement, 2026
How to read this chart
By appearance
One point per outing — how his velocity, movement, and pitch mix have moved across the season, with league context for scale. Each pitch keeps the same color in every chart. His changeup isn't in these charts — only 46 of them were tracked with velocity and movement data this season.
Platoon splits
Platoon splits (EB/PA allowed)
Better vs RHB than vs LHB by 0.040 EB/PA allowed (modeled).
50% probable range: +0.031 to +0.048
vs LHB: shrunk estimate 0.509 EB/PA, 50% probable range 0.489 to 0.532, based on 26 plate appearances. Raw (unshrunk) rate: 0.370 EB/PA. League median vs LHB: 0.453 EB/PA.
Raw vs LHB rate (0.370) is off this scale — small samples like this are exactly why the shrunk estimate (the dot) is the trustworthy number, not the raw one.
vs RHB: shrunk estimate 0.469 EB/PA, 50% probable range 0.447 to 0.490, based on 20 plate appearances. Raw (unshrunk) rate: 0.604 EB/PA. League median vs RHB: 0.433 EB/PA.
Raw vs RHB rate (0.604) is off this scale — small samples like this are exactly why the shrunk estimate (the dot) is the trustworthy number, not the raw one.
About the typical split for a righty arm (median 0.041). He allows more than the league median against both sides.
How to read this chart
- Tap or hover any mark for its number, or tab to a row for all of them.
- His raw rate is the unshrunk number against that side — small samples make it noisy, which is why the model pulls his estimate toward a more trustworthy value.
- “Middle half of the league” is the 25th–75th percentile of all pitchers against that side.
- These are bases allowed, so lower is better. Weighted by how often he faces each side, the two splits average back to his modeled overall EB/PA allowed — not the xEB/PA headline at the top of the page, which folds in strikeouts and walks differently.
- Shrunk splits beat raw splits on held-out seasons, most decisively at low batters-faced counts (relievers especially), and converge with the raw numbers as exposure builds.
Contact allowed
Batters go to the pull side off him most often, but the hardest contact goes up the middle.
Pull and oppo are relative to each batter's stance, so this pools all the hitters he faced.
Batted balls allowed
Luck check
Escaped damage once — a crushed ball the simulator scores as a near-certain hit died in a glove behind him.
Burned once — a ball with a hit probability under 20% that found grass anyway.
How to read this chart
Best games
Best games
His best outings this season by bases saved vs a replacement arm.
- vs RedsMay 17, 2026
9 BF · 2 K, 1 BB, 3 H
- Bases allowed
- 2.8
- Above replacement
- +1.8
- vs Red SoxMay 30, 2026
7 BF · 1 K, 1 H, 1 HBP
- Bases allowed
- 2.0
- Above replacement
- +1.6
- vs PiratesJul 18, 2026
6 BF · 0 K, 2 H
- Bases allowed
- 1.9
- Above replacement
- +1.2
- vs TigersMay 21, 2026
2 BF · 1 K
- Bases allowed
- 0.1
- Above replacement
- +1.0
- vs YankeesJun 4, 2026
5 BF · 1 K, 1 BB, 1 H
- Bases allowed
- 2.0
- Above replacement
- +0.6