| Yr | G | GS | IP | W | L | SV | HLD | ERA | FIP | K% | BB% | K-BB% | xwOBA | BABIP | LOB% | GB% | Pts | PPG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2025 | 2 | 0 | 2.0 | 0 | 0 | 0 | 0 | 13.50 | 11.10 | 0.0% | 9.1% | -9.1% | .385 | .333 | 55.6% | 30.0% | -5 | -2.50 |
16 BF — below qualified cutoff. Percentiles vs. qualified pool (faded).
| 2024 |
| 2 |
| 0 |
| 1.7 |
| 0 |
| 0 |
| 0 |
| 0 |
| 43.20 |
| 24.70 |
| 6.3% |
| 18.8% |
| -12.5% |
| .638 |
| .556 |
| 36.6% |
| 18.2% |
| -20 |
| -10.00 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
OtherFA | 83.6% | 75.6 | 1733 | +14.7 | +6.7 | 4.66 | 0.0% | 56.5% | 15.2% | 15.0% | 0.0% | 0.680 |
Slow CurveCS | 9.1% | 68.5 | 1817 |
| FA | CS | EP | |
|---|---|---|---|
| Usage | 84% | 9% | 7% |
| MPH | 75.6 | 68.5 | 57.4 |
| RHP Avg | 67.9 | — | — |
| +0.7 |
| -5.8 |
| 4.90 |
| 50.0% |
| 40.0% |
| 20.0% |
| 0.0% |
| 25.0% |
| 0.000 |
EephusEP | 7.3% | 57.4 | 1356 | +15.8 | +3.5 | 4.25 | — | 0.0% | 0.0% | 0.0% | 0.0% | — |
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 (5.00′ 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.