Shot Prop Lab
Shots on Goal Projections for Thursday, October 22, 2026
Expected shots on goal for every skater on tonight's slate, and the chance he clears 1.5, 2.5 and 3.5. Each number starts from the shooter's own attempt rate and accuracy, times the ice time we expect him to get at 5-on-5 and on the power play, then adjusts for the defenders he is likely to face and how well the opponent kills penalties.
12 games, 435 skaters · updated Oct 21, 12:20 PM ET · model shotprops-1.1.0. Projections, not picks. No sportsbook lines are posted for this date yet.
Most likely to get 3+ shots
- Matt BoldyMIN @ CGY75% · 4.08
- Alex DeBrincatDET @ VAN68% · 3.64
- Kirill KaprizovMIN @ CGY66% · 3.51
- Jason RobertsonDAL vs WPG64% · 3.41
- Joel Eriksson EkMIN @ CGY62% · 3.27
- Cutter GauthierANA @ NJD61% · 3.25
- Filip ForsbergNSH @ BOS61% · 3.23
- David PastrnakBOS vs NSH61% · 3.23
- Macklin CelebriniSJS @ OTT60% · 3.17
- Viktor ArvidssonDET @ VAN60% · 3.17
- Kyle ConnorWPG @ DAL58% · 3.11
- Auston MatthewsTOR vs NYR58% · 3.10
- Dylan LarkinDET @ VAN57% · 3.07
- Jack HughesNJD vs ANA57% · 3.06
Softest 5v5 matchups
- Matt BoldyMIN @ CGY+11% (+0.27) · 4.08
- Joel Eriksson EkMIN @ CGY+11% (+0.22) · 3.27
- Alex DeBrincatDET @ VAN+8% (+0.20) · 3.64
- Viktor ArvidssonDET @ VAN+9% (+0.20) · 3.17
- David PastrnakBOS vs NSH+8% (+0.19) · 3.23
- Clayton KellerUTA @ SEA+9% (+0.15) · 2.51
- Dylan GuentherUTA @ SEA+8% (+0.14) · 2.95
- JJ PeterkaBOS vs NSH+9% (+0.14) · 2.08
- Drake BathersonOTT vs SJS+7% (+0.11) · 2.43
- Dylan CozensOTT vs SJS+7% (+0.10) · 2.39
- Pavel DorofeyevNYR @ TOR+4% (+0.08) · 2.83
- Jack HughesNJD vs ANA+3% (+0.07) · 3.06
- Timo MeierNJD vs ANA+3% (+0.06) · 2.53
- Will CuylleNYR @ TOR+5% (+0.06) · 1.90
Toughest 5v5 matchups
- Connor McDavidEDM vs CAR−11% (−0.22) · 2.82
- Evan BouchardEDM vs CAR−11% (−0.19) · 2.26
- Kyle ConnorWPG @ DAL−8% (−0.19) · 3.11
- Beckett SenneckeANA @ NJD−8% (−0.17) · 2.95
- Cutter GauthierANA @ NJD−8% (−0.17) · 3.25
- Cole PerfettiWPG @ DAL−9% (−0.15) · 2.49
- Macklin CelebriniSJS @ OTT−7% (−0.14) · 3.17
- Will SmithSJS @ OTT−7% (−0.11) · 2.32
- Bobby McMannSEA vs UTA−6% (−0.10) · 2.17
- Rickard RakellPIT vs FLA−5% (−0.10) · 2.69
- Egor ChinakhovPIT vs FLA−6% (−0.09) · 1.96
- Logan StankovenCAR @ EDM−5% (−0.09) · 2.24
- Mackie SamoskevichSEA vs UTA−5% (−0.09) · 1.78
- Mason McTavishSTL vs VGK−5% (−0.08) · 2.08
Every skater, with filters and book lines: full slate below.
Every skater, Oct 22
Games: NSH @ BOS · NYR @ TOR · SJS @ OTT · ANA @ NJD · FLA @ PIT · LAK @ NYI · VGK @ STL · WPG @ DAL · MIN @ CGY · CAR @ EDM · UTA @ SEA · DET @ VAN. Matchup is the 5-on-5 adjustment for the defenders he is expected to face and home ice (+5% = 5% more shots than his usual rate).
- Matt BoldyF · MIN @ CGY4.08Exp SOG
- Over 2.5
- 75%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 23:22
- PP TOI
- 4:18
- SOG/60 5v5
- 9.0
- Matchup
- +11%
- 2+ / 3+ / 4+
- 89% / 75% / 56%
- Alex DeBrincatF · DET @ VAN3.64Exp SOG
- Over 2.5
- 68%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:10
- PP TOI
- 3:04
- SOG/60 5v5
- 9.2
- Matchup
- +8%
- 2+ / 3+ / 4+
- 86% / 68% / 48%
- Kirill KaprizovF · MIN @ CGY3.51Exp SOG
- Over 2.5
- 66%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 22:59
- PP TOI
- 4:19
- SOG/60 5v5
- 6.9
- Matchup
- +11%
- 2+ / 3+ / 4+
- 84% / 66% / 46%
- Jason RobertsonF · DAL vs WPG3.41Exp SOG
- Over 2.5
- 64%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:03
- PP TOI
- 4:02
- SOG/60 5v5
- 8.8
- Matchup
- +2%
- 2+ / 3+ / 4+
- 83% / 64% / 44%
- Joel Eriksson EkF · MIN @ CGY3.27Exp SOG
- Over 2.5
- 62%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:56
- PP TOI
- 3:58
- SOG/60 5v5
- 7.6
- Matchup
- +11%
- 2+ / 3+ / 4+
- 82% / 62% / 41%
- Cutter GauthierF · ANA @ NJD3.25Exp SOG
- Over 2.5
- 61%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:51
- PP TOI
- 3:30
- SOG/60 5v5
- 10.4
- Matchup
- −8%
- 2+ / 3+ / 4+
- 81% / 61% / 40%
- Filip ForsbergF · NSH @ BOS3.23Exp SOG
- Over 2.5
- 61%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:05
- PP TOI
- 4:13
- SOG/60 5v5
- 8.2
- Matchup
- +2%
- 2+ / 3+ / 4+
- 81% / 61% / 40%
- David PastrnakF · BOS vs NSH3.23Exp SOG
- Over 2.5
- 61%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:23
- PP TOI
- 3:29
- SOG/60 5v5
- 8.4
- Matchup
- +8%
- 2+ / 3+ / 4+
- 81% / 61% / 40%
- Macklin CelebriniF · SJS @ OTT3.17Exp SOG
- Over 2.5
- 60%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:29
- PP TOI
- 3:48
- SOG/60 5v5
- 7.8
- Matchup
- −7%
- 2+ / 3+ / 4+
- 80% / 60% / 39%
- Viktor ArvidssonF · DET @ VAN3.17Exp SOG
- Over 2.5
- 60%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:16
- PP TOI
- 3:01
- SOG/60 5v5
- 8.9
- Matchup
- +9%
- 2+ / 3+ / 4+
- 80% / 60% / 39%
| Matt BoldyF · MIN @ CGY | 4.08 | 89% | 75% | 56% | 23:22PP 4:18 | 9.0 | +11% |
|---|---|---|---|---|---|---|---|
| Alex DeBrincatF · DET @ VAN | 3.64 | 86% | 68% | 48% | 20:10PP 3:04 | 9.2 | +8% |
| Kirill KaprizovF · MIN @ CGY | 3.51 | 84% | 66% | 46% | 22:59PP 4:19 | 6.9 | +11% |
| Jason RobertsonF · DAL vs WPG | 3.41 | 83% | 64% | 44% | 21:03PP 4:02 | 8.8 | +2% |
| Joel Eriksson EkF · MIN @ CGY | 3.27 | 82% | 62% | 41% | 21:56PP 3:58 | 7.6 | +11% |
| Cutter GauthierF · ANA @ NJD | 3.25 | 81% | 61% | 40% | 17:51PP 3:30 | 10.4 | −8% |
| Filip ForsbergF · NSH @ BOS | 3.23 | 81% | 61% | 40% | 21:05PP 4:13 | 8.2 | +2% |
| David PastrnakF · BOS vs NSH | 3.23 | 81% | 61% | 40% | 20:23PP 3:29 | 8.4 | +8% |
| Macklin CelebriniF · SJS @ OTT | 3.17 | 80% | 60% | 39% | 21:29PP 3:48 | 7.8 | −7% |
| Viktor ArvidssonF · DET @ VAN | 3.17 | 80% | 60% | 39% | 19:16PP 3:01 | 8.9 | +9% |
| Kyle ConnorF · WPG @ DAL | 3.11 | 79% | 58% | 38% | 22:04PP 3:56 | 8.8 | −8% |
| Auston MatthewsF · TOR vs NYR | 3.10 | 79% | 58% | 37% | 19:33PP 3:45 | 8.6 | +0% |
| Dylan LarkinF · DET @ VAN | 3.07 | 79% | 57% | 37% | 21:20PP 3:14 | 7.1 | +9% |
| Jack HughesF · NJD vs ANA | 3.06 | 79% | 57% | 37% | 19:11PP 3:25 | 8.9 | +3% |
| Bo HorvatF · NYI vs LAK | 3.01 | 78% | 56% | 36% | 21:04PP 3:36 | 8.2 | +0% |
| Dylan GuentherF · UTA @ SEA | 2.95 | 77% | 55% | 34% | 16:14PP 3:28 | 9.0 | +8% |
| Beckett SenneckeF · ANA @ NJD | 2.95 | 77% | 55% | 34% | 22:33PP 3:57 | 7.5 | −8% |
| Pavel DorofeyevF · NYR @ TOR | 2.83 | 75% | 53% | 32% | 18:03PP 3:36 | 7.9 | +4% |
| Connor McDavidF · EDM vs CAR | 2.82 | 75% | 52% | 31% | 23:16PP 3:41 | 7.2 | −11% |
| Matthew SchaeferD · NYI vs LAK | 2.78 | 75% | 51% | 31% | 26:23PP 3:45 | 5.9 | +1% |
| Adrian KempeF · LAK @ NYI | 2.78 | 75% | 51% | 31% | 20:06PP 3:27 | 7.8 | −2% |
| Brady TkachukF · FLA @ PIT | 2.74 | 74% | 51% | 30% | 16:07PP 3:19 | 9.7 | −3% |
| Quinn HughesD · MIN @ CGY | 2.73 | 74% | 50% | 30% | 28:49PP 4:51 | 4.7 | +12% |
| Alex LaferriereF · LAK @ NYI | 2.70 | 73% | 50% | 29% | 19:19PP 3:04 | 8.1 | −2% |
| Rickard RakellF · PIT vs FLA | 2.69 | 73% | 49% | 29% | 20:44PP 4:03 | 7.5 | −5% |
| Artemi PanarinF · LAK @ NYI | 2.68 | 73% | 49% | 28% | 20:57PP 3:59 | 6.0 | −2% |
| Andrei SvechnikovF · CAR @ EDM | 2.65 | 72% | 49% | 28% | 17:49PP 3:55 | 8.3 | −4% |
| Mika ZibanejadF · NYR @ TOR | 2.62 | 72% | 48% | 27% | 20:48PP 4:02 | 6.3 | +4% |
| Lucas RaymondF · DET @ VAN | 2.60 | 71% | 47% | 27% | 20:13PP 3:12 | 6.4 | +9% |
| Leo CarlssonF · ANA @ NJD | 2.60 | 71% | 47% | 27% | 20:37PP 3:47 | 7.8 | −8% |
| Darren RaddyshD · TOR vs NYR | 2.58 | 71% | 47% | 27% | 23:04PP 3:41 | 6.2 | +1% |
| Jack EichelF · VGK @ STL | 2.56 | 71% | 46% | 26% | 18:48PP 4:02 | 7.8 | +1% |
| Wyatt JohnstonF · DAL vs WPG | 2.54 | 70% | 46% | 26% | 20:09PP 4:03 | 5.6 | +3% |
| Timo MeierF · NJD vs ANA | 2.53 | 70% | 46% | 26% | 14:37 | 10.2 | +3% |
| Steven StamkosF · NSH @ BOS | 2.53 | 70% | 46% | 26% | 19:13PP 4:13 | 6.3 | +2% |
| William NylanderF · TOR vs NYR | 2.52 | 70% | 46% | 25% | 19:33PP 3:43 | 7.0 | +0% |
| Clayton KellerF · UTA @ SEA | 2.51 | 70% | 45% | 25% | 17:38PP 3:28 | 7.4 | +9% |
| Cole PerfettiF · WPG @ DAL | 2.49 | 69% | 45% | 25% | 19:56PP 3:56 | 7.3 | −9% |
| Sebastian AhoF · CAR @ EDM | 2.48 | 69% | 44% | 24% | 20:03PP 3:52 | 6.8 | −5% |
| Leon DraisaitlF · EDM vs CAR | 2.47 | 69% | 44% | 24% | 21:08PP 3:44 | 6.0 | −11% |
| Matt CoronatoF · CGY vs MIN | 2.45 | 69% | 44% | 24% | 17:49PP 3:04 | 7.6 | −2% |
| Tim StützleF · OTT vs SJS | 2.44 | 68% | 44% | 24% | 22:05PP 3:54 | 5.6 | +7% |
| Kirill MarchenkoF · TOR vs NYR | 2.44 | 68% | 43% | 24% | 17:46PP 3:35 | 7.3 | +1% |
| Jackson BlakeF · CAR @ EDM | 2.43 | 68% | 43% | 24% | 18:24PP 3:47 | 7.5 | −4% |
| Drake BathersonF · OTT vs SJS | 2.43 | 68% | 43% | 23% | 18:18PP 3:37 | 6.8 | +7% |
| Sidney CrosbyF · PIT vs FLA | 2.41 | 68% | 43% | 23% | 20:28PP 4:05 | 6.5 | −5% |
| Dylan CozensF · OTT vs SJS | 2.39 | 67% | 42% | 23% | 17:04PP 3:03 | 7.3 | +7% |
| Sam ReinhartF · FLA @ PIT | 2.36 | 67% | 42% | 22% | 19:17PP 3:44 | 5.6 | −2% |
| Mikko RantanenF · DAL vs WPG | 2.36 | 67% | 41% | 22% | 21:03PP 4:27 | 5.3 | +2% |
| Nick SchmaltzF · UTA @ SEA | 2.36 | 67% | 41% | 22% | 18:03PP 3:23 | 6.6 | +9% |
| Jimmy SnuggerudF · STL vs VGK | 2.34 | 66% | 41% | 22% | 17:59PP 2:20 | 7.7 | −4% |
| Blake ColemanF · MIN @ CGY | 2.33 | 66% | 41% | 21% | 16:33PP 1:28 | 7.9 | +12% |
| Roman JosiD · NSH @ BOS | 2.32 | 66% | 41% | 21% | 24:55PP 4:13 | 4.8 | +3% |
| Will SmithF · SJS @ OTT | 2.32 | 66% | 40% | 21% | 19:25PP 3:33 | 6.8 | −7% |
| Alexis LafrenièreF · NYR @ TOR | 2.31 | 66% | 40% | 21% | 18:56PP 3:59 | 6.2 | +4% |
| Matthew TkachukF · FLA @ PIT | 2.28 | 65% | 40% | 21% | 17:34PP 3:36 | 6.9 | −3% |
| Carter VerhaegheF · FLA @ PIT | 2.28 | 65% | 40% | 20% | 18:06PP 3:11 | 6.9 | −2% |
| Jake DeBruskF · VAN vs DET | 2.28 | 65% | 39% | 20% | 15:48PP 3:14 | 7.1 | −1% |
| Erik KarlssonD · PIT vs FLA | 2.28 | 65% | 39% | 20% | 25:01PP 4:06 | 4.9 | −5% |
| Evan BouchardD · EDM vs CAR | 2.26 | 65% | 39% | 20% | 25:15PP 3:49 | 5.6 | −11% |
- Kyle ConnorF · WPG @ DAL3.11Exp SOG
- Over 2.5
- 58%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 22:04
- PP TOI
- 3:56
- SOG/60 5v5
- 8.8
- Matchup
- −8%
- 2+ / 3+ / 4+
- 79% / 58% / 38%
- Auston MatthewsF · TOR vs NYR3.10Exp SOG
- Over 2.5
- 58%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:33
- PP TOI
- 3:45
- SOG/60 5v5
- 8.6
- Matchup
- +0%
- 2+ / 3+ / 4+
- 79% / 58% / 37%
- Dylan LarkinF · DET @ VAN3.07Exp SOG
- Over 2.5
- 57%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:20
- PP TOI
- 3:14
- SOG/60 5v5
- 7.1
- Matchup
- +9%
- 2+ / 3+ / 4+
- 79% / 57% / 37%
- Jack HughesF · NJD vs ANA3.06Exp SOG
- Over 2.5
- 57%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:11
- PP TOI
- 3:25
- SOG/60 5v5
- 8.9
- Matchup
- +3%
- 2+ / 3+ / 4+
- 79% / 57% / 37%
- Over 2.5
- 56%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:04
- PP TOI
- 3:36
- SOG/60 5v5
- 8.2
- Matchup
- +0%
- 2+ / 3+ / 4+
- 78% / 56% / 36%
- Dylan GuentherF · UTA @ SEA2.95Exp SOG
- Over 2.5
- 55%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 16:14
- PP TOI
- 3:28
- SOG/60 5v5
- 9.0
- Matchup
- +8%
- 2+ / 3+ / 4+
- 77% / 55% / 34%
- Beckett SenneckeF · ANA @ NJD2.95Exp SOG
- Over 2.5
- 55%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 22:33
- PP TOI
- 3:57
- SOG/60 5v5
- 7.5
- Matchup
- −8%
- 2+ / 3+ / 4+
- 77% / 55% / 34%
- Pavel DorofeyevF · NYR @ TOR2.83Exp SOG
- Over 2.5
- 53%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 18:03
- PP TOI
- 3:36
- SOG/60 5v5
- 7.9
- Matchup
- +4%
- 2+ / 3+ / 4+
- 75% / 53% / 32%
- Connor McDavidF · EDM vs CAR2.82Exp SOG
- Over 2.5
- 52%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 23:16
- PP TOI
- 3:41
- SOG/60 5v5
- 7.2
- Matchup
- −11%
- 2+ / 3+ / 4+
- 75% / 52% / 31%
- Matthew SchaeferD · NYI vs LAK2.78Exp SOG
- Over 2.5
- 51%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 26:23
- PP TOI
- 3:45
- SOG/60 5v5
- 5.9
- Matchup
- +1%
- 2+ / 3+ / 4+
- 75% / 51% / 31%
- Adrian KempeF · LAK @ NYI2.78Exp SOG
- Over 2.5
- 51%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:06
- PP TOI
- 3:27
- SOG/60 5v5
- 7.8
- Matchup
- −2%
- 2+ / 3+ / 4+
- 75% / 51% / 31%
- Brady TkachukF · FLA @ PIT2.74Exp SOG
- Over 2.5
- 51%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 16:07
- PP TOI
- 3:19
- SOG/60 5v5
- 9.7
- Matchup
- −3%
- 2+ / 3+ / 4+
- 74% / 51% / 30%
- Quinn HughesD · MIN @ CGY2.73Exp SOG
- Over 2.5
- 50%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 28:49
- PP TOI
- 4:51
- SOG/60 5v5
- 4.7
- Matchup
- +12%
- 2+ / 3+ / 4+
- 74% / 50% / 30%
- Alex LaferriereF · LAK @ NYI2.70Exp SOG
- Over 2.5
- 50%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:19
- PP TOI
- 3:04
- SOG/60 5v5
- 8.1
- Matchup
- −2%
- 2+ / 3+ / 4+
- 73% / 50% / 29%
- Rickard RakellF · PIT vs FLA2.69Exp SOG
- Over 2.5
- 49%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:44
- PP TOI
- 4:03
- SOG/60 5v5
- 7.5
- Matchup
- −5%
- 2+ / 3+ / 4+
- 73% / 49% / 29%
- Artemi PanarinF · LAK @ NYI2.68Exp SOG
- Over 2.5
- 49%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:57
- PP TOI
- 3:59
- SOG/60 5v5
- 6.0
- Matchup
- −2%
- 2+ / 3+ / 4+
- 73% / 49% / 28%
- Andrei SvechnikovF · CAR @ EDM2.65Exp SOG
- Over 2.5
- 49%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:49
- PP TOI
- 3:55
- SOG/60 5v5
- 8.3
- Matchup
- −4%
- 2+ / 3+ / 4+
- 72% / 49% / 28%
- Mika ZibanejadF · NYR @ TOR2.62Exp SOG
- Over 2.5
- 48%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:48
- PP TOI
- 4:02
- SOG/60 5v5
- 6.3
- Matchup
- +4%
- 2+ / 3+ / 4+
- 72% / 48% / 27%
- Lucas RaymondF · DET @ VAN2.60Exp SOG
- Over 2.5
- 47%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:13
- PP TOI
- 3:12
- SOG/60 5v5
- 6.4
- Matchup
- +9%
- 2+ / 3+ / 4+
- 71% / 47% / 27%
- Leo CarlssonF · ANA @ NJD2.60Exp SOG
- Over 2.5
- 47%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:37
- PP TOI
- 3:47
- SOG/60 5v5
- 7.8
- Matchup
- −8%
- 2+ / 3+ / 4+
- 71% / 47% / 27%
- Darren RaddyshD · TOR vs NYR2.58Exp SOG
- Over 2.5
- 47%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 23:04
- PP TOI
- 3:41
- SOG/60 5v5
- 6.2
- Matchup
- +1%
- 2+ / 3+ / 4+
- 71% / 47% / 27%
- Jack EichelF · VGK @ STL2.56Exp SOG
- Over 2.5
- 46%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 18:48
- PP TOI
- 4:02
- SOG/60 5v5
- 7.8
- Matchup
- +1%
- 2+ / 3+ / 4+
- 71% / 46% / 26%
- Wyatt JohnstonF · DAL vs WPG2.54Exp SOG
- Over 2.5
- 46%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:09
- PP TOI
- 4:03
- SOG/60 5v5
- 5.6
- Matchup
- +3%
- 2+ / 3+ / 4+
- 70% / 46% / 26%
- Timo MeierF · NJD vs ANA2.53Exp SOG
- Over 2.5
- 46%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 14:37
- PP TOI
- 0:45
- SOG/60 5v5
- 10.2
- Matchup
- +3%
- 2+ / 3+ / 4+
- 70% / 46% / 26%
- Steven StamkosF · NSH @ BOS2.53Exp SOG
- Over 2.5
- 46%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:13
- PP TOI
- 4:13
- SOG/60 5v5
- 6.3
- Matchup
- +2%
- 2+ / 3+ / 4+
- 70% / 46% / 26%
- William NylanderF · TOR vs NYR2.52Exp SOG
- Over 2.5
- 46%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:33
- PP TOI
- 3:43
- SOG/60 5v5
- 7.0
- Matchup
- +0%
- 2+ / 3+ / 4+
- 70% / 46% / 25%
- Clayton KellerF · UTA @ SEA2.51Exp SOG
- Over 2.5
- 45%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:38
- PP TOI
- 3:28
- SOG/60 5v5
- 7.4
- Matchup
- +9%
- 2+ / 3+ / 4+
- 70% / 45% / 25%
- Cole PerfettiF · WPG @ DAL2.49Exp SOG
- Over 2.5
- 45%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:56
- PP TOI
- 3:56
- SOG/60 5v5
- 7.3
- Matchup
- −9%
- 2+ / 3+ / 4+
- 69% / 45% / 25%
- Sebastian AhoF · CAR @ EDM2.48Exp SOG
- Over 2.5
- 44%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:03
- PP TOI
- 3:52
- SOG/60 5v5
- 6.8
- Matchup
- −5%
- 2+ / 3+ / 4+
- 69% / 44% / 24%
- Leon DraisaitlF · EDM vs CAR2.47Exp SOG
- Over 2.5
- 44%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:08
- PP TOI
- 3:44
- SOG/60 5v5
- 6.0
- Matchup
- −11%
- 2+ / 3+ / 4+
- 69% / 44% / 24%
- Matt CoronatoF · CGY vs MIN2.45Exp SOG
- Over 2.5
- 44%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:49
- PP TOI
- 3:04
- SOG/60 5v5
- 7.6
- Matchup
- −2%
- 2+ / 3+ / 4+
- 69% / 44% / 24%
- Tim StützleF · OTT vs SJS2.44Exp SOG
- Over 2.5
- 44%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 22:05
- PP TOI
- 3:54
- SOG/60 5v5
- 5.6
- Matchup
- +7%
- 2+ / 3+ / 4+
- 68% / 44% / 24%
- Kirill MarchenkoF · TOR vs NYR2.44Exp SOG
- Over 2.5
- 43%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:46
- PP TOI
- 3:35
- SOG/60 5v5
- 7.3
- Matchup
- +1%
- 2+ / 3+ / 4+
- 68% / 43% / 24%
- Jackson BlakeF · CAR @ EDM2.43Exp SOG
- Over 2.5
- 43%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 18:24
- PP TOI
- 3:47
- SOG/60 5v5
- 7.5
- Matchup
- −4%
- 2+ / 3+ / 4+
- 68% / 43% / 24%
- Drake BathersonF · OTT vs SJS2.43Exp SOG
- Over 2.5
- 43%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 18:18
- PP TOI
- 3:37
- SOG/60 5v5
- 6.8
- Matchup
- +7%
- 2+ / 3+ / 4+
- 68% / 43% / 23%
- Sidney CrosbyF · PIT vs FLA2.41Exp SOG
- Over 2.5
- 43%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 20:28
- PP TOI
- 4:05
- SOG/60 5v5
- 6.5
- Matchup
- −5%
- 2+ / 3+ / 4+
- 68% / 43% / 23%
- Dylan CozensF · OTT vs SJS2.39Exp SOG
- Over 2.5
- 42%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:04
- PP TOI
- 3:03
- SOG/60 5v5
- 7.3
- Matchup
- +7%
- 2+ / 3+ / 4+
- 67% / 42% / 23%
- Sam ReinhartF · FLA @ PIT2.36Exp SOG
- Over 2.5
- 42%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:17
- PP TOI
- 3:44
- SOG/60 5v5
- 5.6
- Matchup
- −2%
- 2+ / 3+ / 4+
- 67% / 42% / 22%
- Mikko RantanenF · DAL vs WPG2.36Exp SOG
- Over 2.5
- 41%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 21:03
- PP TOI
- 4:27
- SOG/60 5v5
- 5.3
- Matchup
- +2%
- 2+ / 3+ / 4+
- 67% / 41% / 22%
- Nick SchmaltzF · UTA @ SEA2.36Exp SOG
- Over 2.5
- 41%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 18:03
- PP TOI
- 3:23
- SOG/60 5v5
- 6.6
- Matchup
- +9%
- 2+ / 3+ / 4+
- 67% / 41% / 22%
- Jimmy SnuggerudF · STL vs VGK2.34Exp SOG
- Over 2.5
- 41%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:59
- PP TOI
- 2:20
- SOG/60 5v5
- 7.7
- Matchup
- −4%
- 2+ / 3+ / 4+
- 66% / 41% / 22%
- Blake ColemanF · MIN @ CGY2.33Exp SOG
- Over 2.5
- 41%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 16:33
- PP TOI
- 1:28
- SOG/60 5v5
- 7.9
- Matchup
- +12%
- 2+ / 3+ / 4+
- 66% / 41% / 21%
- Roman JosiD · NSH @ BOS2.32Exp SOG
- Over 2.5
- 41%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 24:55
- PP TOI
- 4:13
- SOG/60 5v5
- 4.8
- Matchup
- +3%
- 2+ / 3+ / 4+
- 66% / 41% / 21%
- Will SmithF · SJS @ OTT2.32Exp SOG
- Over 2.5
- 40%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 19:25
- PP TOI
- 3:33
- SOG/60 5v5
- 6.8
- Matchup
- −7%
- 2+ / 3+ / 4+
- 66% / 40% / 21%
- Alexis LafrenièreF · NYR @ TOR2.31Exp SOG
- Over 2.5
- 40%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 18:56
- PP TOI
- 3:59
- SOG/60 5v5
- 6.2
- Matchup
- +4%
- 2+ / 3+ / 4+
- 66% / 40% / 21%
- Matthew TkachukF · FLA @ PIT2.28Exp SOG
- Over 2.5
- 40%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 17:34
- PP TOI
- 3:36
- SOG/60 5v5
- 6.9
- Matchup
- −3%
- 2+ / 3+ / 4+
- 65% / 40% / 21%
- Carter VerhaegheF · FLA @ PIT2.28Exp SOG
- Over 2.5
- 40%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 18:06
- PP TOI
- 3:11
- SOG/60 5v5
- 6.9
- Matchup
- −2%
- 2+ / 3+ / 4+
- 65% / 40% / 20%
- Jake DeBruskF · VAN vs DET2.28Exp SOG
- Over 2.5
- 39%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 15:48
- PP TOI
- 3:14
- SOG/60 5v5
- 7.1
- Matchup
- −1%
- 2+ / 3+ / 4+
- 65% / 39% / 20%
- Erik KarlssonD · PIT vs FLA2.28Exp SOG
- Over 2.5
- 39%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 25:01
- PP TOI
- 4:06
- SOG/60 5v5
- 4.9
- Matchup
- −5%
- 2+ / 3+ / 4+
- 65% / 39% / 20%
- Evan BouchardD · EDM vs CAR2.26Exp SOG
- Over 2.5
- 39%
- Best over
- –
- Books
- –
Ice time, SOG/60 and matchup
- TOI
- 25:15
- PP TOI
- 3:49
- SOG/60 5v5
- 5.6
- Matchup
- −11%
- 2+ / 3+ / 4+
- 65% / 39% / 20%
How the projections work
- 1. How often he shoots
- For each strength state (5-on-5, power play, shorthanded, other), we take the shooter's unblocked attempts per 60 minutes and the share of them that hit the net, from every game in roughly the last 14 months. Recent games count more (the weight halves every 8 months), and both numbers are shrunk toward the forward or defenseman average, so a hot week or a short history barely moves them. Missed shots recorded in a rink whose scorers log more misses than the league are scaled down using our arena scorer factors.
- 2. How much he will play
- Projected 5-on-5 time is a weighted average of his last 10 games, with the latest counting most. Power-play time is his share of his team's recent PP minutes times the PP time we expect tonight: the average of his team's recent PP time and the opponent's recent shorthanded time. The lineup is whoever dressed in the team's last game, or the forecast lineup when our matchup forecast has one.
- 3. Who he will face
- Every skater gets a 5-on-5 shot-suppression rating from a ridge regression on line changes (RAPM-style): unblocked attempts against while he is on the ice, adjusted for his teammates, the opponents and home ice, with every rating pulled toward zero. A shooter's matchup factor averages the opposing skaters' ratings, weighted by the minutes he is expected to share with each. Those minutes come from the matchup forecast (which knows the home coach has last change) when it is available; otherwise from each opponent's projected 5-on-5 time.
- 4. Power play and venue
- Power-play shots are scaled by the opponent's shots allowed per 60 while shorthanded, shrunk toward the league rate. Home teams shoot a little more at 5-on-5; the home and road split comes from the same regression.
- 5. From an average to a probability
- Shots in one game spread out more than a simple Poisson count, because ice time and role move from night to night. We use a negative binomial distribution whose extra spread was fit on last season's out-of-sample projections, then read off P(2+), P(3+) and P(4+) shots.
Last fit Oct 21: 1,545 games, 999 skaters rated.
How accurate is it?
Held-out test: Oct 7, 2025 – Apr 16, 2026
Every game in the test season was projected using only data from before that day, the way the live model works. Lineups were the players who dressed; ice time was projected, not known. Shots on goal are the official count (shootout attempts excluded), arena scorer factors came from the previous season, and the spread of the distribution was fit on the previous season. Lower log-loss is better. The live model scored 1.5332 against 1.5441 for a shots-per-game baseline given the same distribution (mean squared error 1.723 vs 1.757). Defender matchup ratings improved on the team-level adjustment by +0.00026 nats per projection (95% interval +0.00001 to +0.00053, resampling whole games); mean squared error 1.724 → 1.723. The gain also showed up in the tuning season. It is a real but very small effect. Even with perfect knowledge of who played against whom, the gain would be 0.0000: ice time and the shooter's own volume dominate.
| Model | Projections | Log-loss | Mean sq. error | Correlation |
|---|---|---|---|---|
| Shots per game, last 12 months | 47,230 | 1.5441 | 1.757 | 0.441 |
| Shooter rate × projected ice time | 47,230 | 1.5352 | 1.730 | 0.455 |
| + opponent team 5v5 and penalty kill | 47,230 | 1.5335 | 1.724 | 0.458 |
| + defender ratings by expected matchup (live model) | 47,230 | 1.5332 | 1.723 | 0.458 |
| Hindsight: actual matchups (upper bound, not usable) | 47,230 | 1.5332 | 1.723 | 0.458 |
Show as a table
| Line | Bin | n | Projected | Observed |
|---|---|---|---|---|
| 2+ SOG | 0–10% | 169 | 7.7% | 9.5% |
| 2+ SOG | 10–20% | 3,633 | 16.6% | 16.2% |
| 2+ SOG | 20–30% | 8,907 | 25.3% | 22.9% |
| 2+ SOG | 30–40% | 9,632 | 34.9% | 32.8% |
| 2+ SOG | 40–50% | 8,016 | 44.8% | 43.5% |
| 2+ SOG | 50–60% | 6,692 | 55.0% | 54.5% |
| 2+ SOG | 60–70% | 5,722 | 64.6% | 64.7% |
| 2+ SOG | 70–80% | 3,375 | 74.5% | 74.8% |
| 2+ SOG | 80–90% | 1,067 | 83.0% | 84.7% |
| 2+ SOG | 90–100% | 17 | 90.9% | 100.0% |
| 3+ SOG | 0–10% | 11,961 | 6.5% | 5.9% |
| 3+ SOG | 10–20% | 13,994 | 14.6% | 13.7% |
| 3+ SOG | 20–30% | 8,264 | 24.6% | 23.8% |
| 3+ SOG | 30–40% | 6,282 | 34.8% | 35.5% |
| 3+ SOG | 40–50% | 3,719 | 44.6% | 44.1% |
| 3+ SOG | 50–60% | 2,071 | 54.7% | 56.7% |
| 3+ SOG | 60–70% | 826 | 63.6% | 66.7% |
| 3+ SOG | 70–80% | 112 | 73.1% | 72.3% |
| 3+ SOG | 80–90% | 1 | 80.2% | 0.0% |
| 4+ SOG | 0–10% | 30,086 | 4.1% | 3.8% |
| 4+ SOG | 10–20% | 9,863 | 14.5% | 14.8% |
| 4+ SOG | 20–30% | 4,442 | 24.3% | 24.4% |
| 4+ SOG | 30–40% | 2,020 | 34.6% | 34.6% |
| 4+ SOG | 40–50% | 695 | 43.7% | 44.7% |
| 4+ SOG | 50–60% | 116 | 53.6% | 57.8% |
| 4+ SOG | 60–70% | 8 | 61.8% | 75.0% |
This season so far
3,983 projections across 117 games through Oct 21: 1.54 expected SOG per skater against 1.55 actual.
Show as a table
| Line | Bin | n | Projected | Observed |
|---|---|---|---|---|
| 2+ SOG | 0–10% | 24 | 8.7% | 4.2% |
| 2+ SOG | 10–20% | 273 | 16.5% | 17.9% |
| 2+ SOG | 20–30% | 742 | 25.3% | 21.8% |
| 2+ SOG | 30–40% | 907 | 34.7% | 35.9% |
| 2+ SOG | 40–50% | 706 | 44.8% | 47.9% |
| 2+ SOG | 50–60% | 575 | 54.7% | 51.0% |
| 2+ SOG | 60–70% | 433 | 65.0% | 64.0% |
| 2+ SOG | 70–80% | 253 | 74.2% | 78.3% |
| 2+ SOG | 80–90% | 70 | 82.3% | 81.4% |
| 3+ SOG | 0–10% | 953 | 6.5% | 6.5% |
| 3+ SOG | 10–20% | 1,300 | 14.3% | 14.3% |
| 3+ SOG | 20–30% | 755 | 24.7% | 25.0% |
| 3+ SOG | 30–40% | 456 | 34.7% | 31.1% |
| 3+ SOG | 40–50% | 320 | 44.5% | 46.9% |
| 3+ SOG | 50–60% | 139 | 54.8% | 59.0% |
| 3+ SOG | 60–70% | 59 | 63.1% | 76.3% |
| 3+ SOG | 70–80% | 1 | 71.1% | 0.0% |
| 4+ SOG | 0–10% | 2,626 | 4.1% | 4.4% |
| 4+ SOG | 10–20% | 781 | 14.1% | 12.7% |
| 4+ SOG | 20–30% | 399 | 24.3% | 24.6% |
| 4+ SOG | 30–40% | 127 | 35.2% | 40.9% |
| 4+ SOG | 40–50% | 49 | 43.2% | 53.1% |
| 4+ SOG | 50–60% | 1 | 51.9% | 0.0% |
FAQ
How are NHL shots on goal projections calculated?
Expected SOG = projected ice time at each strength × the shooter's shrunk shots-per-60 at that strength × a matchup factor. The matchup factor comes from the shot-suppression ratings of the opposing skaters he is expected to face at 5-on-5, and from the opponent's penalty kill on the power play. The probabilities come from a negative binomial distribution fit on last season.
Are these betting picks?
No. These are model projections, not bets. The table shows the sportsbook shots line and best prices from up to five US books for context. Since we started logging our projections against those lines before each game (October 2026), the books have been about as accurate as the model on shots on goal, which is not an edge once the bookmaker margin is paid. A 60% projection still misses four times in ten, and the calibration section shows how the probabilities have held up.
How accurate are the projections?
We test the model the way it is used: for every game of a full held-out season, it only sees data from before that day. The methodology section on this page shows the log-loss against a simple shots-per-game baseline and a calibration chart. When we say 40%, it should happen about 40% of the time.
Is this the same SOG number as the daily projections table?
Yes. Tonight's shots on goal and time on ice in the daily fantasy projections table come from this model, so a skater shows the same expected SOG on both pages. On the first graded nights of the season it beat the provider projection it replaced on squared error, log-loss and correlation with actual shots.
Does the opposing defense pair really matter?
Somewhat, and less than ice time and the shooter's own volume. The page reports how much the matchup factor improves accuracy over a team-level adjustment, and how repeatable the defender ratings are from one half of the games to the other. Most matchup factors land between 0.9 and 1.1.
When do the projections update?
Overnight, after the previous night's games, and again during the day as lineups settle. Players who did not dress in their team's last game are left out until they do, so check confirmed lines before puck drop.
Why is a player I expected missing?
The lineup comes from the team's most recent game (or the matchup forecast when it has one). A player returning from injury or a healthy scratch is not projected until he dresses again.