career regular season statistics    
  
  | Year | Team | League | 
        GP         Games Played 
       | 
      
        AB         At Bats	 
       | 
      
        R         Runs	 
       | 
      
        H         Hits	 
       | 
      
        2B         Doubles	 
       | 
      
        3B         Triples	 
       | 
      
        HR         Home Runs	 
       | 
      
        RBI         Runs Batted In	 
       | 
      
        BB         Walks	 
       | 
      
        SO         Strikeouts	 
       | 
      
        SB         Stolen Bases	 
       | 
      
        CS         Caught Stealing	 
       | 
      
        AVG         Batting Average	 
       | 
      
        OBP         On-Base Percentage	 
       | 
      
        SLG         Slugging Percentage 
       | 
      
        OPS         On-Base Plus Slugging 
       | 
    
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2025 | St. Louis | NL | 135 | 490 | 70 | 126 | 31 | 1 | 20 | 80 | 44 | 142 | 5 | 1 | .257 | .344 | .447 | .791 | 
| 2024 | St. Louis | NL | 84 | 301 | 48 | 79 | 17 | 0 | 15 | 36 | 45 | 96 | 4 | 1 | .262 | .380 | .468 | .848 | 
| 2023 | St. Louis | NL | 125 | 428 | 55 | 113 | 27 | 0 | 20 | 67 | 51 | 111 | 6 | 3 | .264 | .358 | .467 | .826 | 
| 2022 | Chicago Cubs | NL | 113 | 416 | 65 | 101 | 23 | 2 | 22 | 55 | 45 | 103 | 4 | 2 | .243 | .349 | .466 | .815 | 
| 2021 | Chicago Cubs | NL | 128 | 413 | 61 | 98 | 20 | 0 | 21 | 57 | 52 | 138 | 5 | 4 | .237 | .340 | .438 | .778 | 
| 2021 | Iowa | AAA | 3 | 11 | 3 | 2 | 0 | 0 | 2 | 2 | 1 | 3 | 0 | 0 | .182 | .250 | .727 | .977 | 
| 2020 | Chicago Cubs | NL | 57 | 189 | 37 | 46 | 10 | 0 | 7 | 26 | 20 | 57 | 1 | 2 | .243 | .356 | .407 | .763 | 
| 2019 | Chicago Cubs | NL | 105 | 360 | 57 | 98 | 18 | 2 | 24 | 64 | 38 | 102 | 1 | 2 | .272 | .355 | .533 | .888 | 
| 2019 | Iowa | AAA | 3 | 7 | 3 | 1 | 1 | 0 | 0 | 0 | 1 | 4 | 0 | 0 | .143 | .333 | .286 | .619 | 
| 2018 | Chicago Cubs | NL | 138 | 474 | 50 | 118 | 27 | 5 | 10 | 54 | 53 | 121 | 4 | 1 | .249 | .339 | .390 | .730 | 
| 2017 | Chicago Cubs | NL | 117 | 377 | 50 | 104 | 21 | 0 | 21 | 74 | 45 | 98 | 5 | 4 | .276 | .356 | .499 | .855 | 
| 2016 | Chicago Cubs | NL | 76 | 252 | 33 | 71 | 14 | 1 | 12 | 35 | 26 | 67 | 2 | 2 | .282 | .357 | .488 | .845 | 
| 2016 | Iowa | AAA | 55 | 204 | 40 | 72 | 16 | 3 | 9 | 43 | 28 | 32 | 4 | 4 | .353 | .442 | .593 | 1.035 | 
| 2015 | Tennessee | AA | 126 | 454 | 71 | 151 | 34 | 4 | 8 | 75 | 57 | 62 | 4 | 4 | .333 | .413 | .478 | .891 | 
| 2014 | Daytona | A | 80 | 281 | 40 | 68 | 14 | 2 | 5 | 37 | 28 | 66 | 5 | 5 | .242 | .320 | .359 | .679 | 
| 2013 | Kane County | A | 86 | 310 | 46 | 77 | 11 | 5 | 11 | 46 | 26 | 66 | 8 | 3 | .248 | .320 | .423 | .742 | 
| 2012 | Boise | A | 64 | 249 | 32 | 68 | 10 | 1 | 3 | 39 | 11 | 54 | 3 | 2 | .273 | .316 | .357 | .673 | 
| 2011 | Boise | A | 60 | 222 | 31 | 58 | 5 | 4 | 2 | 27 | 11 | 41 | 3 | 2 | .261 | .305 | .347 | .652 | 
| - | Total | NL | 1078 | 3700 | 526 | 954 | 208 | 11 | 172 | 548 | 419 | 1035 | 37 | 22 | .258 | .352 | .459 | .811 | 
| - | Total | AAA | 61 | 222 | 46 | 75 | 17 | 3 | 11 | 45 | 30 | 39 | 4 | 4 | .338 | .429 | .590 | 1.019 | 
| - | Total | AA | 126 | 454 | 71 | 151 | 34 | 4 | 8 | 75 | 57 | 62 | 4 | 4 | .333 | .413 | .478 | .891 | 
| - | Total | A | 290 | 1062 | 149 | 271 | 40 | 12 | 21 | 149 | 76 | 227 | 19 | 12 | .255 | .316 | .375 | .691 |