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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2013 | 22 | SEA | 52 | 52 | 173 | 22 | 37 | 5 | 0 | 5 | 14 | 1 | 16 | 49 | .214 | .290 | .329 | .619 | 2.2 |
| 2014 | 23 | SEA | 131 | 131 | 438 | 51 | 87 | 20 | 2 | 22 | 60 | 0 | 17 | 158 | .199 | .254 | .404 | .658 | 7.6 |
| 2015 | 24 | SEA | 112 | 112 | 350 | 28 | 61 | 11 | 0 | 11 | 28 | 0 | 21 | 132 | .174 | .230 | .300 | .530 | 2.7 |
| 2016 | 25 | SEA | 55 | 55 | 164 | 16 | 34 | 7 | 0 | 12 | 31 | 0 | 21 | 65 | .207 | .318 | .470 | .788 | 3.7 |
| 2017 | 26 | SEA | 124 | 124 | 387 | 52 | 97 | 25 | 0 | 25 | 64 | 1 | 39 | 160 | .251 | .331 | .509 | .840 | 8.8 |
| 2018 | 27 | SEA | 113 | 113 | 373 | 37 | 75 | 18 | 0 | 20 | 44 | 0 | 24 | 150 | .201 | .259 | .410 | .669 | 5.4 |
| 2019 | 28 | TB | 90 | 90 | 266 | 30 | 44 | 10 | 1 | 9 | 32 | 0 | 20 | 98 | .165 | .232 | .312 | .544 | 1.7 |
| 2020 | 29 | TB | 28 | 28 | 75 | 8 | 11 | 4 | 0 | 4 | 10 | 0 | 6 | 37 | .147 | .238 | .360 | .598 | β |
| 2021 | 30 | TB | 109 | 109 | 333 | 64 | 72 | 11 | 2 | 33 | 62 | 0 | 34 | 132 | .216 | .301 | .559 | .860 | 9.9 |
| 2022 | 31 | TB | 36 | 36 | 115 | 7 | 17 | 3 | 0 | 5 | 16 | 0 | 6 | 46 | .148 | .195 | .304 | .499 | 0.8 |
| 2023 | 32 | CLE | 42 | 42 | 124 | 11 | 22 | 7 | 0 | 3 | 11 | 0 | 15 | 61 | .177 | .271 | .306 | .577 | 1 |
Wore 3 distinct franchise crests across 11 seasons (2013β2023) β a true nomad. The crest trail: