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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2018 | 23 | STL | 61 | 61 | 130 | 29 | 33 | 5 | 0 | 9 | 23 | 2 | 7 | 57 | .254 | .303 | .500 | .803 | 3.9 |
| 2019 | 24 | STL | 60 | 60 | 141 | 18 | 37 | 6 | 0 | 5 | 16 | 1 | 10 | 53 | .262 | .311 | .411 | .722 | 2.2 |
| 2020 | 25 | STL | 50 | 50 | 139 | 20 | 24 | 5 | 0 | 7 | 19 | 3 | 15 | 43 | .173 | .261 | .360 | .621 | 1.8 |
| 2021 | 26 | STL | 138 | 138 | 482 | 89 | 138 | 26 | 2 | 34 | 80 | 15 | 38 | 168 | .286 | .352 | .560 | .912 | 14.4 |
| 2022 | 27 | STL | 96 | 96 | 334 | 56 | 76 | 11 | 1 | 14 | 58 | 14 | 38 | 103 | .228 | .308 | .392 | .700 | 7.7 |
| 2023 | 28 | STL | 72 | 72 | 238 | 27 | 55 | 14 | 0 | 9 | 21 | 5 | 28 | 67 | .231 | .312 | .403 | .715 | 3.8 |
| 2024 | 29 | BOS | 113 | 113 | 411 | 74 | 99 | 18 | 0 | 31 | 61 | 4 | 53 | 159 | .241 | .336 | .511 | .847 | 11.6 |
| 2025 | 30 | BAL | 54 | 54 | 181 | 22 | 36 | 6 | 1 | 9 | 26 | 4 | 22 | 51 | .199 | .292 | .392 | .684 | 3.4 |
| 2026 | 31 | BAL | 52 | 52 | 139 | 17 | 26 | 6 | 0 | 3 | 9 | 1 | 18 | 44 | .187 | .289 | .295 | .584 | 1.3 |
Wore 3 distinct franchise crests across 9 seasons (2018β2026) β a true nomad. The crest trail: