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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2014 | 23 | SF | 73 | 73 | 269 | 31 | 82 | 10 | 2 | 1 | 18 | 0 | 16 | 33 | .305 | .343 | .368 | .711 | 3.8 |
| 2015 | 24 | SF | 100 | 100 | 382 | 59 | 119 | 27 | 2 | 8 | 37 | 3 | 38 | 42 | .312 | .378 | .455 | .833 | 7.8 |
| 2016 | 25 | SF | 127 | 127 | 464 | 67 | 111 | 21 | 7 | 10 | 62 | 5 | 50 | 47 | .239 | .315 | .379 | .694 | 7.2 |
| 2017 | 26 | SF | 138 | 138 | 511 | 60 | 147 | 28 | 5 | 10 | 53 | 4 | 46 | 54 | .288 | .347 | .421 | .768 | 7.9 |
| 2018 | 27 | SF | 102 | 102 | 358 | 38 | 91 | 14 | 1 | 4 | 24 | 4 | 26 | 30 | .254 | .307 | .332 | .639 | 3.9 |
| 2019 | 28 | SF | 103 | 103 | 344 | 33 | 81 | 17 | 1 | 3 | 27 | 4 | 36 | 38 | .235 | .310 | .317 | .627 | 1.6 |
| 2019 | 28 | NYM | 39 | 39 | 94 | 17 | 26 | 4 | 1 | 2 | 12 | 0 | 7 | 9 | .277 | .333 | .404 | .737 | 1.6 |
| 2020 | 29 | TOR | 41 | 41 | 120 | 18 | 27 | 6 | 0 | 1 | 7 | 0 | 20 | 27 | .225 | .340 | .300 | .640 | 1.1 |
| 2021 | 30 | TOR | 42 | 42 | 114 | 9 | 28 | 6 | 0 | 2 | 11 | 0 | 8 | 14 | .246 | .293 | .351 | .644 | 0.1 |
| 2021 | 30 | MIA | 53 | 53 | 122 | 8 | 21 | 3 | 0 | 1 | 7 | 2 | 9 | 20 | .172 | .241 | .221 | .462 | 0.1 |
Wore 4 distinct franchise crests across 8 seasons (2014β2021) β a true nomad. The crest trail: