Current snapshot
| Age | 30 |
| Height | 6' 0" |
| Weight | 194 lb |
| Debut | 2026-04-26 |
2B · Bats/Throws L/R · 6' 0", 194 lb · Age 30
| PA | R | H | HR | SB | AVG | OBP | SLG | OPS | |
|---|---|---|---|---|---|---|---|---|---|
| 2026 | 150 | 21 | 25 | 1 | 13 | .195 | .293 | .250 | .543 |
| 1 Seasons | 150 | 21 | 25 | 1 | 13 | .195 | .293 | .250 | .543 |
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.
Rolling player projection appears after current-season Statcast and projection joins refresh.
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
44 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 | 30 |
| Height | 6' 0" |
| Weight | 194 lb |
| Debut | 2026-04-26 |
| xwOBA Δ | -- |
| wOBA Δ | -- |
negative regression
Song’s wOBA sits at 0.269, but the quality of contact underneath says it should be 0.254 — a gap of 0.015, -0.4 standard deviations from the MLB norm over 153 PA. The results have outrun the underlying process; as the sample grows, expect the numbers to drift back toward the deserved level.
| Module | Cards | Latest | Signal |
|---|---|---|---|
| Hitting | 1 | 2026-07-01 | Impact contact was the main driver |
| Fielding | 8 | 2026-09-13 | 2 chances | 0 difficult plays | Run Exp -0.366 |
| 2026-03-23 vs SEA0 HR | 0 RBI / 0 Ch | 0 E | 0-1 | BB, K |