
| 2010-11 | Minor-ON | Burlington | 58 | 41 | 35 | 76 | - | - | - | - |
| 2010-11 | ON-Jr.A | Burlington | 4 | 0 | 2 | 2 | - | - | - | 0 |
| 2011-12 | OHL | London | 64 | 12 | 10 | 22 | 17 | - | - | 34 |
| 2012-13 | OHL | London | 68 | 23 | 26 | 49 | 10 | - | - | 77 |
| 2013-14 | OHL | London | 59 | 27 | 25 | 52 | 31 | - | - | 81 |
| 2014-15 | NHL | Columbus Blue Jackets | 6 | 0 | 1 | 1 | -1 | 10 | 0.0% | 2 |
| 2014-15 | AHL | Springfield | 52 | 7 | 10 | 17 | 1 | 79 | 8.9% | 76 |
| 2015-16 | NHL | Columbus Blue Jackets | 12 | 1 | 3 | 4 | 0 | 11 | 9.1% | 2 |
| 2015-16 | AHL | Lake Erie | 58 | 18 | 21 | 39 | 14 | 140 | 12.9% | 108 |
| 2016-17 | NHL | Columbus Blue Jackets | 78 | 17 | 12 | 29 | 12 | 119 | 14.3% | 89 |
| 2017-18 | NHL | Columbus Blue Jackets | 63 | 19 | 11 | 30 | -1 | 188 | 10.1% | 42 |
| 2017-18 | AHL | Cleveland Monsters | 1 | 0 | 0 | 0 | -2 | - | - | 0 |
| 2018-19 | NHL | Columbus Blue Jackets | 82 | 27 | 20 | 47 | 25 | 230 | 11.7% | 60 |
| 2019-20 | NHL | Columbus Blue Jackets | 26 | 1 | 3 | 4 | -8 | 63 | 1.6% | 17 |
| 2020-21 | NHL | Montréal Canadiens | 52 | 17 | 7 | 24 | -10 | 125 | 13.6% | 38 |
| 2021-22 | NHL | Montréal Canadiens | 69 | 19 | 13 | 32 | -25 | 151 | 12.6% | 65 |
| 2022-23 | NHL | Montréal Canadiens | 69 | 21 | 11 | 32 | -8 | 164 | 12.8% | 72 |
| 2023-24 | NHL | Montréal Canadiens | 78 | 9 | 11 | 20 | -18 | 141 | 6.4% | 74 |
| 2024-25 | NHL | Montréal Canadiens | 81 | 15 | 12 | 27 | -2 | 109 | 13.8% | 90 |
| 2025-26 | NHL | Montréal Canadiens | 40 | 9 | 4 | 13 | -8 | 52 | 17.3% | 48 |
| NHL Totals | – | 656 | 155 | 108 | 263 | -44 | 1363 | 11.4% | 599 | |
| AHL Totals | – | 111 | 25 | 31 | 56 | 13 | 219 | 11.4% | 184 | |
| Juniors Totals | – | 191 | 62 | 61 | 123 | 58 | - | - | 192 | |
| 2010-11 | ON-Jr.A | Burlington | 1 | 0 | 0 | 0 | - | - | - | 0 |
| 2011-12 | OHL | London | 19 | 2 | 3 | 5 | 4 | - | - | 4 |
| 2011-12 | M-Cup | London | 2 | 1 | 0 | 1 | 1 | 1 | 100.0% | 2 |
| 2012-13 | OHL | London | 19 | 1 | 2 | 3 | -1 | - | - | 23 |
| 2012-13 | M-Cup | London | 5 | 0 | 1 | 1 | -2 | - | - | 2 |
| 2013-14 | OHL | London | 9 | 5 | 4 | 9 | -1 | - | - | 14 |
| 2013-14 | M-Cup | London | 3 | 1 | 0 | 1 | -2 | - | - | 6 |
| 2015-16 | AHL | Lake Erie | 15 | 7 | 5 | 12 | 1 | 37 | 18.9% | 24 |
| 2016-17 | NHL | Columbus Blue Jackets | 5 | 1 | 1 | 2 | 2 | 11 | 9.1% | 2 |
| 2017-18 | NHL | Columbus Blue Jackets | 6 | 1 | 2 | 3 | 3 | 9 | 11.1% | 21 |
| 2018-19 | NHL | Columbus Blue Jackets | 10 | 1 | 2 | 3 | -5 | 23 | 4.4% | 22 |
| 2020-21 | NHL | Montréal Canadiens | 22 | 5 | 1 | 6 | -1 | 50 | 10.0% | 12 |
| 2024-25 | NHL | Montréal Canadiens | 5 | 0 | 1 | 1 | -2 | 11 | 0.0% | 20 |
| NHL Totals | – | 48 | 8 | 7 | 15 | -3 | 104 | 7.7% | 77 | |
| AHL Totals | – | 15 | 7 | 5 | 12 | 1 | 37 | 18.9% | 24 | |
| Juniors Totals | – | 47 | 8 | 9 | 17 | 2 | - | - | 41 | |
| Season | Opponent | Date | G | A | P | +/- | PIM | PPG | SHG | S | Shifts | TOI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Regular | @ CAR | Jan 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 14 | 9:36 |
| Regular | @ FLA | Dec 30 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 17 | 14:52 |
| Regular | @ TBL | Dec 28 | 0 | 0 | 0 | -2 | 0 | 0 | 0 | 2 | 23 | 16:17 |
| Regular | @ BOS | Dec 23 | 0 | 0 | 0 | 0 | 7 | 0 | 0 | 3 | 22 | 14:03 |
| Regular | @ PIT | Dec 21 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 18 | 18:17 |