Sport-specific career totals from the active profile tables, with VAL shown whenever the sport has a value file.
| Season | Age | Team | GP | G | AB | R | H | 2B | 3B | HR | RBI | SB | BB | SO | AVG | OBP | SLG | OPS | VAL |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2019 | 22 | SD | 94 | 94 | 253 | 29 | 63 | 15 | 0 | 8 | 32 | 1 | 25 | 64 | .249 | .315 | .403 | .718 | 3.7 |
| 2020 | 23 | SD | 18 | 18 | 36 | 4 | 10 | 0 | 1 | 1 | 4 | 1 | 1 | 4 | .278 | .316 | .417 | .733 | β |
| 2020 | 23 | CLE | 22 | 22 | 61 | 9 | 14 | 3 | 0 | 0 | 2 | 0 | 4 | 8 | .230 | .277 | .279 | .556 | β |
| 2021 | 24 | CLE | 69 | 69 | 233 | 28 | 59 | 13 | 0 | 7 | 21 | 1 | 14 | 45 | .253 | .301 | .399 | .700 | 3.4 |
| 2022 | 25 | CLE | 122 | 122 | 449 | 47 | 115 | 28 | 0 | 20 | 79 | 6 | 38 | 80 | .256 | .319 | .452 | .771 | 10 |
| 2023 | 26 | CLE | 121 | 121 | 452 | 52 | 139 | 31 | 0 | 17 | 97 | 10 | 33 | 68 | .308 | .354 | .489 | .843 | 10.9 |
| 2024 | 27 | CLE | 152 | 152 | 563 | 84 | 137 | 27 | 0 | 31 | 108 | 6 | 58 | 105 | .243 | .320 | .456 | .776 | 13.6 |
| 2025 | 28 | AZ | 93 | 93 | 349 | 49 | 102 | 19 | 1 | 11 | 59 | 11 | 37 | 49 | .292 | .360 | .447 | .807 | 5.3 |
| 2025 | 28 | SEA | 54 | 54 | 194 | 32 | 58 | 10 | 0 | 9 | 33 | 19 | 11 | 34 | .299 | .341 | .490 | .831 | 5.3 |
| 2026 | 29 | SEA | 80 | 80 | 315 | 32 | 81 | 11 | 0 | 8 | 34 | 15 | 27 | 45 | .257 | .321 | .368 | .689 | 4.9 |
Wore 4 distinct franchise crests across 8 seasons (2019β2026) β a true nomad. The crest trail: