| Season | Team | GP | PTS | G | A | +/− | PIM | PPG | SHG | GWG |
|---|---|---|---|---|---|---|---|---|---|---|
| NSHL22 |
EDM
|
68 | 8 | 1 | 7 | 0 | 4 | 1 | 0 | 0 |
| NSHL21 |
CHI
|
53 | 4 | 0 | 4 | +9 | 6 | 0 | 0 | 0 |
| NSHL20 |
TBL
Total |
40 | 1 | 0 | 1 | 0 | 2 | 0 | 0 | 0 |
TBL
|
34 | 0 | 0 | 0 | -1 | 2 | 0 | 0 | 0 | |
TOR
|
6 | 1 | 0 | 1 | +1 | 0 | 0 | 0 | 0 | |
| NSHL19 |
TOR
Total |
47 | 6 | 0 | 6 | -1 | 0 | 0 | 0 | 0 |
TOR
|
25 | 5 | 0 | 5 | -1 | 0 | 0 | 0 | 0 | |
PHI
|
22 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |
| NSHL18 |
PHI
Total |
19 | 4 | 0 | 4 | +6 | 2 | 0 | 0 | 0 |
PHI
|
15 | 4 | 0 | 4 | +5 | 0 | 0 | 0 | 0 | |
CHI
|
4 | 0 | 0 | 0 | +1 | 2 | 0 | 0 | 0 | |
| Pro Career | 227 | 23 | 1 | 22 | +14 | 14 | 1 | 0 | 0 | |
| Season | Team | GP | PTS | G | A | +/− | PIM | PPG | SHG | GWG |
|---|---|---|---|---|---|---|---|---|---|---|
| NSHL24 |
PIT
|
78 | 24 | 8 | 16 | -2 | 44 | 3 | 0 | 2 |
| NSHL23 |
DET
|
77 | 29 | 6 | 23 | +28 | 22 | 3 | 0 | 2 |
| NSHL17 |
PIT
|
74 | 22 | 6 | 16 | +3 | 0 | 1 | 0 | 0 |
| NSHL16 |
BUF
|
64 | 17 | 2 | 15 | +3 | 6 | 0 | 0 | 0 |
| Farm Career | 293 | 92 | 22 | 70 | +32 | 72 | 7 | 0 | 4 | |
| Season | Team | GP | PTS | G | A | +/− | PIM | PPG | SHG | GWG |
|---|---|---|---|---|---|---|---|---|---|---|
| NSHL22 |
EDM
|
7 | 0 | 0 | 0 | -1 | 0 | 0 | 0 | 0 |
| NSHL21 |
CHI
|
10 | 1 | 0 | 1 | -1 | 4 | 0 | 0 | 0 |
| NSHL19 |
TOR
|
2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| NSHL18 |
PHI
|
19 | 6 | 1 | 5 | +7 | 0 | 0 | 0 | 0 |
| Pro Career | 38 | 7 | 1 | 6 | +5 | 4 | 0 | 0 | 0 | |
| Season | Team | GP | PTS | G | A | +/− | PIM | PPG | SHG | GWG |
|---|---|---|---|---|---|---|---|---|---|---|
| NSHL24 |
PIT
|
6 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
| NSHL23 |
DET
|
19 | 10 | 2 | 8 | +9 | 4 | 1 | 0 | 0 |
| NSHL17 |
RCH
|
4 | 2 | 0 | 2 | -3 | 0 | 0 | 0 | 0 |
| NSHL16 |
RCH
|
2 | 0 | 0 | 0 | +1 | 0 | 0 | 0 | 0 |
| Farm Career | 31 | 13 | 2 | 11 | +7 | 4 | 1 | 0 | 0 | |
| Season | Team | CK | FG | DI | SK | ST | EN | DU | PH | FO | PA | SC | DF | PS | EX | LD | OV |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| NSHL16 |
BUF
|
65 | 15 | 87 | 77 | 74 | 73 | 73 | 68 | 50 | 72 | 62 | 69 | 63 | 64 | 59 | 67 |
| NSHL17 |
PIT
|
65 | 17 | 87 | 77 | 76 | 76 | 76 | 69 | 50 | 73 | 62 | 72 | 63 | 64 | 59 | 68 |
| NSHL18 |
PHI
|
65 | 17 | 89 | 77 | 76 | 78 | 78 | 70 | 50 | 73 | 64 | 74 | 65 | 65 | 61 | 80 |
| NSHL19 |
TOR
|
65 | 17 | 89 | 77 | 76 | 78 | 78 | 70 | 50 | 73 | 64 | 74 | 65 | 65 | 61 | 80 |
| NSHL20 |
CHI
|
65 | 17 | 89 | 77 | 76 | 78 | 78 | 70 | 50 | 73 | 64 | 74 | 65 | 67 | 62 | 80 |
| NSHL21 |
CHI
|
65 | 17 | 89 | 77 | 90 | 78 | 78 | 70 | 50 | 73 | 64 | 74 | 65 | 68 | 63 | 71 |
| NSHL22 |
EDM
|
65 | 45 | 89 | 77 | 92 | 78 | 78 | 70 | 50 | 73 | 64 | 74 | 65 | 78 | 81 | 73 |
| NSHL23 |
DET
|
65 | 45 | 89 | 77 | 94 | 78 | 80 | 70 | 50 | 73 | 64 | 74 | 65 | 78 | 81 | 73 |
| NSHL24 |
PIT
|
66 | 46 | 89 | 74 | 91 | 79 | 81 | 71 | 50 | 74 | 65 | 75 | 64 | 79 | 82 | 73 |
| Career Avg | 66 | 27 | 89 | 77 | 83 | 78 | 78 | 70 | 50 | 73 | 64 | 74 | 65 | 70 | 68 | 74 | |
| Season | Team | Type | Category | Old | New | Δ | Pts | Notes |
|---|---|---|---|---|---|---|---|---|
| NSHL16 | BUF | TC | DF | 67 | 69 | +2 | 2 |
| Season | Type | Move | Detail |
|---|---|---|---|
| NSHL23 | Signing | DET |
$1,784,000 · 1 yr |
| NSHL23 | Release | EDM |
|
| NSHL22 | Opening Day Waivers | EDM |
Claimed off opening-day waivers |
| NSHL20 | Trade | STL→ TBL |
STL $500,000 TBL Joe Morrow (69) |
| NSHL20 | Trade | TBL→ TOR |
TBL Darnell Nurse (74), Riley Nash (69), Y22 R4 SJS pick, Y23 R4 STL pick → Massimo Rizzo, Y25 R3 TOR pick TOR Evgeny Kuznetsov (77), Joe Morrow (69), Jordan Greenway (68) |
| NSHL20 | Trade | TOR→ CHI |
CHI Antoine Roussel (73), Joe Morrow (69), Michael Grabner (72) TOR Dmitry Orlov (75), Corey Tropp (73) |
| NSHL20 | Opening Day Waivers | TBL |
Claimed off opening-day waivers |
| NSHL19 | Trade | PHI→ TOR |
PHI Jonathan Marchessault (67), Joe Pavelski (66), Jamie Oleksiak (72), Y20 R6 TOR pick → Sean Farrell TOR Phil Kessel (73), Joe Morrow (69), 20 Round 7 Pick 1 (P) |
| NSHL19 | Signing | PHI |
$510,000 · 4 yr |
| NSHL18 | Trade | PIT→ CHI |
PIT $100,000 CHI Joe Morrow (69) |
| NSHL18 | Trade | CHI→ PHI |
CHI Chris Summers (71) PHI Joe Morrow (69) |
| NSHL16 | Signing | BUF |
$1,000,000 · 3 yr |
| NSHL11 | Trade | OTT→ BUF |
BUF Joe Morrow (P), Y12 R2 CAR pick → Radek Faksa OTT Y12 R1 OTT pick, Y12 R3 BUF pick → Stefan Matteau |