| 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 |
| 2013 | Quad Cities River Bandits | Midw | A | 21 | 2B | 17 | 0 | 0.0 | 25 | 52 | 4 | 15 | 81 | 77 | 0 | 0 | .951 | 4.5 | 0.00 | 0.00 | 12.3 | 63.0 | 3 | |
| 2013 | Quad Cities River Bandits | Midw | A | 21 | CF | 3 | 0 | 0.0 | 6 | 0 | 1 | 0 | 7 | 6 | 0 | 0 | .857 | 2.0 | 0.00 | 0.00 | 2.2 | 11.1 | 4 | |
| 2013 | Vermont Lake Monsters | NYPL | A- | 21 | 2B | 47 | 0 | 0.0 | 78 | 124 | 3 | 18 | 205 | 202 | 0 | 0 | .985 | 4.3 | 0.00 | 0.00 | 61.8 | 0.0 | 1 | |
| 2013 | Vermont Lake Monsters | NYPL | A- | 21 | LF | 3 | 0 | 0.0 | 4 | 0 | 0 | 0 | 4 | 4 | 0 | 0 | 1.000 | 1.3 | 0.00 | 0.00 | 3.9 | 0.0 | 9 | |
| 2014 | Corpus Christi Hooks | Tex | AA | 22 | 2B | 56 | 0 | 0.0 | 101 | 128 | 1 | 25 | 230 | 229 | 0 | 0 | .996 | 4.1 | 0.00 | 0.00 | 40.0 | 94.9 | 1 | |
| 2014 | Corpus Christi Hooks | Tex | AA | 22 | LF | 3 | 0 | 0.0 | 6 | 0 | 0 | 0 | 6 | 6 | 0 | 0 | 1.000 | 2.0 | 0.00 | 0.00 | 2.1 | 5.1 | 6 | |
| 2014 | Lancaster Jethawks | Calif | A+ | 22 | 2B | 64 | 0 | 0.0 | 124 | 164 | 6 | 42 | 294 | 288 | 0 | 0 | .980 | 4.5 | 0.00 | 0.00 | 45.7 | 88.9 | 1 | |
| 2015 | Fresno Grizzlies | PCL | AAA | 23 | 2B | 51 | 0 | 0.0 | 74 | 111 | 0 | 23 | 185 | 185 | 0 | 0 | 1.000 | 3.6 | 0.00 | 0.00 | 35.7 | 71.8 | 2 | |
| 2015 | Fresno Grizzlies | PCL | AAA | 23 | CF | 20 | 0 | 0.0 | 47 | 1 | 0 | 0 | 48 | 48 | 0 | 0 | 1.000 | 2.4 | 0.00 | 0.00 | 14.0 | 28.2 | 3 | |
| 2015 | Fresno Grizzlies | PCL | AAA | 23 | LF | 3 | 0 | 0.0 | 6 | 0 | 0 | 0 | 6 | 6 | 0 | 0 | 1.000 | 2.0 | 0.00 | 0.00 | 2.1 | 4.2 | 6 | |
| 2015 | Corpus Christi Hooks | Tex | AA | 23 | 2B | 41 | 0 | 0.0 | 81 | 97 | 3 | 28 | 181 | 178 | 0 | 0 | .983 | 4.3 | 0.00 | 0.00 | 29.3 | 82.0 | 2 | |
| 2015 | Corpus Christi Hooks | Tex | AA | 23 | CF | 7 | 0 | 0.0 | 11 | 0 | 0 | 0 | 11 | 11 | 0 | 0 | 1.000 | 1.6 | 0.00 | 0.00 | 5.0 | 14.0 | 4 | |
| 2015 | Corpus Christi Hooks | Tex | AA | 23 | LF | 2 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 1.4 | 4.0 | 6 | |
| 2016 | Houston Astros | AL | MLB | 24 | LF | 37 | 24 | 227.0 | 33 | 2 | 1 | 0 | 36 | 35 | 0 | 0 | .972 | 0.9 | 0.15 | 1.35 | 22.8 | 62.7 | 2 | |
| 2016 | Houston Astros | AL | MLB | 24 | DH | 8 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 4.9 | 13.6 | 7 | |
| 2016 | Houston Astros | AL | MLB | 24 | 2B | 5 | 1 | 18.0 | 2 | 5 | 1 | 1 | 8 | 7 | 0 | 0 | .875 | 1.4 | 0.39 | 3.51 | 3.1 | 8.5 | 4 | |
| 2016 | Houston Astros | AL | MLB | 24 | RF | 1 | 0 | 3.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 0.6 | 1.7 | 6 | |
| 2016 | Houston Astros | AL | MLB | 24 | CF | 1 | 0 | 2.0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | 0.50 | 4.50 | 0.6 | 1.7 | 5 | |
| 2016 | Fresno Grizzlies | PCL | AAA | 24 | 2B | 39 | 0 | 0.0 | 72 | 100 | 2 | 22 | 174 | 172 | 0 | 0 | .989 | 4.4 | 0.00 | 0.00 | 27.3 | 56.5 | 2 | |
| 2016 | Fresno Grizzlies | PCL | AAA | 24 | LF | 19 | 0 | 0.0 | 36 | 3 | 0 | 0 | 39 | 39 | 0 | 0 | 1.000 | 2.1 | 0.00 | 0.00 | 13.3 | 27.5 | 5 | |
| 2016 | Fresno Grizzlies | PCL | AAA | 24 | CF | 11 | 0 | 0.0 | 16 | 0 | 0 | 0 | 16 | 16 | 0 | 0 | 1.000 | 1.5 | 0.00 | 0.00 | 7.7 | 15.9 | 3 | |
| 2017 | Houston Astros | AL | MLB | 25 | LF | 10 | 8 | 68.0 | 10 | 0 | 0 | 0 | 10 | 10 | 0 | 0 | 1.000 | 1.0 | 0.15 | 1.35 | 6.2 | 58.8 | 6 | |
| 2017 | Houston Astros | AL | MLB | 25 | CF | 4 | 2 | 22.0 | 4 | 0 | 0 | 0 | 4 | 4 | 0 | 0 | 1.000 | 1.0 | 0.18 | 1.62 | 2.5 | 23.5 | 5 | |
| 2017 | Houston Astros | AL | MLB | 25 | DH | 1 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 0.6 | 5.9 | 11 | |
| 2017 | Fresno Grizzlies | PCL | AAA | 25 | 2B | 97 | 0 | 0.0 | 189 | 238 | 10 | 74 | 437 | 427 | 0 | 0 | .977 | 4.4 | 0.00 | 0.00 | 68.3 | 82.2 | 1 | |
| 2017 | Fresno Grizzlies | PCL | AAA | 25 | LF | 10 | 0 | 0.0 | 15 | 1 | 0 | 0 | 16 | 16 | 0 | 0 | 1.000 | 1.6 | 0.00 | 0.00 | 7.0 | 8.5 | 5 | |
| 2017 | Fresno Grizzlies | PCL | AAA | 25 | CF | 10 | 0 | 0.0 | 15 | 1 | 0 | 1 | 16 | 16 | 0 | 0 | 1.000 | 1.6 | 0.00 | 0.00 | 7.0 | 8.5 | 7 | |
| 2018 | Houston Astros | AL | MLB | 26 | LF | 61 | 45 | 392.2 | 73 | 0 | 0 | 0 | 73 | 73 | 0 | 0 | 1.000 | 1.2 | 0.19 | 1.71 | 37.7 | 62.9 | 2 | |
| 2018 | Houston Astros | AL | MLB | 26 | CF | 32 | 27 | 226.0 | 61 | 1 | 0 | 1 | 62 | 62 | 0 | 0 | 1.000 | 1.9 | 0.27 | 2.43 | 19.8 | 33.0 | 3 | |
| 2018 | Houston Astros | AL | MLB | 26 | 2B | 7 | 1 | 23.0 | 2 | 6 | 0 | 2 | 8 | 8 | 0 | 0 | 1.000 | 1.1 | 0.35 | 3.15 | 4.3 | 7.2 | 4 | |
| 2018 | Houston Astros | AL | MLB | 26 | RF | 2 | 2 | 15.0 | 4 | 0 | 0 | 0 | 4 | 4 | 0 | 0 | 1.000 | 2.0 | 0.27 | 2.43 | 1.2 | 2.1 | 6 | |
| 2018 | Houston Astros | AL | MLB | 26 | DH | 2 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 1.2 | 2.1 | 7 | |
| 2018 | Fresno Grizzlies | PCL | AAA | 26 | 2B | 25 | 0 | 0.0 | 38 | 52 | 0 | 10 | 90 | 90 | 0 | 0 | 1.000 | 3.6 | 0.00 | 0.00 | 18.0 | 65.8 | 3 | |
| 2018 | Fresno Grizzlies | PCL | AAA | 26 | CF | 14 | 0 | 0.0 | 27 | 0 | 1 | 0 | 28 | 27 | 0 | 0 | .964 | 1.9 | 0.00 | 0.00 | 10.1 | 36.8 | 4 | |
| 2019 | Houston Astros | AL | MLB | 27 | 2B | 29 | 20 | 215.0 | 33 | 50 | 0 | 6 | 83 | 83 | 0 | 0 | 1.000 | 2.9 | 0.39 | 3.51 | 17.9 | 43.9 | 2 | |
| 2019 | Houston Astros | AL | MLB | 27 | LF | 14 | 7 | 75.2 | 16 | 0 | 0 | 0 | 16 | 16 | 0 | 0 | 1.000 | 1.1 | 0.21 | 1.89 | 8.6 | 21.2 | 3 | |
| 2019 | Chicago Cubs | NL | MLB | 27 | 2B | 14 | 10 | 92.0 | 19 | 29 | 1 | 7 | 49 | 48 | 0 | 0 | .980 | 3.4 | 0.52 | 4.68 | 8.6 | 31.8 | 6 | |
| 2019 | Houston Astros | AL | MLB | 27 | CF | 11 | 9 | 70.0 | 22 | 0 | 0 | 0 | 22 | 22 | 0 | 0 | 1.000 | 2.0 | 0.31 | 2.79 | 6.8 | 16.7 | 3 | |
| 2019 | Houston Astros | AL | MLB | 27 | DH | 6 | 5 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 3.7 | 9.1 | 5 | |
| 2019 | Chicago Cubs | NL | MLB | 27 | LF | 6 | 2 | 27.0 | 11 | 0 | 0 | 0 | 11 | 11 | 0 | 0 | 1.000 | 1.8 | 0.41 | 3.69 | 3.7 | 13.6 | 5 | |
| 2019 | Chicago Cubs | NL | MLB | 27 | RF | 3 | 3 | 23.0 | 7 | 0 | 0 | 0 | 7 | 7 | 0 | 0 | 1.000 | 2.3 | 0.30 | 2.70 | 1.9 | 6.8 | 8 | |
| 2019 | Chicago Cubs | NL | MLB | 27 | CF | 1 | 0 | 1.0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1.000 | 1.0 | 1.00 | 9.00 | 0.6 | 2.3 | 4 | |
| 2020 | Oakland Athletics | AL | MLB | 28 | 2B | 43 | 31 | 258.1 | 49 | 55 | 1 | 12 | 105 | 104 | 0 | 0 | .990 | 2.4 | 0.40 | 3.60 | 71.7 | 87.8 | 1 | |
| 2020 | Oakland Athletics | AL | MLB | 28 | LF | 3 | 1 | 13.0 | 2 | 0 | 0 | 0 | 2 | 2 | 0 | 0 | 1.000 | 0.7 | 0.15 | 1.35 | 5.0 | 6.1 | 3 | |
| 2020 | Oakland Athletics | AL | MLB | 28 | DH | 2 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 3.3 | 4.1 | 5 | |
| 2021 | Oakland Athletics | AL | MLB | 29 | 2B | 89 | 53 | 520.1 | 103 | 148 | 5 | 34 | 256 | 251 | 0 | 0 | .980 | 2.8 | 0.48 | 4.32 | 54.9 | 67.9 | 1 | |
| 2021 | Oakland Athletics | AL | MLB | 29 | LF | 49 | 37 | 336.2 | 69 | 1 | 0 | 0 | 70 | 70 | 0 | 0 | 1.000 | 1.4 | 0.21 | 1.89 | 30.2 | 37.4 | 2 | |
| 2021 | Oakland Athletics | AL | MLB | 29 | DH | 2 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 1.2 | 1.5 | 13 | |
| 2021 | Oakland Athletics | AL | MLB | 29 | SS | 1 | 0 | 2.0 | 0 | 2 | 0 | 0 | 2 | 2 | 0 | 0 | 1.000 | 2.0 | 1.00 | 9.00 | 0.6 | 0.8 | 7 | |
| 2022 | Oakland Athletics | AL | MLB | 30 | 2B | 89 | 67 | 611.2 | 126 | 171 | 3 | 35 | 300 | 297 | 0 | 0 | .990 | 3.3 | 0.49 | 4.41 | 54.9 | 60.5 | 1 | |
| 2022 | Oakland Athletics | AL | MLB | 30 | LF | 65 | 61 | 507.1 | 112 | 4 | 1 | 2 | 117 | 116 | 0 | 0 | .991 | 1.8 | 0.23 | 2.07 | 40.1 | 44.2 | 1 | |
| 2022 | Oakland Athletics | AL | MLB | 30 | DH | 3 | 2 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 1.9 | 2.0 | 10 | |
| 2023 | Oakland Athletics | AL | MLB | 31 | LF | 65 | 53 | 456.0 | 101 | 5 | 3 | 1 | 109 | 106 | 0 | 0 | .972 | 1.6 | 0.23 | 2.07 | 40.1 | 52.4 | 1 | |
| 2023 | Oakland Athletics | AL | MLB | 31 | 2B | 57 | 46 | 410.0 | 103 | 96 | 4 | 21 | 203 | 199 | 0 | 0 | .980 | 3.5 | 0.49 | 4.41 | 35.2 | 46.0 | 2 | |
| 2023 | Oakland Athletics | AL | MLB | 31 | DH | 3 | 0 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 1.9 | 2.4 | 13 | |
| 2024 | Baltimore Orioles | AL | MLB | 32 | 2B | 5 | 2 | 19.0 | 3 | 5 | 0 | 0 | 8 | 8 | 0 | 0 | 1.000 | 1.6 | 0.42 | 3.78 | 3.1 | 100.0 | 6 | |
| 2024 | Baltimore Orioles | AL | MLB | 32 | LF | 1 | 0 | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | 0.0 | 0.00 | 0.00 | 0.6 | 20.0 | 8 | |
| 2024 | St. Paul Saints | IL2 | AAA | 32 | 2B | 25 | 0 | 209.0 | 31 | 53 | 1 | 14 | 85 | 84 | 0 | 0 | .988 | 3.4 | 0.40 | 3.60 | 16.8 | 54.3 | 4 | |
| 2024 | Louisville Bats | IL2 | AAA | 32 | 2B | 13 | 0 | 106.2 | 21 | 31 | 1 | 7 | 53 | 52 | 0 | 0 | .981 | 4.0 | 0.49 | 4.41 | 8.7 | 37.1 | 5 | |
| 2024 | Louisville Bats | IL2 | AAA | 32 | LF | 11 | 0 | 88.2 | 17 | 0 | 0 | 0 | 17 | 17 | 0 | 0 | 1.000 | 1.5 | 0.19 | 1.71 | 7.4 | 31.4 | 6 | |
| 2024 | St. Paul Saints | IL2 | AAA | 32 | LF | 11 | 0 | 80.2 | 18 | 0 | 0 | 0 | 18 | 18 | 0 | 0 | 1.000 | 1.6 | 0.22 | 1.98 | 7.4 | 23.9 | 6 | |
| 2024 | Louisville Bats | IL2 | AAA | 32 | RF | 9 | 0 | 76.0 | 15 | 1 | 0 | 0 | 16 | 16 | 0 | 0 | 1.000 | 1.8 | 0.21 | 1.89 | 6.0 | 25.7 | 4 | |
| 2024 | St. Paul Saints | IL2 | AAA | 32 | CF | 6 | 0 | 47.2 | 10 | 0 | 0 | 0 | 10 | 10 | 0 | 0 | 1.000 | 1.7 | 0.21 | 1.89 | 4.0 | 13.0 | 6 | |
| 2024 | St. Paul Saints | IL2 | AAA | 32 | RF | 4 | 0 | 36.0 | 7 | 0 | 0 | 0 | 7 | 7 | 0 | 0 | 1.000 | 1.8 | 0.19 | 1.71 | 2.7 | 8.7 | 10 | |
| Tot: | MLB (8 yrs) | MLB | 2B | 338 | 231 | 2,166.4 | 440 | 565 | 15 | 118 | 1020 | 1005 | 0 | 0 | .985 | 3.0 | 0.46 | 4.18 | ||||||
| Tot: | MLB (9 yrs) | MLB | LF | 311 | 238 | 2,102.8 | 427 | 12 | 5 | 3 | 444 | 439 | 0 | 0 | .989 | 1.4 | 0.21 | 1.88 | ||||||
| Tot: | MLB (4 yrs) | MLB | CF | 49 | 38 | 321.0 | 89 | 1 | 0 | 1 | 90 | 90 | 0 | 0 | 1.000 | 1.8 | 0.28 | 2.52 | ||||||
| Tot: | MLB (8 yrs) | MLB | DH | 27 | 7 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0 | |||||||||
| Tot: | MLB (3 yrs) | MLB | RF | 6 | 5 | 41.0 | 11 | 0 | 0 | 0 | 11 | 11 | 0 | 0 | 1.000 | 1.8 | 0.27 | 2.41 | ||||||
| Tot: | MLB (1 yrs) | MLB | SS | 1 | 0 | 2.0 | 0 | 2 | 0 | 0 | 2 | 2 | 0 | 0 | 1.000 | 2.0 | 1.00 | 9.00 | ||||||
| Tot: | AAA (5 yrs) | AAA | 2B | 250 | 0 | 315.2 | 425 | 585 | 14 | 150 | 1024 | 1010 | 0 | 0 | .986 | 4.0 | 3.20 | 28.84 | ||||||
| Tot: | AAA (5 yrs) | AAA | CF | 61 | 0 | 47.2 | 115 | 2 | 1 | 1 | 118 | 117 | 0 | 0 | .992 | 1.9 | 2.48 | 22.31 | ||||||
| Tot: | AAA (4 yrs) | AAA | LF | 54 | 0 | 168.4 | 92 | 4 | 0 | 0 | 96 | 96 | 0 | 0 | 1.000 | 1.8 | 0.57 | 5.13 | ||||||
| Tot: | AAA (1 yrs) | AAA | RF | 13 | 0 | 112.0 | 22 | 1 | 0 | 0 | 23 | 23 | 0 | 0 | 1.000 | 1.8 | 0.21 | 1.85 | ||||||
| Tot: | AA (2 yrs) | AA | 2B | 97 | 0 | 0.0 | 182 | 225 | 4 | 53 | 411 | 407 | 0 | 0 | .990 | 4.2 | ||||||||
| Tot: | AA (1 yrs) | AA | CF | 7 | 0 | 0.0 | 11 | 0 | 0 | 0 | 11 | 11 | 0 | 0 | 1.000 | 1.6 | ||||||||
| Tot: | AA (2 yrs) | AA | LF | 5 | 0 | 0.0 | 6 | 0 | 0 | 0 | 6 | 6 | 0 | 0 | 1.000 | 1.2 | ||||||||
| Tot: | A+ (1 yrs) | A+ | 2B | 64 | 0 | 0.0 | 124 | 164 | 6 | 42 | 294 | 288 | 0 | 0 | .980 | 4.5 | ||||||||
| Tot: | A (1 yrs) | A | 2B | 17 | 0 | 0.0 | 25 | 52 | 4 | 15 | 81 | 77 | 0 | 0 | .951 | 4.5 | ||||||||
| Tot: | A (1 yrs) | A | CF | 3 | 0 | 0.0 | 6 | 0 | 1 | 0 | 7 | 6 | 0 | 0 | .857 | 2.0 | ||||||||
| Tot: | A- (1 yrs) | A- | 2B | 47 | 0 | 0.0 | 78 | 124 | 3 | 18 | 205 | 202 | 0 | 0 | .985 | 4.3 | ||||||||
| Tot: | A- (1 yrs) | A- | LF | 3 | 0 | 0.0 | 4 | 0 | 0 | 0 | 4 | 4 | 0 | 0 | 1.000 | 1.3 |
| year | category | pos P | pos C | pos 1B | pos 2B | pos 3B | pos SS | pos LF | pos CF | pos RF | pos OF | pos DH |
| 2013 | Minor | - | - | - | 64 | - | - | 3 | 3 | - | - | - |
| 2014 | Minor | - | - | - | 120 | - | - | 3 | - | - | - | - |
| 2015 | Minor | - | - | - | 92 | - | - | 5 | 27 | - | - | - |
| 2016 | Minor | - | - | - | 39 | - | - | 19 | 11 | - | - | - |
| 2016 | MLB | - | - | - | 5 | - | - | 37 | 1 | 1 | - | 8 |
| 2017 | Minor | - | - | - | 97 | - | - | 10 | 10 | - | - | - |
| 2017 | MLB | - | - | - | - | - | - | 10 | 4 | - | - | 1 |
| 2018 | Minor | - | - | - | 25 | - | - | - | 14 | - | - | - |
| 2018 | MLB | - | - | - | 7 | - | - | 61 | 32 | 2 | - | 2 |
| 2019 | MLB | - | - | - | 43 | - | - | 20 | 12 | 3 | - | 6 |
| 2020 | MLB | - | - | - | 43 | - | - | 3 | - | - | - | 2 |
| 2021 | MLB | - | - | - | 89 | - | 1 | 49 | - | - | - | 2 |
| 2022 | MLB | - | - | - | 89 | - | - | 65 | - | - | - | 3 |
| 2023 | MLB | - | - | - | 57 | - | - | 65 | - | - | - | 3 |
| 2024 | Minor | - | - | - | 38 | - | - | 22 | 6 | 13 | - | - |
| 2024 | MLB | - | - | - | 5 | - | - | 1 | - | - | - | - |