Each bar is one SP, ordered left-to-right by Value (blended). Center dot is VORP; whiskers span V⁻ → V⁺. This player is highlighted in blue.
| Yr | G | GS | IP | W | L | SV | HLD | ERA | FIP | K% | BB% | K-BB% | xwOBA | BABIP | LOB% | GB% | Pts | PPG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Proj | 17 | 13 | 78.0 | 4 | 5 | 0 | 0 | 4.44 | 4.25 | 20.5% | 7.3% | 13.2% | — | — | — | — | 119 | 6.99 |
43 BF — below qualified cutoff. Percentiles vs. qualified pool (faded).
| 2026 |
| 2 |
| 2 |
| 11.0 |
| 0 |
| 1 |
| 0 |
| 0 |
| 4.09 |
| 5.46 |
| 37.2% |
| 4.7% |
| 32.5% |
| .320 |
| .190 |
| 68.2% |
| 36.0% |
| 24 |
| 12.00 |
| 2025 | 32 | 29 | 177.0 | 11 | 10 | 0 | 0 | 4.17 | 3.81 | 20.0% | 6.3% | 13.7% | .305 | .287 | 70.6% | 40.2% | 311 | 9.72 |
| 2024 | 25 | 25 | 133.3 | 9 | 10 | 0 | 0 | 4.05 | 4.20 | 22.2% | 9.2% | 13.0% | .332 | .259 | 66.8% | 42.3% | 237 | 9.48 |
| 2023 | 35 | 35 | 184.0 | 13 | 8 | 0 | 0 | 4.50 | 4.64 | 21.4% | 7.5% | 13.9% | .338 | .297 | 74.8% | 40.2% | 313 | 8.94 |
| 2022 | 25 | 23 | 134.3 | 8 | 9 | 0 | 1 | 3.55 | 3.96 | 17.0% | 6.6% | 10.4% | .329 | .308 | 76.8% | 40.3% | 222 | 8.88 |
| 2021 | 14 | 14 | 58.3 | 0 | 8 | 0 | 0 | 7.25 | 6.72 | 19.1% | 10.2% | 8.9% | .380 | .298 | 67.3% | 30.2% | -1 | -0.07 |
| 2020 | 4 | 4 | 18.7 | 1 | 1 | 0 | 0 | 4.82 | 2.67 | 26.5% | 14.5% | 12.0% | .334 | .306 | 63.0% | 30.6% | 31 | 7.75 |
Expected run-value conceded per pitch against a rational hitter, standardized against the season. 100 = avg · 110 = 1 SD better.
| Pitch | Usage | Velo | Spin | IVB | HB | Ext | Whiff% | Zone% | CSW% | Chase% | PutAway% | xwOBA |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
Split-FingerFS | 36.3% | 82.5 | 1221 | +10.9 | +10.8 | 6.27 | 44.4% | 41.4% | 37.9% | 52.9% | 50.0% | 0.059 |
4-Seam FastballFF | 21.3% | 93.3 |
| FS | FF | SI | CU | FC | SL | |
|---|---|---|---|---|---|---|
| Usage | 36% | 21% | 14% | 11% | 10% | 8% |
| MPH | 82.5 | 93.3 | 92.8 | 77.6 | 86.7 | 83.5 |
| RHP Avg | 86.7 | 95.0 | 94.3 | 80.2 | 89.8 | 86.7 |
| 2229 |
| +18.4 |
| +5.3 |
| 6.18 |
| 0.0% |
| 52.9% |
| 29.4% |
| 50.0% |
| 0.0% |
| 0.908 |
SinkerSI | 13.8% | 92.8 | 2219 | +12.1 | +15.5 | 6.27 | 0.0% | 36.4% | 18.2% | 0.0% | 33.3% | 0.045 |
CurveballCU | 11.3% | 77.6 | 2864 | -13.3 | -8.0 | 6.11 | 14.3% | 33.3% | 11.1% | 66.7% | 0.0% | 1.374 |
CutterFC | 10.0% | 86.7 | 2304 | +4.7 | -5.1 | 6.10 | 16.7% | 87.5% | 37.5% | 100.0% | 100.0% | 0.389 |
SliderSL | 7.5% | 83.5 | 2626 | +4.4 | -7.2 | 6.25 | 50.0% | 50.0% | 33.3% | 33.3% | 33.3% | 0.000 |
Commit at the decision point, then fast-forward 150ms. Where is each pitch when your bat crosses the zone? Two views of the same moment — catcher-facing and from the side.
Each pitch is launched from a shared decision point (4.38′ height) and advanced using its own Statcast kinematics (release velocity + constant acceleration, so gravity, drag, and Magnus are all in the curve). RHP.
Where pitches are when the hitter commits — and where they end up. Tighter cluster on the left = more deceptive arsenal.
Decision point computed from Statcast kinematics (vx0/vy0/vz0, ax/ay/az) by projecting each pitch back to y = 23 ft. Coordinates in catcher’s view: 1B on the left, 3B on the right. RHP.