Thatcher Demko
#35 · Goalie · Vancouver Canucks
Born Dec 8, 1995 in San Diego, California, USA (age 30) · 6'4", 192 lb · Catches left · Drafted 36th overall in 2014 by VAN (round 2)
Compare with a similar player
The goalies closest to him in games played in 2020-21. Pick one to see the two side by side, or choose someone else.
Cal Petersen
LAK ·
35 GP, 0.911
Igor Shesterkin
NYR ·
35 GP, 0.916
John Gibson
ANA ·
35 GP, 0.903
Mackenzie Blackwood
NJD ·
35 GP, 0.902
Juuse Saros
NSH ·
36 GP, 0.927
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.
Games played by season. The darker bar is the season shown below.
| Season | Team | GP | W | L | OTL | SO | Shots against | Saves | Goals against | GAA | Save % | Cap hit |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2017-18 | VAN | 1 | 1 | 0 | 0 | 0 | 30 | 26 | 4 | 3.91 | 0.867 | $925K |
| 2018-19 | VAN | 9 | 4 | 3 | 1 | 0 | 288 | 263 | 25 | 2.81 | 0.913 | $925K |
| 2019-20 | VAN | 27 | 13 | 10 | 2 | 0 | 822 | 744 | 78 | 3.06 | 0.905 | $1.05M |
| 2020-21 | VAN | 35 | 16 | 18 | 1 | 1 | 1164 | 1065 | 99 | 2.85 | 0.915 | $1.05M |
| 2021-22 | VAN | 64 | 33 | 22 | 7 | 1 | 1967 | 1799 | 168 | 2.72 | 0.915 | $5M |
| 2022-23 | VAN | 32 | 14 | 14 | 4 | 1 | 1005 | 906 | 99 | 3.16 | 0.901 | $5M |
| 2023-24 | VAN | 51 | 35 | 14 | 2 | 5 | 1492 | 1369 | 123 | 2.45 | 0.918 | $5M |
| 2024-25 | VAN | 23 | 10 | 8 | 3 | 1 | 569 | 506 | 63 | 2.90 | 0.889 | $5M |
| 2025-26 | VAN | 20 | 8 | 10 | 1 | 1 | 514 | 461 | 54 | 2.90 | 0.897 | $5M |
| 9 seasons | Career | 262 | 134 | 99 | 21 | 10 | 7851 | 7139 | 713 | 2.81 | 0.909 |
Playoffs
Playoff games only. Pick a season to see that year's bracket.
| Season | Team | GP | W | L | OTL | SO | Shots against | Saves | Goals against | GAA | Save % |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2019-20 | VAN | 4 | 2 | 1 | 0 | 1 | 130 | 128 | 2 | 0.64 | 0.985 |
| 2023-24 | VAN | 1 | 1 | 0 | 0 | 0 | 24 | 22 | 2 | 2.00 | 0.917 |
| 2 seasons | Playoffs | 5 | 3 | 1 | 0 | 1 | 154 | 150 | 4 | 0.97 | 0.974 |
2020-21 season totals
| GP | Starts | W | L | OTL | SO | Shots against | Saves | Goals against | GAA | Save % |
|---|---|---|---|---|---|---|---|---|---|---|
| 35 | 35 | 16 | 18 | 1 | 1 | 1164 | 1065 | 99 | 2.85 | 0.915 |
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 45 ranked goalies whose contract is known. How value is worked out.
The contract
Signed by the Vancouver Canucks on Apr 24, 2019, as an extension of the contract he was on: 2 years and $2.1M, beginning in 2019-20. It runs through 2020-21, so this is its last season, and his extension takes over. His next contract is already signed: an extension with the Vancouver Canucks on Mar 31, 2021, 5 years and $25M at $5M a season, beginning in 2021-22.
| Season | Cap hit | Base salary | Signing bonus | Performance bonuses | Paid in all | Clause |
|---|---|---|---|---|---|---|
| 2019-20 | $1.05M | $900K | $0 | $900K | ||
| 2020-21 | $1.05M | $1.2M | $0 | $1.2M |
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, 2025 | Vancouver Canucks | Extension | 2026-27 to 2028-29 | 3 | $25.5M | $8.5M |
| Mar 31, 2021 | Vancouver Canucks | Extension not begun | 2021-22 to 2025-26 | 5 | $25M | $5M |
| Apr 24, 2019 | Vancouver Canucks | Extension | 2019-20 to 2020-21 | 2 | $2.1M | $1.05M |
| Apr 20, 2016 | Vancouver Canucks | Entry-level | 2016-17 to 2018-19 | 3 | $8.825M | $925K |
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 2020-21 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.
2020-21 analytics
Rating
Each number is coloured by where it ranks among the 47 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.
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
Goals saved above expected, taken per 60 minutes, and save % are coloured by where they rank among the 64 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.
Each bar shows the share of goalies he is ahead of, among the 64 who played at least a quarter as much as the busiest this season.
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 |
|---|---|---|---|---|---|---|---|---|
| May 18, 2021 | vs CGY | W 4-2 | W | 40 | 38 | 2 | 0.950 | 59:55 |
| May 15, 2021 | @ EDM | W 4-1 | W | 32 | 31 | 1 | 0.969 | 60:00 |
| May 13, 2021 | @ CGY | L 1-4 | L | 28 | 24 | 4 | 0.857 | 59:49 |
| May 10, 2021 | @ WPG | W 3-1 | W | 40 | 39 | 1 | 0.975 | 60:00 |
| May 8, 2021 | @ EDM | L 3-4 | L | 34 | 30 | 4 | 0.882 | 57:59 |
| May 6, 2021 | @ EDM | W 6-3 | W | 42 | 39 | 3 | 0.929 | 60:00 |
| May 4, 2021 | vs EDM | L 1-4 | L | 27 | 23 | 4 | 0.852 | 59:54 |
| May 1, 2021 | @ TOR | L 1-5 | L | 29 | 25 | 4 | 0.862 | 57:47 |
| Apr 28, 2021 | @ OTT | L 3-6 | L | 32 | 27 | 5 | 0.844 | 58:56 |
| Apr 22, 2021 | vs OTT | L 0-3 | L | 24 | 22 | 2 | 0.917 | 57:56 |
| Mar 24, 2021 | vs WPG | L 1-5 | L | 35 | 31 | 4 | 0.886 | 58:10 |
| Mar 22, 2021 | vs WPG | L 0-4 | L | 29 | 25 | 4 | 0.862 | 60:00 |
| Mar 19, 2021 | @ MTL | W 3-2 (OT) | W | 31 | 29 | 2 | 0.935 | 62:01 |
| Mar 17, 2021 | @ OTT | W 3-2 (SO) | W | 32 | 30 | 2 | 0.938 | 65:00 |
| Mar 15, 2021 | @ OTT | W 3-2 (OT) | W | 46 | 44 | 2 | 0.957 | 61:40 |
| Mar 13, 2021 | vs EDM | W 2-1 | W | 35 | 34 | 1 | 0.971 | 59:51 |
| Mar 10, 2021 | vs MTL | L 1-5 | L | 45 | 40 | 5 | 0.889 | 60:00 |
| Mar 8, 2021 | vs MTL | W 2-1 (SO) | W | 30 | 29 | 1 | 0.967 | 64:20 |
| Mar 6, 2021 | vs TOR | W 4-2 | W | 39 | 37 | 2 | 0.949 | 60:00 |
| Mar 4, 2021 | vs TOR | W 3-1 | W | 32 | 31 | 1 | 0.969 | 59:48 |
| Mar 1, 2021 | @ WPG | W 4-0 | W, SO | 27 | 27 | 0 | 1.000 | 59:59 |
| Feb 25, 2021 | vs EDM | L 0-3 | L | 33 | 31 | 2 | 0.939 | 58:45 |
| Feb 23, 2021 | vs EDM | L 3-4 | L | 29 | 25 | 4 | 0.862 | 58:28 |
| Feb 19, 2021 | vs WPG | L 0-2 | L | 30 | 29 | 1 | 0.967 | 57:56 |
| Feb 15, 2021 | vs CGY | L 3-4 (OT) | OTL | 27 | 23 | 4 | 0.852 | 59:09 |
| Feb 13, 2021 | vs CGY | W 3-1 | W | 19 | 18 | 1 | 0.947 | 60:00 |
| Feb 11, 2021 | vs CGY | L 1-3 | L | 26 | 23 | 3 | 0.885 | 57:16 |
| Feb 4, 2021 | @ TOR | L 3-7 | L | 37 | 30 | 7 | 0.811 | 59:26 |
| Feb 2, 2021 | @ MTL | L 3-5 | L | 32 | 28 | 4 | 0.875 | 57:20 |
| Jan 30, 2021 | @ WPG | W 4-1 | W | 24 | 23 | 1 | 0.958 | 59:50 |
| Jan 27, 2021 | vs OTT | W 5-1 | W | 43 | 42 | 1 | 0.977 | 60:00 |
| Jan 25, 2021 | vs OTT | W 7-1 | W | 36 | 35 | 1 | 0.972 | 60:00 |
| Jan 21, 2021 | vs MTL | L 3-7 | L | 42 | 35 | 7 | 0.833 | 59:24 |
| Jan 18, 2021 | @ CGY | L 2-5 | L | 31 | 27 | 4 | 0.871 | 56:17 |
| Jan 14, 2021 | @ EDM | L 2-5 | L | 46 | 41 | 5 | 0.891 | 59:52 |