| Date | Team | Transaction | |
|---|---|---|---|
| Jul 1, 2025 | Calgary Flames | Signed 2 years @ $1.750M AAV starting in 2025-26 | |
| Jul 1, 2023 | Dallas Stars | Signed 2 years @ $787K AAV starting in 2023-24 | |
| Apr 14, 2021 | Dallas Stars | Signed 2 years @ $750K AAV starting in 2021-22 | |
| Feb 20, 2019 | Dallas Stars | Signed 2 years @ $700K AAV starting in 2019-20 | |
| Jul 1, 2018 | Dallas Stars | Signed 1 year @ $650K AAV starting in 2018-19 | |
| Jul 1, 2017 | Arizona Coyotes | Signed 1 year @ $725K AAV starting in 2017-18 | |
| Jun 22, 2016 | Montreal Canadiens | Signed 1 year @ $600K AAV starting in 2016-17 | |
| Jul 1, 2015 | Montreal Canadiens | Signed to an entry level contract. |
URL: https://www.thestanleycap.com/cdn/player_cards/20252026/joel-hanley-8477810.png
URL: https://www.thestanleycap.com/cdn/player_cards/20242025/joel-hanley-8477810.png
URL: https://www.thestanleycap.com/cdn/player_cards/20232024/joel-hanley-8477810.png
Player cards present an infographic of a players performance. In this case it shows the player performance over a 3 season span. Each square is separated into three separate sub-boxes with the two smaller boxes on top representing the past two seasons and the larger box on the bottom representing the current or most recent season. This allows the reader to guage how consistent a player has been, and if early in the season it can help identify whether a players performance may be impacted by small sample size and subject to regression or is consistent with recent past performance.
You are free to use include player cards in written articles, share on social media, or on other public websites under the following conditions:
Note: The image will update daily throughout the season so if you want to include snapshot then you must download the image.
If you have any questions, send an e-mail to the e-mail address at the top of this page.
| Season | Team(s) | GP | TOI | G/60 | A/60 | Pts/60 | xG/60 | GAE/60 | Sh% | xSh% | Sh%AE | %SA Rush | %SA Reb. |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2015-16 | MTL | 10 | 134:03 | 0.00 | 2.69 | 2.69 | 0.10 | -0.10 | 0.00 | 2.55 | -2.55 | 0.00 | 0.00 |
| 2016-17 | MTL | 7 | 70:20 | 0.00 | 0.00 | 0.00 | 0.07 | -0.07 | 0.00 | 1.58 | -1.58 | 0.00 | 0.00 |
| 2017-18 | ARI | 5 | 54:02 | 0.00 | 0.00 | 0.00 | 0.29 | -0.29 | 0.00 | 13.27 | -13.27 | 0.00 | 0.00 |
| 2018-19 | DAL | 16 | 203:01 | 0.00 | 0.00 | 0.00 | 0.13 | -0.13 | 0.00 | 5.01 | -5.01 | 0.00 | 0.00 |
| 2019-20 | DAL | 8 | 87:54 | 0.00 | 1.37 | 1.37 | 0.06 | -0.06 | 0.00 | 2.31 | -2.31 | 0.00 | 0.00 |
| 2020-21 | DAL | 35 | 435:36 | 0.00 | 1.10 | 1.10 | 0.11 | -0.11 | 0.00 | 2.99 | -2.99 | 0.00 | 2.56 |
| 2021-22 | DAL | 44 | 482:04 | 0.25 | 0.37 | 0.62 | 0.11 | 0.14 | 11.11 | 4.73 | 6.39 | 0.00 | 0.00 |
| 2022-23 | DAL | 26 | 297:41 | 0.00 | 0.40 | 0.40 | 0.12 | -0.12 | 0.00 | 4.13 | -4.13 | 4.35 | 0.00 |
| 2023-24 | DAL | 32 | 415:09 | 0.00 | 0.43 | 0.43 | 0.11 | -0.11 | 0.00 | 6.99 | -6.99 | 3.70 | 3.70 |
| 2023-24 | CGY | 10 | 127:32 | 0.47 | 0.47 | 0.94 | 0.05 | 0.42 | 16.67 | 1.77 | 14.90 | 0.00 | 12.50 |
| 2023-24 | CGY, DAL | 42 | 542:41 | 0.11 | 0.44 | 0.55 | 0.10 | 0.01 | 5.88 | 5.15 | 0.73 | 2.86 | 5.71 |
| 2024-25 | CGY | 53 | 875:02 | 0.07 | 0.41 | 0.48 | 0.12 | -0.05 | 2.56 | 4.30 | -1.73 | 0.00 | 5.33 |
| 2025-26 | CGY | 19 | 275:06 | 0.00 | 0.65 | 0.65 | 0.11 | -0.11 | 0.00 | 3.91 | -3.91 | 0.00 | 12.50 |
| Season | Team(s) | GP | TOI | SAF/60 | GF/60 | xGF/60 | SAA/60 | GA/60 | xGA/60 | GF% | xGF% | xGF Rel | xGA Rel | xGF% Rel |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2015-16 | MTL | 10 | 134:03 | 38.49 | 3.58 | 1.88 | 37.15 | 3.58 | 2.16 | 50.00 | 46.63 | -0.40 | -0.03 | -4.45 |
| 2016-17 | MTL | 7 | 70:20 | 31.56 | 0.85 | 1.94 | 31.56 | 3.41 | 1.80 | 20.00 | 51.85 | -0.69 | -0.18 | -5.18 |
| 2017-18 | ARI | 5 | 54:02 | 48.86 | 3.33 | 2.91 | 42.20 | 3.33 | 2.97 | 50.00 | 49.45 | 0.83 | -0.04 | 8.56 |
| 2018-19 | DAL | 16 | 203:01 | 40.19 | 1.48 | 2.68 | 31.92 | 1.48 | 1.76 | 50.00 | 60.42 | 0.32 | -0.83 | 12.70 |
| 2019-20 | DAL | 8 | 87:54 | 38.91 | 2.73 | 1.82 | 38.23 | 2.73 | 1.88 | 50.00 | 49.21 | -1.19 | -0.52 | -6.45 |
| 2020-21 | DAL | 35 | 435:36 | 41.18 | 2.48 | 2.37 | 29.89 | 1.93 | 1.78 | 56.25 | 57.05 | -0.16 | -0.22 | 1.29 |
| 2021-22 | DAL | 44 | 482:04 | 36.22 | 1.62 | 2.35 | 38.58 | 3.36 | 2.18 | 32.50 | 51.86 | -0.38 | -0.54 | 1.81 |
| 2022-23 | DAL | 26 | 297:41 | 36.68 | 2.42 | 2.28 | 33.06 | 1.61 | 1.94 | 60.00 | 54.06 | -0.55 | -0.60 | 1.30 |
| 2023-24 | DAL | 32 | 415:09 | 41.91 | 2.17 | 2.45 | 35.84 | 2.02 | 2.08 | 51.72 | 54.11 | -0.11 | -0.31 | 2.32 |
| 2023-24 | CGY | 10 | 127:32 | 39.05 | 2.35 | 2.03 | 35.28 | 2.35 | 1.53 | 50.00 | 56.97 | -0.50 | -1.18 | 8.70 |
| 2023-24 | CGY, DAL | 42 | 542:41 | 41.24 | 2.21 | 2.35 | 35.71 | 2.10 | 1.95 | 51.28 | 54.67 | -0.20 | -0.51 | 3.75 |
| 2024-25 | CGY | 53 | 875:02 | 41.90 | 2.33 | 2.24 | 36.00 | 1.85 | 2.08 | 55.74 | 51.84 | -0.09 | -0.34 | 2.74 |
| 2025-26 | CGY | 19 | 275:06 | 42.53 | 1.96 | 2.44 | 30.75 | 2.62 | 1.78 | 42.86 | 57.80 | 0.22 | -0.51 | 8.60 |
| Skating | Shooting | Zone Time | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | GP | Top Speed | Bursts>20/mi | Avg. Speed | ES Avg. Speed | Top Speed | Avg. Speed | %Long Range | %Mid Range | %High Danger | ES DZ% | ES NZ% | ES OZ% |
| This table is for Basic and Premium subscribers only. To view please login to and/or subscribe to one of our subscription plans. | |||||||||||||
| Percentile 0-25 | Percentile 25-50 | Percentile 50-75 | Percentile 75-100 |
| Season | Teammate | Team | TOI | GF/60 | GA/60 | GF% | xGF/60 | xGA/60 | xGF% | xGF Rel | xGA Rel | xGF% Rel |
|---|
| Type | Statistic | Definition |
|---|---|---|
| Individual | G/60 | Goals Against per 60 minutes. |
| Individual | A/60 | Assists per 60 minutes. |
| Individual | Pts/60 | Points per 60 minutes. |
| Individual | xG/60 | Expected Goals per 60 minutes. |
| Individual | GAE/60 | Goals Above Expected (G/60 - xG/60). |
| Individual | Sh% | Shooting Percentage. |
| Individual | xSh% | Expected Shooting Percentage. |
| Individual | Sh%AE | Shooting percentage above expected (Sh% - xSh%). |
| Individual | %SA Rush | Percentage of shot attempts determined to be on the rush. |
| Individual | %SA Reb. | Percentage of shot attempts determined to be from rebounds. |
| On Ice | SAF/60 | Shot Attempts For per 60 minutes. |
| On Ice | GF/60 | Goals For per 60 minutes. |
| On Ice | xGF/60 | Expected Goals For per 60 minutes. |
| On Ice | SAA/60 | Shot Attempts Against per 60 minutes (lower is better). |
| On Ice | GA/60 | Goals Against per 60 minutes (lower is better). |
| On Ice | xGA/60 | Expected Goals Against per 60 minutes (lower is better). |
| On Ice | GF% | Goals For Percentage = Goals For / (Goals For + Goals Against) |
| On Ice | xGF% | Expected Goals For Percentage = Expected Goals For / (Expected Goals For + Expected Goals Against) |
| On Ice | xGF Rel | xGF/60 when On Ice - xGF/60 when not On Ice. |
| On Ice | xGA Rel | xGA/60 when On Ice - xGA/60 when not On Ice (lower is better). |
| On Ice | xGF% Rel | xGF% when On Ice - xGF% when not On Ice. |
Quarter-season report cards: grading the Calgary Flames’ blueline at The Win Column (Mon Nov 17, 2025)
Examining how the Calgary Flames defence pairings have fared so far this season at The Win Column (Mon Oct 27, 2025)
The Flames’ best fights of 2024-25: Joel Hanley and Andrei Svechnikov fight because of a misunderstanding at Flames Nation (Fri Jul 18, 2025)
The Flames’ best fights of 2024-25: Martin Pospíšil sticks up for Joel Hanley at Flames Nation (Thu Jul 17, 2025)
Game Takes: Flames 3 Sharks 2 at Calgary Puck (Tue Apr 8, 2025)
The top ten most bizarre Calgary Flames moments in 2023-2024 at Calgary Hockey Now (Thu Jul 18, 2024)
Joel Hanley signed a $3,500,000 2-year contract with the Calgary Flames and General Manager Craig Conroy on July 1, 2025 with an AAV of $1,750,000. This contract will start in 2025-26 and end after the 2026-27 season. In the first season of the contract the cap hit was equivalent to 1.83% of the salary cap.
Joel Hanley signed a $1,575,000 2-year contract with the Dallas Stars and General Manager Jim Nill on July 1, 2023 with an AAV of $787,500. This contract will start in 2023-24 and end after the 2024-25 season. In the first season of the contract the cap hit was equivalent to 0.94% of the salary cap.
| Season | Age* | Clause | Cap Hit | AAV | Perf. Bonus | Sign. Bonus | Salary | Compensation | Minors Salary | Status | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2023-24 | 32 | $787,500 | $787,500 | - | - | $775,000 | $775,000 | $775,000 | UFA | ||
| 2024-25 | 33 | $787,500 | $787,500 | - | - | $800,000 | $800,000 | $800,000 | UFA | ||
| Total | - | - | $1,575,000 | $1,575,000 | $1,575,000 |
Joel Hanley signed a $1,500,000 2-year contract with the Dallas Stars and General Manager Jim Nill on April 14, 2021 with an AAV of $750,000. This contract will start in 2021-22 and end after the 2022-23 season. In the first season of the contract the cap hit was equivalent to 0.92% of the salary cap.
| Season | Age* | Clause | Cap Hit | AAV | Perf. Bonus | Sign. Bonus | Salary | Compensation | Minors Salary | Status | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2021-22 | 30 | $750,000 | $750,000 | - | - | $750,000 | $750,000 | - | UFA | ||
| 2022-23 | 31 | $750,000 | $750,000 | - | - | $750,000 | $750,000 | - | UFA | ||
| Total | - | - | $1,500,000 | $1,500,000 | $0 |
Joel Hanley signed a $1,400,000 2-year contract with the Dallas Stars and General Manager Jim Nill on February 20, 2019 with an AAV of $700,000. This contract will start in 2019-20 and end after the 2020-21 season. In the first season of the contract the cap hit was equivalent to 0.86% of the salary cap.
| Season | Age* | Clause | Cap Hit | AAV | Perf. Bonus | Sign. Bonus | Salary | Compensation | Minors Salary | Status | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2019-20 | 28 | $700,000 | $700,000 | - | - | $700,000 | $700,000 | $275,000 | UFA | ||
| 2020-21 | 29 | $700,000 | $700,000 | - | - | $700,000 | $700,000 | $300,000 | UFA | ||
| Total | - | - | $1,400,000 | $1,400,000 | $575,000 |
Joel Hanley signed a $650,000 1-year contract with the Dallas Stars and General Manager Jim Nill on July 1, 2018 with an AAV of $650,000. This contract will start in 2018-19 and end after the 2018-19 season. In the first season of the contract the cap hit was equivalent to 0.82% of the salary cap.
| Season | Age* | Clause | Cap Hit | AAV | Perf. Bonus | Sign. Bonus | Salary | Compensation | Minors Salary | Status | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2018-19 | 27 | $650,000 | $650,000 | - | - | $650,000 | $650,000 | $200,000 | UFA | ||
| Total | - | - | $650,000 | $650,000 | $200,000 |
Joel Hanley signed a $725,000 1-year contract with the Arizona Coyotes and General Manager John Chayka on July 1, 2017 with an AAV of $725,000. This contract will start in 2017-18 and end after the 2017-18 season. In the first season of the contract the cap hit was equivalent to 0.97% of the salary cap.
| Season | Age* | Clause | Cap Hit | AAV | Perf. Bonus | Sign. Bonus | Salary | Compensation | Minors Salary | Status | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2017-18 | 26 | $725,000 | $725,000 | - | - | $725,000 | $725,000 | $175,000 | RFA-arb | ||
| Total | - | - | $725,000 | $725,000 | $175,000 |
Joel Hanley signed a $600,000 1-year contract with the Montreal Canadiens and General Manager Marc Bergevin on June 22, 2016 with an AAV of $600,000. This contract will start in 2016-17 and end after the 2016-17 season. In the first season of the contract the cap hit was equivalent to 0.82% of the salary cap.
| Season | Age* | Clause | Cap Hit | AAV | Perf. Bonus | Sign. Bonus | Salary | Compensation | Minors Salary | Status | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2016-17 | 25 | $600,000 | $600,000 | - | - | $600,000 | $600,000 | $85,000 | RFA-arb | ||
| Total | - | - | $600,000 | $600,000 | $85,000 |
Joel Hanley signed a $667,500 1-year contract with the Montreal Canadiens and General Manager Marc Bergevin on July 1, 2015 with an AAV of $667,500. This contract will start in 2015-16 and end after the 2015-16 season. In the first season of the contract the cap hit was equivalent to 0.93% of the salary cap.
| Season | Age* | Clause | Cap Hit | AAV | Perf. Bonus | Sign. Bonus | Salary | Compensation | Minors Salary | Status | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2015-16 | 24 | $667,500 | $925,000 | $257,500 | $92,500 | $575,000 | $667,500 | $70,000 | ELC | ||
| Total | $257,500 | $92,500 | $575,000 | $667,500 | $70,000 |
| Regular Season | Playoffs | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | League | Team | GP | G | A | Pts | +/- | PIM | Shots | Sh% | TOI/G | GP | G | A | Pts | +/- | PIM | Shots | Sh% | TOI/G |
| 2006-07 | ETAMMHL | York Simcoe Express Mn Mdgt AAA | 33 | 4 | 14 | 18 | 46 | |||||||||||||
| 2007-08 | OPJHL | Newmarket Hurricanes | 2 | 0 | 0 | 0 | ||||||||||||||
| 2007-08 | COJCHL | Georgina Ice | 9 | 3 | 5 | 8 | 6 | |||||||||||||
| 2008-09 | OJHL | Newmarket Hurricanes | 50 | 14 | 24 | 38 | 61 | |||||||||||||
| 2008-09 | OJHL | Milton Menace | 9 | 3 | 1 | 4 | 22 | |||||||||||||
| 2009-10 | CCHL | Newmarket Hurricanes | 23 | 5 | 15 | 20 | +2 | 11 | ||||||||||||
| 2009-10 | OJHL | Milton Menace | 19 | 4 | 9 | 13 | +11 | 12 | ||||||||||||
| 2010-11 | NCAA | UMass (Amherst) | 28 | 3 | 15 | 18 | -5 | 24 | ||||||||||||
| 2011-12 | H-East | Massachusetts | 36 | 7 | 18 | 25 | 18 | |||||||||||||
| 2012-13 | H-East | Massachusetts | 33 | 5 | 11 | 16 | 46 | |||||||||||||
| 2013-14 | H-East | Massachusetts | 34 | 2 | 14 | 16 | 39 | |||||||||||||
| 2013-14 | AHL | Portland | 15 | 0 | 5 | 5 | -4 | 6 | 13 | 0.0 | ||||||||||
| 2014-15 | ECHL | Gwinnett | 3 | 1 | 0 | 1 | +2 | 6 | 1,670.0 | |||||||||||
| 2014-15 | AHL | Portland | 63 | 2 | 15 | 17 | +7 | 34 | 86 | 230.0 | 5 | 1 | 1 | +1 | 4 | 0.0 | ||||
| 2015-16 | AHL | St. John's | 64 | 5 | 8 | 13 | -11 | 25 | 73 | 680.0 | ||||||||||
| 2015-16 | NHL | Montréal Canadiens | 10 | 0 | 6 | 6 | 10 | 0.0 | 16:00 | |||||||||||
| 2016-17 | NHL | Montréal Canadiens | 7 | 0 | 0 | 0 | -3 | 4 | 5 | 0.0 | 10:09 | |||||||||
| 2016-17 | AHL | St. John's IceCaps | 65 | 2 | 20 | 22 | +11 | 34 | 4 | -1 | 2 | |||||||||
| 2017-18 | NHL | Arizona Coyotes | 5 | 0 | 0 | 0 | 2 | 0.0 | 11:08 | |||||||||||
| 2017-18 | AHL | Tucson Roadrunners | 52 | 2 | 18 | 20 | +30 | 31 | 9 | 4 | 4 | +2 | ||||||||
| 2018-19 | AHL | Texas Stars | 60 | 8 | 20 | 28 | +10 | 32 | ||||||||||||
| 2018-19 | NHL | Dallas Stars | 16 | 0 | 0 | 0 | 2 | 9 | 0.0 | 13:42 | 1 | 0.0 | 12:55 | |||||||
| 2019-20 | AHL | Texas Stars | 40 | 0 | 10 | 10 | +10 | 8 | ||||||||||||
| 2019-20 | NHL | Dallas Stars | 8 | 0 | 2 | 2 | 6 | 4 | 0.0 | 11:21 | 12 | 1 | 1 | 2 | +3 | 4 | 6 | 16.7 | 11:19 | |
| 2020-21 | NHL | Dallas Stars | 35 | 0 | 8 | 8 | +6 | 2 | 27 | 0.0 | 13:01 | |||||||||
| 2021-22 | NHL | Dallas Stars | 44 | 2 | 4 | 6 | -13 | 4 | 18 | 11.1 | 11:56 | 7 | +1 | 5 | 0.0 | 12:03 | ||||
| 2022-23 | NHL | Dallas Stars | 26 | 0 | 2 | 2 | +5 | 15 | 14 | 0.0 | 11:38 | 13 | 1 | 1 | +5 | 4 | 5 | 0.0 | 12:53 | |
| 2023-24 | NHL | Dallas Stars | 32 | 0 | 3 | 3 | +3 | 23 | 12 | 0.0 | 13:42 | |||||||||
| 2023-24 | NHL | Calgary Flames | 10 | 1 | 1 | 2 | 7 | 7 | 14.3 | 14:32 | ||||||||||
| 2024-25 | NHL | Calgary Flames | 53 | 2 | 7 | 9 | +12 | 21 | 42 | 4.8 | 18:35 | |||||||||
| 2025-26 | NHL | Calgary Flames | 20 | 0 | 3 | 3 | -3 | 13 | 14 | 0.0 | 16:31 | |||||||||
| NHL Career | 266 | 5 | 36 | 41 | +7 | 97 | 164 | 3.0 | 14:12 | 33 | 1 | 2 | 3 | +9 | 8 | 16 | 6.2 | 12:08 | ||