Calvin de Haan
#44 · Defence · Free agent, last with the New York Rangers
Born May 9, 1991 in Carp, Ontario, CAN · 6'1", 192 lb · Shoots left · Drafted 12th overall in 2009 by NYI (round 1)
Compare with a similar player
The defencemen closest to him in points in 2024-25. Pick one to see the two side by side, or choose someone else.
Jacob Moverare
LAK ·
8 P in 49 GP
Jeff Petry
DET ·
8 P in 44 GP
Nolan Allan
CHI ·
8 P in 43 GP
Jacob Bernard-Docker
BUF ·
8 P in 40 GP
Wyatt Kaiser
CHI ·
8 P in 57 GP
Career
Regular season games only. Pick a season to see its game log below. Cap hit is what he counted against the salary cap that season, where it is known.
Points by season. The darker bar is the season shown below.
| Season | Team | GP | G | A | P | +/- | PIM | Shots | Hits | P/GP | Cap hit |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2011-12 | NYI | 1 | 0 | 0 | 0 | 1 | 0 | 2 | 2 | 0.00 | |
| 2013-14 | NYI | 51 | 3 | 13 | 16 | -7 | 30 | 71 | 114 | 0.31 | $870K |
| 2014-15 | NYI | 65 | 1 | 11 | 12 | 3 | 24 | 92 | 140 | 0.18 | $1.967M |
| 2015-16 | NYI | 72 | 2 | 14 | 16 | 3 | 20 | 102 | 128 | 0.22 | $1.967M |
| 2016-17 | NYI | 82 | 5 | 20 | 25 | 15 | 36 | 116 | 139 | 0.30 | $1.967M |
| 2017-18 | NYI | 33 | 1 | 11 | 12 | 11 | 8 | 44 | 45 | 0.36 | $3.3M |
| 2018-19 | CAR | 74 | 1 | 13 | 14 | 1 | 20 | 102 | 187 | 0.19 | $4.55M |
| 2019-20 | CHI | 29 | 1 | 5 | 6 | 10 | 10 | 42 | 93 | 0.21 | $4.55M |
| 2020-21 | CHI | 44 | 1 | 9 | 10 | -16 | 14 | 58 | 99 | 0.23 | $4.55M |
| 2021-22 | CHI | 69 | 4 | 4 | 8 | -21 | 33 | 107 | 146 | 0.12 | $4.55M |
| 2022-23 | CAR | 53 | 2 | 10 | 12 | 7 | 20 | 51 | 84 | 0.23 | $850K |
| 2023-24 | TBL | 59 | 3 | 7 | 10 | -9 | 22 | 56 | 96 | 0.17 | $775K |
| 2024-25 | COL | 44 | 0 | 7 | 7 | -8 | 10 | 48 | 59 | 0.16 | $800K |
| 2024-25 | NYR | 3 | 0 | 1 | 1 | 4 | 2 | 3 | 12 | 0.33 | |
| 13 seasons | Career | 679 | 24 | 125 | 149 | -6 | 249 | 894 | 1344 | 0.22 |
Playoffs
Playoff games only. Pick a season to see that year's bracket.
| Season | Team | GP | G | A | P | +/- | PIM | Shots | Hits | P/GP |
|---|---|---|---|---|---|---|---|---|---|---|
| 2014-15 | NYI | 5 | 0 | 1 | 1 | -2 | 2 | 3 | 14 | 0.20 |
| 2015-16 | NYI | 11 | 0 | 2 | 2 | -5 | 2 | 8 | 19 | 0.18 |
| 2018-19 | CAR | 12 | 1 | 0 | 1 | 3 | 2 | 12 | 33 | 0.08 |
| 2019-20 | CHI | 9 | 0 | 1 | 1 | 1 | 0 | 10 | 19 | 0.11 |
| 2023-24 | TBL | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.00 |
| 5 seasons | Playoffs | 38 | 1 | 4 | 5 | -3 | 6 | 33 | 86 | 0.13 |
2024-25 season totals
| GP | G | A | P | +/- | PIM | Shots | Hits | P/GP | Shooting % | Avg TOI |
|---|---|---|---|---|---|---|---|---|---|---|
| 47 | 0 | 8 | 8 | -4 | 12 | 51 | 71 | 0.17 | 0.0 | 14:58 |
Contract
His cap hit for the whole season, set against what he did in the regular season. Lower is better value. In a season still being played the cost per point starts high and falls as the games add up. Value is coloured by where it ranks among the 698 ranked skaters whose contract is known. How value is worked out.
The contract
Signed by the Colorado Avalanche on Jul 1, 2024, as a new contract: 1 year and $800K, beginning in 2024-25. It runs through 2024-25, so this is its last season, after which he is an unrestricted free agent.
| Season | Cap hit |
|---|---|
| 2024-25 | $800K |
Each season left on the contract. Only its cap hit and its end are known: how the pay is split by season, and any signing bonus, are not.
Contracts he has signed
| Signed | Signed by | Kind | Seasons | Years | In all | Cap hit |
|---|---|---|---|---|---|---|
| 2025-26 to 2025-26 | $800K | |||||
| Jul 1, 2024 | Colorado Avalanche | New contract | 2024-25 to 2024-25 | 1 | $800K | $800K |
| 2023-24 to 2023-24 | $775K | |||||
| 2022-23 to 2022-23 | $850K | |||||
| 2020-21 to 2021-22 | $4.55M | |||||
| 2018-19 to 2021-22 | $4.55M | |||||
| 2017-18 to 2017-18 | $3.3M | |||||
| 2014-15 to 2016-17 | $1.967M | |||||
| 2013-14 to 2013-14 | $870K |
Every contract on record for him, newest first, with the team that signed him to it and the day it was signed. The one covering 2024-25 is marked. An extension is signed while the contract before it is still running, often a year ahead. A row with no team or date is a contract known only by its cap hit, most often one signed since October 2024.
2024-25 analytics
Rating
Each number is coloured by where it ranks among the 242 ranked defencemen: green is in the top fifth and red the bottom fifth, with paler shades in between and amber for the middle. Hover over a tile for its percentile.
The goals he added to his team's goal difference, compared with a spare-part player given the same ice time. Each part is measured against the league, so zero is an average skater, and the rank beside it is among defencemen. A full season is about two-thirds the player and one-third chance.
On the ice
What happened at five-on-five while he was on the ice. What these numbers mean
Each share is coloured by where it ranks among the 598 skaters who played enough to be ranked: green is in the top fifth and red the bottom fifth, with paler shades in between and amber for the middle. Hover over a tile for its percentile. PDO and attempts taken are left plain, since neither is good or bad on its own.
Who he played with
| Defence pair | GP | Time | CF% | xGF% | Goals |
|---|---|---|---|---|---|
| Calvin de Haan · Sam Malinski | 39 | 237:12 | 55.3 | 57.0 | 8-12 |
| Calvin de Haan · Keaton Middleton | 18 | 109:52 | 53.1 | 57.1 | 3-3 |
| Calvin de Haan · Josh Manson | 21 | 70:16 | 54.5 | 47.3 | 3-2 |
| Calvin de Haan · Samuel Girard | 36 | 52:51 | 42.7 | 34.9 | 1-5 |
The pairs he spent the most time in at five-on-five, with the team's share of the shot attempts and expected goals, and the goals for and against, while they were out. The two shares are coloured as above, against the league's pairs that played a fair amount together. Hover over one for its percentile.
Chances and finishing
Expected goals adds up how likely each of his shots was to go in, judged by where it came from, what kind of shot it was and whether it was a rebound. All situations, leaving out shots at an empty net.
Each bar shows the share of defencemen he is ahead of, among the 244 who played 300 minutes or more this season.
His goals and his expected goals as the season went on. When the goals line pulls away above, he is scoring more than his chances were worth; below, less.
Where he shot from
Every attempt he took this season, in all situations, attacking the net on the right. There is a dot for each attempt, bigger for a better chance. "Show as heat map" shades the ice by where the attempts came from. Click a goal for its details.
Game log
| Date | Opponent | Result | G | A | P | +/- | PIM | Shots | Hits | TOI |
|---|---|---|---|---|---|---|---|---|---|---|
| Mar 5, 2025 | vs WSH | L 2-3 (OT) | 0 | 0 | 0 | 1 | 0 | 0 | 5 | 14:14 |
| Mar 3, 2025 | vs NYI | W 4-0 | 0 | 0 | 0 | 2 | 0 | 1 | 1 | 16:52 |
| Mar 2, 2025 | vs NSH | W 4-0 | 0 | 1 | 1 | 1 | 2 | 2 | 6 | 16:26 |
| Feb 28, 2025 | vs MIN | W 5-2 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 13:43 |
| Feb 26, 2025 | vs NJD | W 5-1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 15:35 |
| Feb 23, 2025 | @ STL | L 1-3 | 0 | 0 | 0 | 0 | 0 | 3 | 1 | 14:05 |
| Feb 22, 2025 | @ NSH | L 1-2 | 0 | 0 | 0 | -1 | 0 | 1 | 1 | 14:42 |
| Feb 7, 2025 | @ EDM | W 5-4 | 0 | 0 | 0 | -1 | 0 | 0 | 1 | 13:02 |
| Feb 6, 2025 | @ CGY | W 4-2 | 0 | 0 | 0 | -1 | 2 | 0 | 1 | 14:19 |
| Jan 28, 2025 | @ NYI | L 2-5 | 0 | 0 | 0 | -1 | 0 | 1 | 1 | 14:12 |
| Jan 20, 2025 | vs MIN | L 1-3 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 12:00 |
| Jan 18, 2025 | vs DAL | W 6-3 | 0 | 0 | 0 | 1 | 0 | 2 | 3 | 16:23 |
| Jan 16, 2025 | vs EDM | L 3-4 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 14:37 |
| Jan 14, 2025 | vs NYR | W 3-2 (OT) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 17:41 |
| Jan 11, 2025 | @ WPG | L 0-3 | 0 | 0 | 0 | -1 | 0 | 1 | 4 | 15:20 |
| Jan 9, 2025 | @ MIN | W 6-1 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 15:37 |
| Jan 8, 2025 | @ CHI | L 1-3 | 0 | 0 | 0 | -1 | 0 | 1 | 0 | 08:31 |
| Dec 27, 2024 | @ UTA | W 4-1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 14:39 |
| Dec 22, 2024 | vs SEA | W 5-2 | 0 | 0 | 0 | -1 | 0 | 0 | 2 | 17:46 |
| Dec 20, 2024 | @ ANA | W 4-2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 18:13 |
| Dec 19, 2024 | @ SJS | W 4-2 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 11:59 |
| Dec 16, 2024 | @ VAN | L 1-3 | 0 | 0 | 0 | -1 | 0 | 0 | 2 | 13:08 |
| Dec 14, 2024 | vs NSH | W 5-2 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 14:00 |
| Dec 12, 2024 | vs UTA | L 1-4 | 0 | 0 | 0 | -1 | 0 | 0 | 3 | 12:23 |
| Dec 10, 2024 | @ PIT | W 6-2 | 0 | 1 | 1 | 2 | 0 | 1 | 0 | 15:09 |
| Dec 8, 2024 | @ NJD | W 4-0 | 0 | 2 | 2 | 2 | 0 | 0 | 2 | 14:53 |
| Dec 7, 2024 | @ DET | W 2-1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 13:32 |
| Dec 5, 2024 | @ CAR | L 3-5 | 0 | 0 | 0 | -2 | 0 | 1 | 0 | 13:31 |
| Dec 3, 2024 | @ BUF | W 5-4 | 0 | 2 | 2 | 0 | 2 | 7 | 2 | 14:55 |
| Nov 30, 2024 | vs EDM | L 1-4 | 0 | 0 | 0 | -1 | 0 | 2 | 3 | 13:42 |
| Nov 29, 2024 | @ DAL | L 3-5 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 12:34 |
| Nov 25, 2024 | @ TBL | L 2-8 | 0 | 0 | 0 | -3 | 0 | 0 | 2 | 14:20 |
| Nov 15, 2024 | vs WSH | L 2-5 | 0 | 0 | 0 | 0 | 2 | 2 | 1 | 11:29 |
| Nov 13, 2024 | vs LAK | W 4-2 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 14:49 |
| Nov 11, 2024 | vs NSH | W 3-2 (OT) | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 16:19 |
| Nov 7, 2024 | @ WPG | L 0-1 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 14:33 |
| Nov 5, 2024 | vs SEA | W 6-3 | 0 | 0 | 0 | -1 | 0 | 1 | 3 | 15:17 |
| Oct 30, 2024 | vs TBL | L 2-5 | 0 | 0 | 0 | -2 | 0 | 2 | 0 | 14:50 |
| Oct 28, 2024 | vs CHI | L 2-5 | 0 | 0 | 0 | 1 | 2 | 2 | 0 | 16:26 |
| Oct 27, 2024 | vs OTT | W 5-4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 19:03 |
| Oct 24, 2024 | @ UTA | W 5-1 | 0 | 0 | 0 | 1 | 0 | 1 | 3 | 16:48 |
| Oct 22, 2024 | @ SEA | W 3-2 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 17:43 |
| Oct 20, 2024 | @ SJS | W 4-1 | 0 | 0 | 0 | 0 | 2 | 2 | 1 | 22:01 |
| Oct 18, 2024 | vs ANA | W 4-3 (OT) | 0 | 0 | 0 | -1 | 0 | 2 | 0 | 18:47 |
| Oct 16, 2024 | vs BOS | L 3-5 | 0 | 0 | 0 | -1 | 0 | 2 | 1 | 15:09 |
| Oct 12, 2024 | vs CBJ | L 4-6 | 0 | 1 | 1 | -1 | 0 | 2 | 3 | 15:35 |
| Oct 9, 2024 | @ VGK | L 4-8 | 0 | 0 | 0 | -1 | 0 | 1 | 0 | 12:54 |