Counting stats
NHL Shots on Goal per 60 Leaders
2024-25All situationsThrough 85 team games
This board ranks skaters by shots on goal per 60 minutes of ice time in all situations, so a fourth-liner who plays 9 minutes is compared fairly with a top-pair defenseman who plays 25. Players under the minimum-minutes cutoff are hidden.
Shots on goal count every shot that the goalie saved or that went in. Volume shooters with power-play time lead the league; shots are the most repeatable scoring stat a skater has. Rates surface low-minute players who already produce; they are the ones to grab when an injury opens up ice time.
Leader in 2024-25: Brady Tkachuk (OTT), 13.53 SOG/60.
Shots on Goal per 60 leaderboard
| # | Player | Team | SOG/60 | SOG | ||
|---|---|---|---|---|---|---|
| 1 | Brady TkachukFOTT | OTT | 13.53 | 1,313 | 296 | 100%▲2.3 |
| 2 | Alex OvechkinFWSH | WSH | 12.34 | 1,152 | 237 | 96%▲0.8 |
| 3 | David PastrnakFBOS | BOS | 11.56 | 1,655 | 319 | 100%▲1.2 |
| 4 | Auston MatthewsFTOR | TOR | 11.42 | 1,372 | 261 | 99% |
| 5 | Pavel DorofeyevFVGK | VGK | 11.25 | 1,355 | 254 | 93%▲2.1 |
| 6 | Filip ForsbergFNSH | NSH | 11.04 | 1,527 | 281 | 99%▲1.7 |
| 7 | Sam BennettFFLA | FLA | 10.90 | 1,326 | 241 | 83%▲3.9 |
| 8 | Nathan MacKinnonFCOL | COL | 10.67 | 1,800 | 320 | 100%▲0.8 |
| 9 | Jack HughesFNJD | NJD | 10.60 | 1,296 | 229 | 100% |
| 10 | Tyler ToffoliFSJS | SJS | 10.59 | 1,321 | 233 | 38%▼17 |
| 11 | Nazem KadriFCGY | CGY | 10.55 | 1,587 | 279 | 71%▼8.9 |
| 12 | Michael EyssimontFSEA | SEA | 10.42 | 817 | 142 | 0.1% |
| 13 | Dylan GuentherFUTA | UTA | 10.29 | 1,190 | 204 | 99%▲1.8 |
| 14 | Macklin CelebriniFSJS | SJS | 10.22 | 1,385 | 236 | 100%▲1.1 |
| 15 | Tage ThompsonFBUF | BUF | 10.19 | 1,425 | 242 | 100%▲1.3 |
| 16 | Timo MeierFNJD | NJD | 10.04 | 1,429 | 239 | 82%▼8.1 |
| 17 | Carter VerhaegheFFLA | FLA | 10.03 | 1,447 | 242 | 72%▲0.7 |
| 18 | Jordan KyrouFSTL | STL | 10.00 | 1,434 | 239 | 79%▲2.4 |
| 19 | Anders LeeFNYI | NYI | 9.99 | 1,399 | 233 | 29%▼20 |
| 20 | Alex DeBrincatFDET | DET | 9.99 | 1,465 | 244 | 100%▲2.7 |
| 21 | Logan StankovenFCAR | CAR | 9.89 | 1,177 | 194 | 67%▲42 |
| 22 | Frank VatranoFANA | ANA | 9.88 | 1,421 | 234 | 6.4%▲6.2 |
| 23 | Matthew TkachukFFLA | FLA | 9.87 | 948 | 156 | 100%▲2.8 |
| 24 | Carl GrundstromFSJS | SJS | 9.83 | 537 | 88 | 0.1% |
| 25 | Cutter GauthierFANA | ANA | 9.82 | 1,161 | 190 | 98%▲1.2 |
| 26 | Matt BoldyFMIN | MIN | 9.77 | 1,664 | 271 | 100% |
| 27 | Kevin FialaFLAK | LAK | 9.76 | 1,500 | 244 | 66%▼8.7 |
| 28 | Cole CaufieldFMTL | MTL | 9.72 | 1,482 | 240 | 100%▲0.9 |
| 29 | Nikita KucherovFTBL | TBL | 9.62 | 1,653 | 265 | 100% |
| 30 | Nikolaj EhlersFWPG | WPG | 9.58 | 1,090 | 174 | 93%▲7 |
| 31 | Kyle ConnorFWPG | WPG | 9.58 | 1,672 | 267 | 99%▲1.1 |
| 32 | Filip ChytilFVAN | VAN | 9.52 | 838 | 133 | 6.4%▲6.3 |
| 33 | William NylanderFTOR | TOR | 9.49 | 1,600 | 253 | 99%▼1.2 |
| 34 | Bobby McMannFTOR | TOR | 9.45 | 1,073 | 169 | 45%▲2.4 |
| 35 | Kirill KaprizovFMIN | MIN | 9.44 | 921 | 145 | 98%▼0.7 |
| 36 | Viktor ArvidssonFEDM | EDM | 9.44 | 1,005 | 158 | 32%▲23 |
| 37 | Leon DraisaitlFEDM | EDM | 9.43 | 1,528 | 240 | 100% |
| 38 | Patrik LaineFMTL | MTL | 9.36 | 744 | 116 | 9.7%▲9.2 |
| 39 | Joel Eriksson EkFMIN | MIN | 9.24 | 909 | 140 | 81%▲9.6 |
| 40 | Jeff SkinnerFEDM | EDM | 9.23 | 936 | 144 | 0.1% |
| 41 | Ryan HartmanFMIN | MIN | 9.18 | 1,033 | 158 | 39%▼17 |
| 42 | Adrian KempeFLAK | LAK | 9.16 | 1,552 | 237 | 97%▼0.5 |
| 43 | Owen TippettFPHI | PHI | 9.16 | 1,231 | 188 | 78%▼7 |
| 44 | Zach HymanFEDM | EDM | 9.14 | 1,378 | 210 | 97%▼2.2 |
| 45 | Alex LaferriereFLAK | LAK | 9.10 | 1,273 | 193 | 68%▲3.4 |
| 46 | Artemi PanarinFNYR | NYR | 9.03 | 1,575 | 237 | 97%▼1.3 |
| 47 | Warren FoegeleFLAK | LAK | 9.01 | 1,326 | 199 | 4.0%▲3.9 |
| 48 | Brad MarchandFFLA | FLA | 8.95 | 1,301 | 194 | 75%▲2.7 |
| 49 | Matvei MichkovFPHI | PHI | 8.95 | 1,335 | 199 | 86%▲23 |
| 50 | Bo HorvatFNYI | NYI | 8.92 | 1,634 | 243 | 90%▲1.5 |
| 51 | Jack EichelFVGK | VGK | 8.84 | 1,581 | 233 | 99%▲1.6 |
| 52 | Jonathan MarchessaultFNSH | NSH | 8.81 | 1,402 | 206 | 24%▼21 |
| 53 | Dougie HamiltonDNJD | NJD | 8.78 | 1,271 | 186 | 84%▲12 |
| 54 | John TavaresFTOR | TOR | 8.78 | 1,367 | 200 | 96%▲9.6 |
| 55 | Jiri KulichFBUF | BUF | 8.77 | 917 | 134 | 25%▲24 |
| 56 | Andrei SvechnikovFCAR | CAR | 8.76 | 1,232 | 180 | 97%▲8.4 |
| 57 | Jason RobertsonFDAL | DAL | 8.68 | 1,459 | 211 | 100%▲0.7 |
| 58 | Seth JarvisFCAR | CAR | 8.66 | 1,413 | 204 | 95%▲1.1 |
| 59 | Jared McCannFSEA | SEA | 8.59 | 1,411 | 202 | 74%▲3.8 |
| 60 | Anthony BeauvillierFWSH | WSH | 8.57 | 1,043 | 149 | 4.0%▲3.8 |
| 61 | Dylan LarkinFDET | DET | 8.53 | 1,646 | 234 | 95%▼0.9 |
| 62 | Ross ColtonFCOL | COL | 8.53 | 880 | 125 | 8.1%▲7.8 |
| 63 | Luke EvangelistaFNSH | NSH | 8.52 | 943 | 134 | 70%▲23 |
| 64 | Tomas HertlFVGK | VGK | 8.50 | 1,250 | 177 | 84%▲3.3 |
| 65 | Nick BjugstadFUTA | UTA | 8.49 | 813 | 115 | 0.1% |
| 66 | Kirill MarchenkoFCBJ | CBJ | 8.46 | 1,468 | 207 | 99%▲8.2 |
| 67 | Mason MarchmentFDAL | DAL | 8.45 | 951 | 134 | 47%▲34 |
| 68 | Clayton KellerFUTA | UTA | 8.45 | 1,549 | 218 | 100%▲2.2 |
| 69 | Mason McTavishFANA | ANA | 8.42 | 1,283 | 180 | 51%▲36 |
| 70 | Ryan DonatoFCHI | CHI | 8.37 | 1,305 | 182 | 9.9%▲4.2 |
| 71 | Sidney CrosbyFPIT | PIT | 8.36 | 1,630 | 227 | 100%▲2 |
| 72 | Valeri NichushkinFCOL | COL | 8.34 | 849 | 118 | 59%▼1.2 |
| 73 | Zach WerenskiDCBJ | CBJ | 8.25 | 2,166 | 298 | 100%▲0.5 |
| 74 | Dylan HollowayFSTL | STL | 8.24 | 1,295 | 178 | 95%▲9.4 |
| 75 | Bryan RustFPIT | PIT | 8.17 | 1,402 | 191 | 84%▲1.4 |
| 76 | Jake GuentzelFTBL | TBL | 8.14 | 1,599 | 217 | 100% |
| 77 | Nick RobertsonFTOR | TOR | 8.11 | 828 | 112 | 31%▲31 |
| 78 | Patrick KaneFDET | DET | 8.11 | 1,295 | 175 | 78%▼0.7 |
| 79 | Craig SmithFDET | DET | 8.07 | 669 | 90 | — |
| 80 | Mackie SamoskevichFFLA | FLA | 8.07 | 959 | 129 | — |
| 81 | Dylan CozensFOTT | OTT | 8.06 | 1,399 | 188 | 90%▲3.3 |
| 82 | Victor OlofssonFVGK | VGK | 8.06 | 812 | 109 | 15%▲15 |
| 83 | Brandon HagelFTBL | TBL | 8.04 | 1,701 | 228 | 100%▲2 |
| 84 | Jaden SchwartzFSEA | SEA | 8.04 | 1,449 | 194 | 11%▲11 |
| 85 | Blake ColemanFCGY | CGY | 8.03 | 1,450 | 194 | 38%▼25 |
| 86 | Chris KreiderFNYR | NYR | 8.01 | 1,139 | 152 | 62%▲29 |
| 87 | Adam FantilliFCBJ | CBJ | 8.00 | 1,433 | 191 | 91%▲9.5 |
| 88 | Matt CoronatoFCGY | CGY | 7.98 | 1,354 | 180 | 40%▲6.4 |
| 89 | Connor McDavidFEDM | EDM | 7.97 | 1,476 | 196 | 100%▲1.3 |
| 90 | Stefan NoesenFNJD | NJD | 7.97 | 1,243 | 165 | 0.1% |
| 91 | William KarlssonFVGK | VGK | 7.92 | 902 | 119 | 24%▲20 |
| 92 | Fabian ZetterlundFOTT | OTT | 7.91 | 1,373 | 181 | 13%▲6.6 |
| 93 | Sam ReinhartFFLA | FLA | 7.89 | 1,620 | 213 | 99%▼1 |
| 94 | Michael BuntingFNSH | NSH | 7.88 | 1,180 | 155 | 3.6%▲0.9 |
| 95 | Philip TomasinoFPIT | PIT | 7.83 | 797 | 104 | — |
| 96 | Sebastian AhoFCAR | CAR | 7.82 | 1,588 | 207 | 100%▲2.1 |
| 97 | Wyatt JohnstonFDAL | DAL | 7.81 | 1,552 | 202 | 100%▲0.9 |
| 98 | Zachary BolducFSTL | STL | 7.81 | 922 | 120 | 21%▲18 |
| 99 | Rickard RakellFPIT | PIT | 7.79 | 1,563 | 203 | 82%▲10 |
| 100 | Brendan GallagherFMTL | MTL | 7.78 | 1,141 | 148 | 3.3%▲2.8 |
Minimum sample: 510 minutes (it scales with games played). 315 below the minimum are hidden.
How to read it
Shots on Goal per 60 minutes of ice time, all situations.
How reliable is it?
Rates settle faster than totals but need minutes: early in the season, low-minute players swing the most.
About our data sources →Projected next
Our fantasy projections for shots on goal: who should lead the coming games.