Hockey Terminal
Be a GM

← All players

Photo of Mackenzie Blackwood

Mackenzie Blackwood

#39 · Goalie · Colorado Avalanche

Born Dec 9, 1996 in Thunder Bay, Ontario, CAN (age 29) · 6'4", 225 lb · Catches left · Drafted 42nd overall in 2015 by NJD (round 2)

Trophy case

William M. Jennings Trophy Goaltender(s) on Team with Fewest Goals Against 2025-26

Compare with a similar player

The goalies closest to him in games played in 2019-20. Pick one to see the two side by side, or choose someone else.

Braden Holtby WSH · 48 GP, 0.897 David Rittich CGY · 48 GP, 0.907 Jonathan Bernier DET · 46 GP, 0.907 Marc-Andre Fleury VGK · 49 GP, 0.905 Semyon Varlamov NYI · 45 GP, 0.914

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.

020402018-19: 23 games2318-192019-20: 47 games4719-202020-21: 35 games3520-212021-22: 25 games2521-222022-23: 22 games2222-232023-24: 44 games4423-242024-25: 56 games5624-252025-26: 39 games3925-262026-27: 4 games426-27

Games played by season. The darker bar is the season shown below.

Season Team GP WLOTLSO Shots against Saves Goals against GAA Save % Cap hit
2018-19 NJD 23 101002 669 614 55 2.61 0.918 $698K
2019-20 NJD 47 221483 1452 1328 124 2.77 0.915 $698K
2020-21 NJD 35 141741 1081 975 106 3.04 0.902 $2.8M
2021-22 NJD 25 91042 731 652 79 3.39 0.892 $2.8M
2022-23 NJD 22 10620 563 503 60 3.20 0.893 $2.8M
2023-24 SJS 44 102542 1383 1243 140 3.45 0.899 $2.35M
2024-25 SJS 19 6931 583 531 53 3.00 0.911 $2.35M
2024-25 COL 37 221233 966 882 84 2.33 0.913
2025-26 COL 39 231023 933 843 90 2.51 0.904 $5.25M
2026-27 COL 4 2100 97 84 13 3.31 0.866 $5.25M
9 seasons Career 295 1281143017 8458 7655 804 2.90 0.905

Playoffs

Playoff games only. Pick a season to see that year's bracket.

Season Team GP WLOTLSO Shots against Saves Goals against GAA Save %
2024-25 COL 7 3401 176 157 19 2.71 0.892
2025-26 COL 4 1100 73 65 8 2.82 0.890
2 seasons Playoffs 11 4501 249 222 27 2.74 0.892

2019-20 season totals

GP Starts WLOTLSO Shots against Saves Goals against GAA Save %
47 43 221483 1452 1328 124 2.77 0.915

Contract

$698KCap hitends in 2020, then RFA
$29KCap dollars per goal above replacement24.2 goals above replacement
$7.1MWorth at the going ratewhat teams paid for a season like his
+$6.4MValueworth minus cap hit; below zero is overpaid

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 57 ranked goalies whose contract is known. How value is worked out.

The contract

Signed by the New Jersey Devils on Dec 30, 2015, as an entry-level contract: 3 years and $2.775M, beginning in 2017-18. It runs through 2019-20, so this is its last season, after which he is a restricted free agent.

Season Cap hit Base salary Signing bonus Performance bonuses Paid in all Clause
2017-18 $698K $650K $93K $258K $743K
2018-19 $698K $650K $0 $258K $650K
2019-20 $698K $700K $0 $133K $700K

Each season of the contract, with this one marked. The cap hit is the same every year; what he is paid is not. The pay is as written when the contract was recorded in October 2024, so a later change, such as the rise in the lowest salary for 2026-27, is not shown.

Contracts he has signed

Signed Signed by Kind Seasons Years In all Cap hit
Dec 27, 2024 Colorado Avalanche Extension 2025-26 to 2029-30 5 $26.25M $5.25M
Jul 1, 2023 San Jose Sharks New contract 2023-24 to 2024-25 2 $4.7M $2.35M
Dec 23, 2020 New Jersey Devils New contract 2020-21 to 2022-23 3 $8.4M $2.8M
Dec 30, 2015 New Jersey Devils Entry-level 2017-18 to 2019-20 signed for 2015-16, slid 3 $2.775M $698K

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 2019-20 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.

2019-20 analytics

Rating

+24.2Goals above replacement3rd of 57 goalies
+4.0Wins above replacementgoals above replacement divided by six
+10.5Goals above averagehis goals saved above expected

Each number is coloured by where it ranks among the 57 ranked goalies: 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. Goals above average is coloured as it is under Shots faced below, where it is taken per 60 minutes.

The goals he saved for his team, compared with a spare-part goalie facing the same shots. A goalie's season is about one-third the goalie and two-thirds chance, so read one year lightly. Before 2023-24 the NHL timed events less exactly, and differently from rink to rink, so expected goals for this season are rougher than for recent ones.

-100102030402018-192020-212022-232024-252026-27Goals above replacementGoals above replacement, by season

Shots faced

Expected goals adds up how likely each shot he faced was to go in, judged by where it came from, what kind of shot it was and whether it was a rebound. A goalie who lets in fewer than that has saved goals above expected. Only shots taken while he was in net count, and the league's goalies as a whole come out at zero. Before 2023-24 the NHL timed events less exactly, and differently from rink to rink, so expected goals for this season are rougher than for recent ones. What these numbers mean

+10.5Goals saved above expectedexpected goals minus goals against
134.5Expected goals againstfrom 1,990 unblocked attempts
124Goals againstwhile he was in net
0.915Save %0.907 expected from his shots

Goals saved above expected, taken per 60 minutes, and save % are coloured by where they rank among the 59 goalies 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. The two goals against tiles are left plain, since they follow how much he played.

Goals saved +0.23 above expected per 60 minutes78th
Shot difficulty 6.8% chance per attempt faced69thA higher bar means his team gives up more dangerous shots.

Each bar shows the share of goalies he is ahead of, among the 59 who played at least a quarter as much as the busiest this season.

050100Game 10Game 20Game 30Game 40Expected 134.5Allowed 124

The goals he was expected to let in and the goals he did, as the season went on. When the allowed line runs below the expected line, he is saving more than his shots were worth.

Where he was shot at

Every unblocked attempt he faced this season, with his net on the right. Darker red means more attempts from that spot, and each dot is a goal. "Show every shot" switches to a dot for each attempt, bigger for a better chance. Click a goal for its details.

Game log

Date Opponent Result Decision Shots against Saves Goals against Save % TOI
Mar 10, 2020 vs PIT L 2-5 L 32 28 4 0.875 59:32
Mar 7, 2020 @ NYR W 6-4 W 35 31 4 0.886 60:00
Mar 3, 2020 @ VGK L 0-3 L 32 29 3 0.906 59:47
Feb 29, 2020 @ LAK L 1-2 (OT) OTL 38 36 2 0.947 61:58
Feb 22, 2020 vs WSH W 3-2 W 35 33 2 0.943 60:00
Feb 20, 2020 vs SJS W 2-1 W 37 36 1 0.973 60:00
Feb 16, 2020 vs CBJ W 4-3 (SO) W 55 52 3 0.945 65:00
Feb 13, 2020 vs DET W 4-1 W 26 25 1 0.962 60:00
Feb 8, 2020 vs LAK W 3-0 W, SO 37 37 0 1.000 59:36
Feb 6, 2020 @ PHI W 5-0 W, SO 46 46 0 1.000 59:47
Jan 30, 2020 vs NSH L 5-6 (SO) OTL 30 25 5 0.833 64:49
Jan 27, 2020 @ OTT W 4-3 (SO) W 38 35 3 0.921 65:00
Jan 18, 2020 @ CBJ L 0-5 14 13 1 0.929 27:46
Jan 9, 2020 @ NYR L 3-6 L 25 20 5 0.800 35:02
Jan 7, 2020 vs NYI L 3-4 (OT) OTL 41 37 4 0.902 63:59
Jan 4, 2020 vs COL L 2-5 L 33 29 4 0.879 57:28
Jan 2, 2020 @ NYI W 2-1 W 30 29 1 0.967 60:00
Dec 31, 2019 vs BOS W 3-2 (SO) W 30 28 2 0.933 65:00
Dec 29, 2019 @ OTT W 4-3 (OT) W 23 20 3 0.870 60:54
Dec 27, 2019 vs TOR L 4-5 (OT) OTL 37 32 5 0.865 61:39
Dec 23, 2019 @ CHI W 7-1 W 33 32 1 0.970 60:00
Dec 20, 2019 vs WSH L 3-6 L 26 21 5 0.808 48:25
Dec 18, 2019 vs ANA W 3-1 W 27 26 1 0.963 60:00
Dec 14, 2019 @ ARI W 2-1 W 32 31 1 0.969 59:38
Dec 13, 2019 @ COL L 1-3 19 19 0 1.000 29:05
Dec 10, 2019 @ DAL L 0-2 L 35 33 2 0.943 58:38
Dec 6, 2019 vs CHI L 1-2 (SO) OTL 29 28 1 0.966 64:40
Dec 3, 2019 vs VGK L 3-4 L 30 26 4 0.867 58:16
Dec 2, 2019 @ BUF L 1-7 17 15 2 0.882 39:52
Nov 30, 2019 vs NYR L 0-4 L 22 19 3 0.864 59:52
Nov 28, 2019 @ MTL W 6-4 W 48 44 4 0.917 60:00
Nov 22, 2019 @ PIT L 1-4 L 36 32 4 0.889 42:30
Nov 19, 2019 vs BOS L 1-5 L 28 23 5 0.821 60:00
Nov 16, 2019 @ MTL W 4-3 (OT) W 34 31 3 0.912 61:07
Nov 15, 2019 vs PIT W 2-1 W 39 38 1 0.974 60:00
Nov 13, 2019 vs OTT L 2-4 L 24 21 3 0.875 58:51
Nov 10, 2019 @ VAN W 2-1 W 31 30 1 0.968 60:00
Nov 7, 2019 @ CGY L 2-5 L 38 33 5 0.868 60:00
Nov 5, 2019 @ WPG W 2-1 (SO) W 33 32 1 0.970 65:00
Nov 2, 2019 @ CAR W 5-3 W 27 24 3 0.889 60:00
Nov 1, 2019 vs PHI L 3-4 (SO) OTL 31 28 3 0.903 64:22
Oct 25, 2019 vs ARI L 3-5 L 16 12 4 0.750 59:43
Oct 19, 2019 vs VAN W 1-0 W, SO 25 25 0 1.000 60:00
Oct 17, 2019 vs NYR W 5-2 W 31 29 2 0.935 59:40
Oct 10, 2019 vs EDM L 3-4 (SO) OTL 22 19 3 0.864 65:00
Oct 5, 2019 @ BUF L 2-7 L 36 29 7 0.806 59:46
Oct 4, 2019 vs WPG L 4-5 (SO) OTL 9 7 2 0.778 22:19