Current snapshot
| Age | 31 |
| Height | 6' 0" |
| Weight | 225 lb |
| Debut | 2019-06-02 |
C · Bats/Throws R/R · 6' 0", 225 lb · Age 31
| PA | R | H | HR | SB | AVG | OBP | SLG | OPS | |
|---|---|---|---|---|---|---|---|---|---|
| 2024 | 93 | 5 | 15 | 1 | 0 | .167 | .183 | .211 | .394 |
| 2025 | 88 | 12 | 17 | 1 | 0 | .221 | .299 | .299 | .598 |
| 2026 | 30 | 3 | 6 | 1 | 0 | .222 | .300 | .407 | .707 |
| 8 Seasons | 1005 | 104 | 192 | 20 | 4 | .211 | .281 | .318 | .599 |
The headline weighs outcome stats (xwOBA, barrels); each bar averages its full strip group below. 100 = best in MLB.
Rolling bands shrink current-season signal toward the preseason prior until the sample earns more weight.
| xwOBA preseason | 0.278 |
| xwOBA current pace | 0.287 |
| xwOBA rolling p50 | 0.279 |
| Observed weight | 15% |
100th = best in MLB.
Our research metrics for how this hitter controls the strike zone and handles each pitch family.
Live snapshot series; true 50/100 PA windows require PA-level logs
No Live State xwOBA snapshots are available for this player.
26 Statcast batted-ball coordinates from the pitch-event feed (2026). Direction profile remains as the v1 context layer when coordinate density is limited.
Aggregate zone metrics from seasonal Statcast leaderboards.
| Age | 31 |
| Height | 6' 0" |
| Weight | 225 lb |
| Debut | 2019-06-02 |
No Live State delta is available for this profile yet.
| Module | Cards | Latest | Signal |
|---|---|---|---|
| No Mithrandir card history is available for this player yet. | |||
| 2026-03-20 @ CLE0 HR | 0 RBI / 1 Ch | 0 E | 2-4 | K, 2 R |
| 2026-03-19 @ ATH0 HR | 0 RBI / 3 Ch | 0 E | 0-1 |