| year | team | league | level | age | pos | g | gs | inn | po | a | e | dp | tc | tsc | sb | cs | sb% | fpct | rfg | rfi | rf9i | tm share | pl share | tm rank |
| 2015 | Tri-City Dust Devils | Nwst | A- | 20 | 1B | 63 | 0 | 0.0 | 528 | 33 | 4 | 49 | 565 | 561 | 0 | 0 | .993 | 8.9 | 0.00 | 0.00 | 82.9 | 95.5 | 1 | |
| 2015 | Tri-City Dust Devils | Nwst | A- | 20 | 3B | 1 | 0 | 0.0 | 1 | 2 | 0 | 0 | 3 | 3 | 0 | 0 | 1.000 | 3.0 | 0.00 | 0.00 | 1.3 | 1.5 | 3 | |
| 2016 | Lake Elsinore Storm | Calif | A+ | 21 | 3B | 35 | 0 | 0.0 | 22 | 50 | 10 | 3 | 82 | 72 | 0 | 0 | .878 | 2.1 | 0.00 | 0.00 | 25.0 | 58.3 | 2 | |
| 2016 | Lake Elsinore Storm | Calif | A+ | 21 | 1B | 9 | 0 | 0.0 | 75 | 6 | 1 | 6 | 82 | 81 | 0 | 0 | .988 | 9.0 | 0.00 | 0.00 | 6.4 | 15.0 | 4 | |
| 2016 | Fort Wayne TinCaps | Midw | A | 21 | 1B | 40 | 0 | 0.0 | 348 | 24 | 3 | 27 | 375 | 372 | 0 | 0 | .992 | 9.3 | 0.00 | 0.00 | 28.6 | 58.8 | 2 | |
| 2016 | Fort Wayne TinCaps | Midw | A | 21 | 3B | 12 | 0 | 0.0 | 6 | 14 | 2 | 0 | 22 | 20 | 0 | 0 | .909 | 1.7 | 0.00 | 0.00 | 8.6 | 17.6 | 3 | |
| 2016 | Fort Wayne TinCaps | Midw | A | 21 | P | 3 | 0 | 0.0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 0.3 | 0.00 | 0.00 | 2.1 | 4.4 | 30 | |
| 2017 | San Antonio Missions | Tex | AA | 22 | 3B | 85 | 0 | 0.0 | 55 | 125 | 9 | 14 | 189 | 180 | 0 | 0 | .952 | 2.1 | 0.00 | 0.00 | 60.7 | 87.6 | 1 | |
| 2017 | San Antonio Missions | Tex | AA | 22 | 1B | 7 | 0 | 0.0 | 63 | 1 | 2 | 4 | 66 | 64 | 0 | 0 | .970 | 9.1 | 0.00 | 0.00 | 5.0 | 7.2 | 5 | |
| 2017 | San Antonio Missions | Tex | AA | 22 | P | 2 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 1.4 | 2.1 | 28 | |
| 2017 | Lake Elsinore Storm | Calif | A+ | 22 | 1B | 13 | 0 | 0.0 | 98 | 8 | 1 | 7 | 107 | 106 | 0 | 0 | .991 | 8.2 | 0.00 | 0.00 | 9.3 | 43.3 | 4 | |
| 2017 | Lake Elsinore Storm | Calif | A+ | 22 | 3B | 4 | 0 | 0.0 | 3 | 7 | 0 | 1 | 10 | 10 | 0 | 0 | 1.000 | 2.5 | 0.00 | 0.00 | 2.9 | 13.3 | 5 | |
| 2017 | Lake Elsinore Storm | Calif | A+ | 22 | LF | 1 | 0 | 0.0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | 0.00 | 0.00 | 0.7 | 3.3 | 11 | |
| 2018 | El Paso Chihuahuas | PCL | AAA | 23 | 3B | 19 | 0 | 0.0 | 12 | 43 | 1 | 2 | 56 | 55 | 0 | 0 | .982 | 2.9 | 0.00 | 0.00 | 13.7 | 76.0 | 3 | |
| 2018 | El Paso Chihuahuas | PCL | AAA | 23 | 1B | 9 | 0 | 0.0 | 47 | 4 | 2 | 6 | 53 | 51 | 0 | 0 | .962 | 5.7 | 0.00 | 0.00 | 6.5 | 36.0 | 4 | |
| 2018 | San Antonio Missions | Tex | AA | 23 | 3B | 101 | 0 | 0.0 | 71 | 161 | 12 | 10 | 244 | 232 | 0 | 0 | .951 | 2.3 | 0.00 | 0.00 | 73.2 | 90.2 | 1 | |
| 2018 | San Antonio Missions | Tex | AA | 23 | 1B | 1 | 0 | 0.0 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | 0.00 | 0.00 | 0.7 | 0.9 | 6 | |
| 2019 | San Diego Padres | NL | MLB | 24 | 3B | 36 | 28 | 259.0 | 7 | 57 | 2 | 2 | 66 | 64 | 0 | 0 | .970 | 1.8 | 0.25 | 2.25 | 22.2 | 52.2 | 2 | |
| 2019 | San Diego Padres | NL | MLB | 24 | 2B | 21 | 17 | 139.2 | 15 | 41 | 0 | 5 | 56 | 56 | 0 | 0 | 1.000 | 2.7 | 0.40 | 3.60 | 13.0 | 30.4 | 4 | |
| 2019 | San Diego Padres | NL | MLB | 24 | P | 2 | 0 | 2.0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 0.5 | 0.50 | 4.50 | 1.2 | 2.9 | 30 | |
| 2019 | San Diego Padres | NL | MLB | 24 | 1B | 1 | 0 | 1.0 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | 1.00 | 9.00 | 0.6 | 1.4 | 5 | |
| 2019 | El Paso Chihuahuas | PCL | AAA | 24 | 3B | 32 | 0 | 0.0 | 14 | 47 | 5 | 3 | 66 | 61 | 0 | 0 | .924 | 1.9 | 0.00 | 0.00 | 22.9 | 42.1 | 3 | |
| 2019 | El Paso Chihuahuas | PCL | AAA | 24 | 1B | 29 | 0 | 0.0 | 214 | 16 | 1 | 26 | 231 | 230 | 0 | 0 | .996 | 7.9 | 0.00 | 0.00 | 20.7 | 38.2 | 3 | |
| 2019 | El Paso Chihuahuas | PCL | AAA | 24 | 2B | 15 | 0 | 0.0 | 26 | 27 | 0 | 9 | 53 | 53 | 0 | 0 | 1.000 | 3.5 | 0.00 | 0.00 | 10.7 | 19.7 | 5 | |
| 2020 | San Diego Padres | NL | MLB | 25 | DH | 10 | 6 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 16.7 | 50.0 | 2 | |
| 2020 | Seattle Mariners | AL | MLB | 25 | 2B | 10 | 10 | 83.0 | 13 | 21 | 1 | 6 | 35 | 34 | 0 | 0 | .971 | 3.4 | 0.41 | 3.69 | 16.7 | 43.5 | 3 | |
| 2020 | Seattle Mariners | AL | MLB | 25 | DH | 9 | 9 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 15.0 | 39.1 | 4 | |
| 2020 | San Diego Padres | NL | MLB | 25 | 1B | 5 | 4 | 36.0 | 30 | 3 | 0 | 2 | 33 | 33 | 0 | 0 | 1.000 | 6.6 | 0.92 | 8.28 | 8.3 | 25.0 | 4 | |
| 2020 | Seattle Mariners | AL | MLB | 25 | 3B | 4 | 4 | 34.0 | 11 | 8 | 1 | 2 | 20 | 19 | 0 | 0 | .950 | 4.8 | 0.56 | 5.04 | 6.7 | 17.4 | 2 | |
| 2020 | San Diego Padres | NL | MLB | 25 | 3B | 2 | 2 | 18.0 | 0 | 6 | 0 | 0 | 6 | 6 | 0 | 0 | 1.000 | 3.0 | 0.33 | 2.97 | 3.3 | 10.0 | 3 | |
| 2021 | Seattle Mariners | AL | MLB | 26 | 1B | 106 | 101 | 915.0 | 740 | 73 | 1 | 78 | 814 | 813 | 0 | 0 | .999 | 7.7 | 0.89 | 8.01 | 65.4 | 69.7 | 1 | |
| 2021 | Seattle Mariners | AL | MLB | 26 | DH | 26 | 26 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 16.0 | 17.1 | 3 | |
| 2021 | Seattle Mariners | AL | MLB | 26 | 2B | 21 | 19 | 153.1 | 32 | 38 | 2 | 16 | 72 | 70 | 0 | 0 | .972 | 3.3 | 0.46 | 4.14 | 13.0 | 13.8 | 3 | |
| 2021 | Seattle Mariners | AL | MLB | 26 | 3B | 5 | 5 | 39.0 | 2 | 4 | 1 | 0 | 7 | 6 | 0 | 0 | .857 | 1.2 | 0.15 | 1.35 | 3.1 | 3.3 | 3 | |
| 2022 | Seattle Mariners | AL | MLB | 27 | 1B | 127 | 124 | 1,084.1 | 816 | 72 | 3 | 73 | 891 | 888 | 0 | 0 | .997 | 7.0 | 0.82 | 7.38 | 78.4 | 90.7 | 1 | |
| 2022 | Seattle Mariners | AL | MLB | 27 | DH | 8 | 8 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 4.9 | 5.7 | 10 | |
| 2022 | Seattle Mariners | AL | MLB | 27 | 3B | 6 | 6 | 47.0 | 4 | 8 | 0 | 1 | 12 | 12 | 0 | 0 | 1.000 | 2.0 | 0.26 | 2.34 | 3.7 | 4.3 | 3 | |
| 2022 | Seattle Mariners | AL | MLB | 27 | 2B | 1 | 0 | 1.0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | 1.00 | 9.00 | 0.6 | 0.7 | 6 | |
| 2023 | Seattle Mariners | AL | MLB | 28 | 1B | 158 | 154 | 1,360.0 | 1106 | 104 | 1 | 106 | 1211 | 1210 | 0 | 0 | .999 | 7.7 | 0.89 | 8.01 | 97.5 | 100.0 | 1 | |
| 2024 | Seattle Mariners | AL | MLB | 29 | 1B | 87 | 82 | 735.0 | 580 | 65 | 4 | 54 | 649 | 645 | 0 | 0 | .994 | 7.4 | 0.88 | 7.92 | 53.7 | 98.9 | 1 | |
| 2024 | Cincinnati Reds | NL | MLB | 29 | 1B | 46 | 42 | 370.0 | 262 | 30 | 1 | 28 | 293 | 292 | 0 | 0 | .997 | 6.3 | 0.79 | 7.11 | 28.4 | 88.5 | 2 | |
| 2024 | Cincinnati Reds | NL | MLB | 29 | DH | 6 | 6 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 3.7 | 11.5 | 12 | |
| 2024 | Seattle Mariners | AL | MLB | 29 | 2B | 1 | 0 | 1.0 | 1 | 1 | 0 | 0 | 2 | 2 | 0 | 0 | 1.000 | 2.0 | 2.00 | 18.00 | 0.6 | 1.1 | 6 | |
| 2024 | Seattle Mariners | AL | MLB | 29 | DH | 1 | 1 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 0.6 | 1.1 | 15 | |
| 2025 | Minnesota Twins | AL | MLB | 30 | 1B | 101 | 91 | 812.1 | 634 | 58 | 1 | 39 | 693 | 692 | 0 | 0 | .999 | 6.9 | 0.85 | 7.65 | 62.3 | 100.0 | 1 | |
| 2025 | Toronto Blue Jays | AL | MLB | 30 | 1B | 23 | 17 | 164.1 | 121 | 16 | 2 | 8 | 139 | 137 | 0 | 0 | .986 | 6.0 | 0.83 | 7.47 | 14.2 | 62.2 | 2 | |
| 2025 | Toronto Blue Jays | AL | MLB | 30 | DH | 5 | 5 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 3.1 | 13.5 | 7 | |
| 2025 | Minnesota Twins | AL | MLB | 30 | 2B | 1 | 0 | 1.0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | 1.00 | 9.00 | 0.6 | 1.0 | 10 | |
| Tot: | MLB (7 yrs) | MLB | 1B | 654 | 615 | 5,477.3 | 4290 | 421 | 13 | 389 | 4724 | 4711 | 0 | 0 | .997 | 7.2 | 0.86 | 7.74 | ||||||
| Tot: | MLB (5 yrs) | MLB | DH | 65 | 61 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0 | |||||||||
| Tot: | MLB (6 yrs) | MLB | 2B | 55 | 46 | 378.3 | 62 | 102 | 3 | 27 | 167 | 164 | 0 | 0 | .982 | 3.0 | 0.43 | 3.90 | ||||||
| Tot: | MLB (4 yrs) | MLB | 3B | 53 | 45 | 397.0 | 24 | 83 | 4 | 5 | 111 | 107 | 0 | 0 | .964 | 2.0 | 0.27 | 2.43 | ||||||
| Tot: | MLB (1 yrs) | MLB | P | 2 | 0 | 2.0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 0.5 | 0.50 | 4.50 | ||||||
| Tot: | AAA (2 yrs) | AAA | 3B | 51 | 0 | 0.0 | 26 | 90 | 6 | 5 | 122 | 116 | 0 | 0 | .951 | 2.3 | ||||||||
| Tot: | AAA (2 yrs) | AAA | 1B | 38 | 0 | 0.0 | 261 | 20 | 3 | 32 | 284 | 281 | 0 | 0 | .989 | 7.4 | ||||||||
| Tot: | AAA (1 yrs) | AAA | 2B | 15 | 0 | 0.0 | 26 | 27 | 0 | 9 | 53 | 53 | 0 | 0 | 1.000 | 3.5 | ||||||||
| Tot: | AA (2 yrs) | AA | 3B | 186 | 0 | 0.0 | 126 | 286 | 21 | 24 | 433 | 412 | 0 | 0 | .952 | 2.2 | ||||||||
| Tot: | AA (2 yrs) | AA | 1B | 8 | 0 | 0.0 | 64 | 1 | 2 | 5 | 67 | 65 | 0 | 0 | .970 | 8.1 | ||||||||
| Tot: | AA (1 yrs) | AA | P | 2 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0 | |||||||||
| Tot: | A+ (2 yrs) | A+ | 3B | 39 | 0 | 0.0 | 25 | 57 | 10 | 4 | 92 | 82 | 0 | 0 | .891 | 2.1 | ||||||||
| Tot: | A+ (2 yrs) | A+ | 1B | 22 | 0 | 0.0 | 173 | 14 | 2 | 13 | 189 | 187 | 0 | 0 | .989 | 8.5 | ||||||||
| Tot: | A+ (1 yrs) | A+ | LF | 1 | 0 | 0.0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | ||||||||
| Tot: | A (1 yrs) | A | 1B | 40 | 0 | 0.0 | 348 | 24 | 3 | 27 | 375 | 372 | 0 | 0 | .992 | 9.3 | ||||||||
| Tot: | A (1 yrs) | A | 3B | 12 | 0 | 0.0 | 6 | 14 | 2 | 0 | 22 | 20 | 0 | 0 | .909 | 1.7 | ||||||||
| Tot: | A (1 yrs) | A | P | 3 | 0 | 0.0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 0.3 | ||||||||
| Tot: | A- (1 yrs) | A- | 1B | 63 | 0 | 0.0 | 528 | 33 | 4 | 49 | 565 | 561 | 0 | 0 | .993 | 8.9 | ||||||||
| Tot: | A- (1 yrs) | A- | 3B | 1 | 0 | 0.0 | 1 | 2 | 0 | 0 | 3 | 3 | 0 | 0 | 1.000 | 3.0 |
| year | category | pos P | pos C | pos 1B | pos 2B | pos 3B | pos SS | pos LF | pos CF | pos RF | pos OF | pos DH |
| 2015 | Minor | - | - | 63 | - | 1 | - | - | - | - | - | - |
| 2016 | Minor | 3 | - | 49 | - | 47 | - | - | - | - | - | - |
| 2017 | Minor | 2 | - | 20 | - | 89 | - | 1 | - | - | - | - |
| 2018 | Minor | - | - | 10 | - | 120 | - | - | - | - | - | - |
| 2019 | Minor | - | - | 29 | 15 | 32 | - | - | - | - | - | - |
| 2019 | MLB | 2 | - | 1 | 21 | 36 | - | - | - | - | - | - |
| 2020 | MLB | - | - | 5 | 10 | 6 | - | - | - | - | - | 19 |
| 2021 | MLB | - | - | 106 | 21 | 5 | - | - | - | - | - | 26 |
| 2022 | MLB | - | - | 127 | 1 | 6 | - | - | - | - | - | 8 |
| 2023 | MLB | - | - | 158 | - | - | - | - | - | - | - | - |
| 2024 | MLB | - | - | 133 | 1 | - | - | - | - | - | - | 7 |
| 2025 | MLB | - | - | 124 | 1 | - | - | - | - | - | - | 5 |