| Yr | G | PA | AVG | OBP | SLG | ISO | xwOBA | K% | BB% | K-BB% | HR | SB | Pts | PPG | xPPG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | 72 | 301 | .300 | .387 | .442 | .142 | .346 | 12.0% | 12.3% | -0.3% | 6 | 11 | 195 | 2.71 | — |
| 2025 | 142 | 620 | .283 |
304 PA — below qualified cutoff. Percentiles vs. qualified pool (faded).
| .344 |
| .352 |
| .069 |
| .296 |
| 14.2% |
| 7.9% |
| 6.3% |
| 3 |
| 28 |
| 315 |
| 2.22 |
| — |
| 2024 | 70 | 304 | .327 | .401 | .421 | .094 | .303 | 17.1% | 10.9% | 6.2% | 1 | 31 | 189 | 2.70 | — |
| 2023 | 28 | 84 | .295 | .329 | .333 | .038 | .269 | 16.7% | 3.6% | 13.1% | 0 | 5 | 37 | 1.32 | — |
Expected-run-value of every swing-or-take decision, against a league-average batter’s optimum. 100 = avg · 110 = 1 SD better.