Goalie stats
NHL Goalie Save Percentage Leaders
2025-26All situationsThrough 82 team games
This board ranks NHL goalies by save percentage, regular season only, among goalies with enough starts. Pick any season back to 2017-18 above the table.
Save percentage is saves divided by shots on goal. League average sits around .900 to .905; a full season above .920 is elite. SV% is a ratio category, so a goalie with few starts can help or hurt it a lot. The minimum-starts cutoff keeps emergency call-ups off the top.
Leader in 2025-26: Scott Wedgewood (COL), 0.921 SV%.
Save Percentage leaderboard
| # | Goalie | Team | SV% | GS | SA | GA | GAA | |
|---|---|---|---|---|---|---|---|---|
| 1 | Scott WedgewoodCOL | COL | 0.921 | 43 | 1,093 | 86 | 2.02 | 96%▼3.4 |
| 2 | Jesper WallstedtMIN | MIN | 0.916 | 33 | 1,020 | 87 | 2.61 | 94%▲15 |
| 3 | Andrei VasilevskiyTBL | TBL | 0.912 | 58 | 1,483 | 132 | 2.31 | 99%▲0.6 |
| 4 | Logan ThompsonWSH | WSH | 0.912 | 58 | 1,587 | 140 | 2.44 | 100% |
| 5 | Igor ShesterkinNYR | NYR | 0.912 | 51 | 1,425 | 126 | 2.50 | 93%▲1.8 |
| 6 | Ukko-Pekka LuukkonenBUF | BUF | 0.910 | 34 | 930 | 85 | 2.52 | 77%▼1 |
| 7 | Anton ForsbergLAK | LAK | 0.910 | 31 | 952 | 87 | 2.57 | 26%▼17 |
| 8 | Joel HoferSTL | STL | 0.910 | 43 | 1,250 | 114 | 2.61 | 80%▲2.1 |
| 9 | Devin CooleyCGY | CGY | 0.909 | 26 | 847 | 77 | 2.69 | 14%▲13 |
| 10 | Philipp GrubauerSEA | SEA | 0.909 | 28 | 866 | 79 | 2.65 | 14%▲9.6 |
| 11 | Jet GreavesCBJ | CBJ | 0.908 | 53 | 1,539 | 142 | 2.60 | 86%▲21 |
| 12 | Jeremy SwaymanBOS | BOS | 0.908 | 54 | 1,571 | 146 | 2.71 | 97%▲1.5 |
| 13 | Alex LyonBUF | BUF | 0.907 | 34 | 979 | 92 | 2.77 | 33%▼17 |
| 14 | Casey DeSmithDAL | DAL | 0.907 | 28 | 760 | 71 | 2.43 | 17%▲16 |
| 15 | Ilya SorokinNYI | NYI | 0.906 | 54 | 1,530 | 144 | 2.68 | 97% |
| 16 | Dan VladarPHI | PHI | 0.906 | 51 | 1,283 | 121 | 2.42 | 76%▲9.3 |
| 17 | Filip GustavssonMIN | MIN | 0.904 | 49 | 1,377 | 133 | 2.69 | 64%▼11 |
| 18 | Jake AllenNJD | NJD | 0.904 | 36 | 1,031 | 100 | 2.74 | 54%▲29 |
| 19 | Mackenzie BlackwoodCOL | COL | 0.904 | 36 | 933 | 90 | 2.51 | 90%▲6.2 |
| 20 | Spencer KnightCHI | CHI | 0.902 | 55 | 1,583 | 155 | 2.82 | 79%▲17 |
| 21 | John GibsonDET | DET | 0.901 | 57 | 1,461 | 144 | 2.72 | 72% |
| 22 | Jakub DobesMTL | MTL | 0.901 | 42 | 1,187 | 117 | 2.78 | 96%▲13 |
| 23 | Jake OettingerDAL | DAL | 0.899 | 54 | 1,372 | 138 | 2.59 | 99%▼0.6 |
| 24 | Dustin WolfCGY | CGY | 0.899 | 55 | 1,558 | 158 | 3.01 | 66%▲27 |
| 25 | Joseph WollTOR | TOR | 0.899 | 38 | 1,220 | 124 | 3.34 | 33%▲20 |
| 26 | Connor IngramEDM | EDM | 0.899 | 30 | 763 | 77 | 2.60 | — |
| 27 | Joey DaccordSEA | SEA | 0.897 | 46 | 1,307 | 136 | 3.03 | 54%▲22 |
| 28 | Karel VejmelkaUTA | UTA | 0.897 | 63 | 1,626 | 169 | 2.75 | 98%▲3.3 |
| 29 | Alex NedeljkovicSJS | SJS | 0.896 | 34 | 1,049 | 109 | 2.87 | 18%▲13 |
| 30 | Connor HellebuyckWPG | WPG | 0.895 | 57 | 1,547 | 162 | 2.86 | 94%▲7.4 |
| 31 | Daniil TarasovFLA | FLA | 0.895 | 31 | 925 | 97 | 3.05 | 11%▲9.4 |
| 32 | Brandon BussiCAR | CAR | 0.895 | 39 | 912 | 97 | 2.47 | 96%▲9.8 |
| 33 | David RittichNYI | NYI | 0.894 | 28 | 720 | 76 | 2.76 | 5.6%▲5.5 |
| 34 | Joonas KorpisaloBOS | BOS | 0.894 | 28 | 851 | 90 | 3.15 | 7.6%▲5.2 |
| 35 | Juuse SarosNSH | NSH | 0.894 | 59 | 1,700 | 181 | 3.16 | 84%▲16 |
| 36 | Anthony StolarzTOR | TOR | 0.893 | 25 | 708 | 76 | 3.28 | 30%▲27 |
| 37 | Akira SchmidVGK | VGK | 0.893 | 29 | 791 | 85 | 2.59 | 28%▲26 |
| 38 | Darcy KuemperLAK | LAK | 0.891 | 50 | 1,234 | 134 | 2.78 | 58%▼5.2 |
| 39 | Linus UllmarkOTT | OTT | 0.891 | 49 | 1,198 | 131 | 2.73 | 81%▼5.4 |
| 40 | Lukas DostalANA | ANA | 0.888 | 55 | 1,513 | 169 | 3.10 | 81%▲50 |
| 41 | Arturs SilovsPIT | PIT | 0.888 | 38 | 1,020 | 115 | 3.07 | 45%▲41 |
| 42 | Stuart SkinnerPIT/EDM | PIT/EDM | 0.888 | 50 | 1,267 | 142 | 2.92 | 42%▲29 |
| 43 | Yaroslav AskarovSJS | SJS | 0.884 | 47 | 1,341 | 157 | 3.63 | 77%▲65 |
| 44 | Cam TalbotDET | DET | 0.883 | 25 | 797 | 93 | 3.19 | 5.8%▲4.7 |
| 45 | Jacob MarkstromNJD | NJD | 0.883 | 43 | 1,113 | 130 | 3.07 | 89%▲43 |
| 46 | Elvis MerzlikinsCBJ | CBJ | 0.883 | 29 | 812 | 95 | 3.40 | 8.9%▲7.9 |
| 47 | Tristan JarryEDM/PIT | EDM/PIT | 0.882 | 29 | 832 | 98 | 3.32 | 9.4% |
| 48 | Sergei BobrovskyFLA | FLA | 0.877 | 51 | 1,250 | 154 | 3.07 | 88%▲16 |
| 49 | Kevin LankinenVAN | VAN | 0.875 | 43 | 1,285 | 160 | 3.70 | 32%▲25 |
| 50 | Frederik AndersenCAR | CAR | 0.874 | 35 | 849 | 107 | 3.05 | 38%▲31 |
| 51 | Jordan BinningtonSTL | STL | 0.873 | 39 | 1,010 | 128 | 3.33 | 31%▲24 |
| 52 | Adin HillVGK | VGK | 0.871 | 27 | 587 | 76 | 3.04 | 24%▲17 |
| 53 | Samuel ErssonPHI | PHI | 0.870 | 29 | 744 | 97 | 3.12 | 9.7%▲8.9 |
Minimum sample: 25 starts (it scales with games played). 45 below the minimum are hidden.
How to read it
Saves divided by shots on goal (minimum starts scale with the season).
How reliable is it?
Save percentage needs a big sample: even a full season is only moderately repeatable. Compare it with the shot-quality boards.
About our data sources →Projected next
Our fantasy projections for save percentage: who should lead the coming games.
Related leaderboards
- Goals Against AverageGoals allowed per 60 minutes in net, lowest first (minimum starts scale with the season).
- Save % by shot classPercentage points above expected. +1.0 means about one extra save per 100 unblocked shots compared with an average goalie facing the same mix.
- Team Save PercentageTeam saves divided by shots on goal against, all goalies.