Current snapshot
| Age | 29 |
| Height | 5' 10" |
| Weight | 205 lb |
| Debut | 2018-04-22 |
2B · Bats/Throws R/R · 5' 10", 205 lb · Age 29
| PA | R | H | HR | SB | AVG | OBP | SLG | OPS | |
|---|---|---|---|---|---|---|---|---|---|
| 2024 | 665 | 80 | 151 | 15 | 4 | .257 | .330 | .378 | .708 |
| 2025 | 628 | 79 | 136 | 16 | 4 | .256 | .358 | .387 | .745 |
| 2026 | 190 | 26 | 44 | 4 | 0 | .280 | .395 | .395 | .790 |
| 9 Seasons | 4491 | 565 | 1050 | 158 | 57 | .264 | .340 | .432 | .772 |
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.342 |
| xwOBA current pace | 0.342 |
| xwOBA rolling p50 | 0.342 |
| Observed weight | 48% |
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
107 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.
Aggregate Savant bat-tracking metrics; not per-swing motion capture. The full swing, with the recommended path overlaid, lives in the 3D Swing Simulator.
| Age | 29 |
| Height | 5' 10" |
| Weight | 205 lb |
| Debut | 2018-04-22 |
| xwOBA Δ | -0.000 |
| wOBA Δ | +0.046 |
negative regression
Torres’s wOBA sits at 0.388, but the quality of contact underneath says it should be 0.342 — a gap of 0.046, -1.4 standard deviations from the MLB norm over 202 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 | 2 | 2026-03-30 | Impact contact was the main driver |
| 2026-04-20 @ BOS0 HR | 1 RBI / 2 Ch | 0 E | 1-4 | BB, RBI, R |
| 2026-04-17 @ BOS0 HR | 0 RBI / 5 Ch | 0 E | 0-3 | BB |
| 2026-04-15 vs KC0 HR | 0 RBI / 3 Ch | 0 E | 3-4 |
| 2026-04-14 vs KC0 HR | 0 RBI / 0 Ch | 0 E | 0-4 |
| 2026-04-12 vs MIA0 HR | 0 RBI / 4 Ch | 0 E | 1-5 | K |