| Yr | G | PA | AVG | OBP | SLG | ISO | xwOBA | K% | BB% | K-BB% | HR | SB | Pts | PPG | xPPG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | 65 | 293 | .231 | .339 | .450 | .219 | .323 | 30.4% | 11.9% | 18.5% | 13 | 10 | 157 | 2.42 | — |
| 2025 | 128 | 555 | .256 |
329 PA — below qualified cutoff. Percentiles vs. qualified pool (faded).
| .320 |
| .473 |
| .217 |
| .348 |
| 26.8% |
| 5.9% |
| 20.9% |
| 26 |
| 26 |
| 306 |
| 2.39 |
| — |
| 2024 | 160 | 604 | .248 | .317 | .441 | .193 | .320 | 23.2% | 6.5% | 16.7% | 23 | 31 | 345 | 2.16 | — |
| 2023 | 84 | 329 | .225 | .311 | .377 | .152 | .314 | 23.4% | 6.1% | 17.3% | 9 | 5 | 156 | 1.86 | — |
Expected-run-value of every swing-or-take decision, against a league-average batter’s optimum. 100 = avg · 110 = 1 SD better.