Hockey Terminal
Be a GM

← All players

Photo of Kaapo Kahkonen

Kaapo Kahkonen

#34 · Goalie · Montréal Canadiens

Born Aug 16, 1996 in Helsinki, FIN (age 30) · 6'2", 217 lb · Catches left · Drafted 109th overall in 2014 by MIN (round 4)

Compare with a similar player

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

Cal Petersen LAK · 37 GP, 0.895 Jordan Binnington STL · 37 GP, 0.901 Scott Wedgewood DAL · 37 GP, 0.910 Jake Allen MTL · 35 GP, 0.905 Martin Jones PHI · 35 GP, 0.900

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.

01020302019-20: 5 games519-202020-21: 24 games2420-212021-22: 36 games3621-222022-23: 37 games3722-232023-24: 37 games3723-242024-25: 1 games124-25

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
2019-20 MIN 5 3110 172 157 15 2.96 0.913 $768K
2020-21 MIN 24 16802 692 624 68 2.88 0.902 $725K
2021-22 MIN 25 12830 734 668 66 2.87 0.910 $725K
2021-22 SJS 11 2610 322 295 27 2.86 0.916
2022-23 SJS 37 92071 1149 1014 135 3.85 0.883 $2.75M
2023-24 SJS 31 62030 996 891 105 3.81 0.895 $2.75M
2023-24 NJD 6 1401 143 132 11 2.51 0.923
2024-25 COL 1 0100 20 16 4 4.12 0.800 $1M
6 seasons Career 140 4968154 4228 3797 431 3.34 0.898

2021-22 season totals

GP Starts WLOTLSO Shots against Saves Goals against GAA Save %
36 33 141440 1056 963 93 2.87 0.912

Contract

$725KCap hitends in 2022
$50KCap dollars per goal above replacement14.5 goals above replacement
$3.5MWorth at the going ratewhat teams paid for a season like his
+$2.7MValueworth 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 59 ranked goalies whose contract is known. How value is worked out.

The contract

Signed by the Minnesota Wild on Oct 12, 2020, as a new contract: 2 years and $1.45M, beginning in 2020-21. It runs through 2021-22, so this is its last season.

Season Cap hit Base salary Signing bonus Performance bonuses Paid in all Clause
2020-21 $725K $700K $0 $700K
2021-22 $725K $750K $0 $750K

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
Jul 1, 2026 Montréal Canadiens New contract 2026-27 to 2026-27 1 $1M $1M
2025-26 to 2025-26 $1.15M
Jul 1, 2024 Winnipeg Jets New contract 2024-25 to 2024-25 1 $1M $1M
Jul 18, 2022 San Jose Sharks New contract 2022-23 to 2023-24 2 $5.5M $2.75M
Oct 12, 2020 Minnesota Wild New contract 2020-21 to 2021-22 2 $1.45M $725K
May 16, 2018 Minnesota Wild Entry-level 2018-19 to 2019-20 2 $1.85M $768K

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 2021-22 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.

2021-22 analytics

Rating

+14.5Goals above replacement24th of 61 goalies
+2.4Wins above replacementgoals above replacement divided by six
+4.6Goals above averagehis goals saved above expected

Each number is coloured by where it ranks among the 61 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. Provisional: under 40 games it is more chance than player. 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.

-20-10010202019-202020-212021-222022-232023-242024-25Goals 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

+4.6Goals saved above expectedexpected goals minus goals against
97.6Expected goals againstfrom 1,467 unblocked attempts
93Goals againstwhile he was in net
0.912Save %0.908 expected from his shots

Goals saved above expected, taken per 60 minutes, and save % are coloured by where they rank among the 65 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.14 above expected per 60 minutes63rd
Shot difficulty 6.7% chance per attempt faced37thA higher bar means his team gives up more dangerous shots.

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

020406080Game 10Game 20Game 30Expected 97.6Allowed 93

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
Apr 29, 2022 @ SEA L 0-3 L 30 28 2 0.933 57:13
Apr 26, 2022 vs ANA L 2-5 L 30 26 4 0.867 59:01
Apr 23, 2022 vs CHI W 4-1 W 28 27 1 0.964 60:00
Apr 19, 2022 vs CBJ W 3-2 W 24 22 2 0.917 60:00
Apr 16, 2022 @ DAL L 1-2 L 26 24 2 0.923 58:31
Apr 12, 2022 @ NSH L 0-1 (OT) OTL 41 40 1 0.976 63:18
Apr 9, 2022 @ VAN L 2-4 L 38 35 3 0.921 57:50
Apr 7, 2022 vs CGY L 2-4 5 5 0 1.000 10:26
Apr 2, 2022 vs DAL L 4-5 14 10 4 0.714 20:00
Mar 31, 2022 @ COL L 2-4 L 46 42 4 0.913 59:51
Mar 24, 2022 @ EDM L 2-5 L 40 36 4 0.900 59:49
Mar 13, 2022 vs NSH L 2-6 L 23 19 4 0.826 58:00
Mar 11, 2022 @ CBJ L 2-3 (SO) OTL 28 26 2 0.929 64:42
Mar 6, 2022 vs DAL L 3-6 L 21 17 4 0.810 29:52
Mar 4, 2022 @ BUF L 4-5 L 37 33 4 0.892 58:35
Feb 26, 2022 @ CGY L 3-7 L 33 28 5 0.848 57:27
Feb 24, 2022 @ TOR L 1-3 L 24 22 2 0.917 57:55
Feb 20, 2022 @ EDM W 7-3 W 33 30 3 0.909 60:00
Feb 14, 2022 vs DET W 7-4 W 34 30 4 0.882 59:40
Feb 8, 2022 @ WPG L 0-2 L 28 27 1 0.964 57:13
Jan 30, 2022 @ NYI W 4-3 W 43 40 3 0.930 60:00
Jan 24, 2022 vs MTL W 8-2 6 5 1 0.833 20:00
Jan 22, 2022 vs CHI W 4-3 (OT) W 36 33 3 0.917 63:12
Jan 21, 2022 @ CHI W 5-1 W 36 35 1 0.972 60:00
Jan 17, 2022 @ COL L 3-4 (SO) OTL 38 35 3 0.921 64:54
Jan 14, 2022 vs ANA W 7-3 W 42 39 3 0.929 60:00
Jan 8, 2022 vs WSH W 3-2 (SO) W 31 29 2 0.935 63:54
Jan 6, 2022 @ BOS W 3-2 W 38 36 2 0.947 59:16
Jan 1, 2022 vs STL L 4-6 4 4 0 1.000 12:15
Dec 11, 2021 @ LAK L 1-2 L 37 35 2 0.946 58:12
Dec 2, 2021 vs NJD W 5-2 W 31 29 2 0.935 60:00
Nov 30, 2021 vs ARI W 5-2 W 31 29 2 0.935 59:25
Nov 21, 2021 @ TBL L 4-5 (SO) OTL 24 20 4 0.833 60:55
Nov 10, 2021 @ ARI W 5-2 W 26 24 2 0.923 59:58
Nov 7, 2021 vs NYI W 5-2 W 21 19 2 0.905 59:36
Oct 24, 2021 vs NSH L 2-5 L 29 24 5 0.828 55:57