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 | 20 | 20 | 108.0 | 6 | 6 | 0 | 0 | 4.27 | 3.91 | 19.8% | 7.2% | 12.6% | — | — | — | — | 172 | 8.58 |
| 2026 |
| 14 |
| 14 |
| 77.0 |
| 5 |
| 4 |
| 0 |
| 0 |
| 5.14 |
| 3.89 |
| 17.6% |
| 8.2% |
| 9.4% |
| .345 |
| .293 |
| 63.9% |
| 40.3% |
| 105 |
| 7.50 |
| 2025 | 33 | 33 | 179.3 | 6 | 15 | 0 | 0 | 4.12 | 3.91 | 20.0% | 6.8% | 13.2% | .327 | .289 | 69.7% | 44.3% | 261 | 7.91 |
| 2024 | 31 | 31 | 178.0 | 11 | 12 | 0 | 0 | 4.25 | 4.01 | 21.5% | 6.5% | 15.0% | .323 | .306 | 73.1% | 39.8% | 300 | 9.68 |
| 2023 | 33 | 32 | 195.3 | 13 | 9 | 0 | 0 | 4.24 | 3.70 | 25.5% | 6.7% | 18.8% | .315 | .309 | 71.8% | 44.2% | 395 | 11.97 |
| 2022 | 34 | 32 | 169.7 | 6 | 13 | 0 | 0 | 3.87 | 3.74 | 20.1% | 8.7% | 11.4% | .320 | .325 | 73.4% | 49.9% | 239 | 7.03 |
| 2021 | 25 | 25 | 107.0 | 6 | 11 | 0 | 0 | 6.06 | 4.21 | 19.5% | 10.4% | 9.1% | .362 | .387 | 68.3% | 41.0% | 56 | 2.24 |
| 2020 | 5 | 5 | 21.7 | 1 | 1 | 0 | 0 | 2.91 | 6.65 | 18.4% | 20.7% | -2.3% | .370 | .104 | 93.8% | 42.3% | 40 | 8.00 |
| 2019 | 11 | 11 | 48.0 | 1 | 5 | 0 | 0 | 7.13 | 3.08 | 28.5% | 7.0% | 21.5% | .285 | .475 | 59.6% | 40.7% | 25 | 2.27 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
4-Seam FastballFF | 29.1% | 93.2 | 2355 | +16.4 | +8.6 | 6.58 | 10.9% | 46.9% | 21.9% | 25.5% | 11.5% | 0.290 |
SweeperST | 24.5% | 82.1 |
| FF | ST | SI | CH | CU | SL | |
|---|---|---|---|---|---|---|
| Usage | 29% | 25% | 22% | 15% | 6% | 3% |
| MPH | 93.2 | 82.1 | 92.2 | 88.9 | 77.8 | 88.7 |
| RHP Avg | 95.0 | 83.3 | 94.3 | 86.9 | 80.2 | 86.7 |
| 2669 |
| +2.0 |
| -17.4 |
| 6.56 |
| 27.0% |
| 48.1% |
| 28.4% |
| 31.0% |
| 15.8% |
| 0.284 |
SinkerSI | 22.1% | 92.2 | 2331 | +7.0 | +15.1 | 6.64 | 9.1% | 52.1% | 23.3% | 25.7% | 15.4% | 0.419 |
ChangeupCH | 14.8% | 88.9 | 1555 | +2.7 | +12.2 | 6.56 | 28.6% | 40.8% | 26.5% | 31.0% | 16.7% | 0.350 |
CurveballCU | 6.4% | 77.8 | 2690 | -13.4 | -14.9 | 6.41 | 33.3% | 42.9% | 38.1% | 8.3% | 20.0% | 0.186 |
SliderSL | 3.0% | 88.7 | 2468 | +4.9 | -3.7 | 6.48 | 11.1% | 40.0% | 20.0% | 83.3% | 0.0% | 0.138 |
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.30′ 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.