← Models / SOG Model

How the Shots on Goal Model Works

What it does

For every player Hard Rock Bet posts a shots-on-goal line for, the model simulates the game 10,000 times and counts how often the player goes over. That gives a probability for every shot count (0, 1, 2 … 10+) — the bars under each pick — and the probability of going over Hard Rock's line.

Model vs Sim: the probability the picks use (Model) blends the simulation with Hard Rock's own de-vigged price, weighted 35% simulation / 65% market. In a two-season backtest the simulation alone was about as accurate as the closing line, but the blend was measurably more accurate than either — each knows things the other doesn't. The weight is re-fitted every week on graded results. Sim (in each row's detail) is the raw simulation.

How a simulation works

  • Game script — each simulated game draws how many power plays each team gets, how the score unfolds (from Hard Rock's moneyline and total), whether a trailing team pulls its goalie late, and whether it goes to 3-on-3 overtime. Every player on a team shares the same script, so a power-play-heavy night lifts the whole PP unit together.
  • Ice time — the player's share of his team's even-strength, power-play, penalty-kill, 6-on-5 and overtime minutes, from his recent deployment, plus a realistic random swing drawn from real games (including nights cut short by injury).
  • Shot rate — shots per 60 minutes in each situation, estimated from his history and pulled toward forward/defenseman norms when the sample is small. Adjusted for the opponent's shot suppression, the arena's scorekeeper tendencies, home ice, back-to-backs, and score state (trailing teams shoot more).

Reading the board

  • Book — Hard Rock's probability for the over with the vig removed.
  • Model — the model's probability for the over (simulation blended with the market, see above).
  • Proj — average simulated shots; TOI — expected minutes (power-play minutes in brackets).
  • EV — expected profit per 1 unit bet at Hard Rock's price on the model's side.
  • Fair — the price at which the bet would break even by the model.

Best bets & leans

Best bet: EV of at least 5% and the model at least 4 percentage points away from the de-vigged line. Lean: EV of at least 2%. Only lines with both an over and an under price can be picks. Stake is 0.25× Kelly as a share of bankroll — a sizing guide, not a promise.

Settlement & timing

Graded like the sportsbooks grade it: overtime counts, shootouts don't, and a player who doesn't take a shift is a void. Predictions refresh every 30 minutes on game days as lines move and lock at puck drop; the locked prediction is what gets graded. Every pick is tracked on Pick history and Performance, including how the line moved after the pick (CLV).

Honest expectations

Shots on goal are noisy — a 3-shot-per-game player still goes under 2.5 often. The model aims to be well calibrated, not to call every game. Results before live tracking come from a walk-forward backtest priced at Hard Rock's closing lines, using only information available before each game.

Informational only. Not betting advice.

Games
9
Lines priced
107
Best bets
4
Leans
5
Updated
Oct 19, 6:03 AM CT
backtest · priced at close

Best Bets

Sam Malinski
COL @ ANA · 9:00 PM CT · D
UNDER 2.5
Price-180
Model72.4%
Book60.2%
EV+12.6%
Fair-262
Stake5.7%
0
1
2
3
4
5
6
7
8
9
10+
Proj 1.38 SOG · 16.9 min (0.4 PP) L 3 SOG · -1.00u
Bobby McMann
TOR @ CAR · 4:00 PM CT · F
OVER 1.5
Price-110
Model55.5%
Book49.0%
EV+5.9%
Fair-125
Stake1.6%
0
1
2
3
4
5
6
7
8
9
10+
Proj 2.19 SOG · 15.3 min (1.3 PP) W 3 SOG · +0.91u
Charlie Coyle
COL @ ANA · 9:00 PM CT · F
UNDER 1.5
Price-115
Model56.4%
Book50.0%
EV+5.4%
Fair-129
Stake1.5%
0
1
2
3
4
5
6
7
8
9
10+
Proj 1.28 SOG · 14.8 min (1.4 PP) L 3 SOG · -1.00u
Alex Killorn
ANA vs COL · 9:00 PM CT · F
OVER 1.5
Price+110
Model50.0%
Book44.6%
EV+5.1%
Fair-100
Stake1.2%
0
1
2
3
4
5
6
7
8
9
10+
Proj 1.97 SOG · 17.1 min (1.9 PP) L 1 SOG · -1.00u

Full Board

PlayerGameLineOverUnder BookModelProjTOI (PP) PickEVResult
PHI @ OTT 12:00 PM CT 1.5 -195 +145 61.8% 64.5% 2.41 19.0 (2.4) — -2.4% 4 SOG
OTT vs PHI 12:00 PM CT 1.5 -195 +145 61.8% 63.9% 2.36 17.3 (2.6) — -3.4% 1 SOG
OTT vs PHI 12:00 PM CT 1.5 -175 +130 59.4% 61.7% 2.23 23.2 (2.1) — -3.0% 2 SOG
OTT vs PHI 12:00 PM CT 1.5 -175 +130 59.4% 60.3% 2.11 15.5 (2.0) — -5.3% 3 SOG
OTT vs PHI 12:00 PM CT 1.5 -150 +110 55.8% 60.0% 2.31 19.7 (3.3) — -0.1% 2 SOG
PHI @ OTT 12:00 PM CT 1.5 -165 +125 58.4% 59.6% 2.11 18.7 (2.7) — -4.3% 1 SOG
PHI @ OTT 12:00 PM CT 2.5 -130 -105 52.5% 53.0% 2.89 18.6 (2.9) — -6.2% 4 SOG
OTT vs PHI 12:00 PM CT 1.5 -135 +100 53.5% 52.9% 1.78 17.0 (0.7) — -7.9% 0 SOG
PHI @ OTT 12:00 PM CT 2.5 +135 -180 39.8% 43.4% 2.60 20.5 (3.1) — +1.9% 3 SOG
OTT vs PHI 12:00 PM CT 2.5 +110 -145 44.6% 41.4% 2.23 24.0 (3.1) — -13.1% 5 SOG
OTT vs PHI 12:00 PM CT 2.5 +125 -170 41.4% 41.0% 2.32 17.2 (2.8) — -7.7% 2 SOG
PHI @ OTT 12:00 PM CT 2.5 +150 -200 37.5% 37.6% 2.23 14.0 (1.4) — -5.9% 3 SOG
NYI @ NJD 12:00 PM CT 1.5 -195 +145 61.8% 63.4% 2.28 18.5 (2.7) — -4.1% 1 SOG
NYI @ NJD 12:00 PM CT 1.5 -165 +120 57.8% 59.2% 2.13 21.1 (3.2) — -5.0% 1 SOG
NJD vs NYI 12:00 PM CT 1.5 -180 +135 60.2% 57.8% 1.87 17.8 (2.7) — -10.0% 1 SOG
NYI @ NJD 12:00 PM CT 1.5 -135 +100 53.5% 57.7% 2.20 22.4 (2.8) — +0.4% 0 SOG
NJD vs NYI 12:00 PM CT 1.5 -190 +140 61.1% 57.6% 1.82 22.8 (3.2) — -12.1% 3 SOG
NYI @ NJD 12:00 PM CT 2.5 -120 -110 51.0% 50.9% 2.77 19.6 (3.0) — -6.6% 6 SOG
NYI @ NJD 12:00 PM CT 1.5 +105 -140 45.5% 45.1% 1.52 13.7 (1.2) — -7.5% 1 SOG
NJD vs NYI 12:00 PM CT 2.5 +115 -155 43.4% 44.4% 2.54 19.8 (3.4) — -4.6% 3 SOG
NJD vs NYI 12:00 PM CT 2.5 +130 -175 40.6% 42.8% 2.55 21.0 (3.4) — -1.5% 3 SOG
NYI @ NJD 12:00 PM CT 2.5 +145 -190 38.4% 40.3% 2.41 16.1 (2.6) — -1.3% 2 SOG
NJD vs NYI 12:00 PM CT 3.5 +135 -180 39.8% 37.9% 3.01 18.7 (3.0) — -11.0% 4 SOG
PIT vs BOS 2:30 PM CT 1.5 -200 +150 62.5% 62.7% 2.19 22.0 (2.2) — -6.0% 1 SOG
BOS @ PIT 2:30 PM CT 1.5 -175 +130 59.4% 60.8% 2.17 18.4 (2.5) — -4.5% 2 SOG
PIT vs BOS 2:30 PM CT 1.5 -175 +130 59.4% 60.1% 2.13 24.1 (1.8) — -5.6% 1 SOG
BOS @ PIT 2:30 PM CT 1.5 -170 +125 58.6% 58.8% 2.06 17.6 (2.6) — -6.7% 3 SOG
PIT vs BOS 2:30 PM CT 1.5 -160 +120 57.5% 58.5% 2.08 17.6 (2.2) — -4.9% 0 SOG
PIT vs BOS 2:30 PM CT 2.5 -125 -105 52.0% 54.4% 3.03 20.6 (3.6) — -2.0% 1 SOG
PIT vs BOS 2:30 PM CT 2.5 -115 -115 50.0% 52.9% 2.98 20.4 (3.2) — -1.2% 4 SOG
BOS @ PIT 2:30 PM CT 3.5 -105 -125 48.0% 48.1% 3.66 19.6 (3.2) — -6.0% 3 SOG
PIT vs BOS 2:30 PM CT 2.5 +120 -160 42.5% 46.1% 2.73 19.4 (3.1) — +1.3% 5 SOG
BOS @ PIT 2:30 PM CT 1.5 +120 -165 42.2% 45.2% 1.67 18.1 (2.0) — -0.6% 1 SOG
BOS @ PIT 2:30 PM CT 1.5 +105 -140 45.5% 44.7% 1.51 13.1 (1.2) — -8.4% 4 SOG
BOS @ PIT 2:30 PM CT 1.5 +115 -155 43.4% 41.4% 1.36 19.5 (2.7) — -11.1% 1 SOG
PIT vs BOS 2:30 PM CT 2.5 +150 -200 37.5% 40.4% 2.48 18.5 (3.3) — +0.9% 1 SOG
TOR @ CAR 4:00 PM CT 1.5 -170 +125 58.6% 61.3% 2.27 20.8 (3.4) — -2.7% 1 SOG
CAR vs TOR 4:00 PM CT 1.5 -175 +130 59.4% 59.5% 2.05 14.6 (2.2) — -6.5% 5 SOG
TOR @ CAR 4:00 PM CT 1.5 -155 +115 56.7% 59.3% 2.19 18.8 (3.1) — -2.5% 1 SOG
CAR vs TOR 4:00 PM CT 1.5 -165 +125 58.4% 58.2% 2.02 16.1 (2.8) — -6.5% 2 SOG
CAR vs TOR 4:00 PM CT 1.5 -175 +130 59.4% 58.1% 1.96 20.4 (1.9) — -8.8% 1 SOG
TOR @ CAR 4:00 PM CT 1.5 -110 -120 49.0% 55.5% 2.19 15.3 (1.3) OVER best +5.9% W 3 SOG · +0.91u
CAR vs TOR 4:00 PM CT 1.5 -145 +110 55.4% 52.6% 1.68 18.0 (1.1) — -11.1% 0 SOG
TOR @ CAR 4:00 PM CT 2.5 +100 -135 46.5% 51.2% 3.06 19.1 (3.3) OVER lean +2.3% L 1 SOG · -1.00u
CAR vs TOR 4:00 PM CT 1.5 -115 -115 50.0% 50.6% 1.76 14.6 (1.6) — -5.4% 1 SOG
CAR vs TOR 4:00 PM CT 2.5 -130 -105 52.5% 49.8% 2.53 18.5 (3.2) — -11.9% 1 SOG
TOR @ CAR 4:00 PM CT 3.5 +115 -155 43.4% 45.8% 3.68 20.1 (3.4) — -1.6% 2 SOG
CAR vs TOR 4:00 PM CT 2.5 -105 -125 48.0% 45.5% 2.42 18.8 (3.3) — -11.1% 4 SOG
TOR @ CAR 4:00 PM CT 2.5 +145 -195 38.2% 41.6% 2.52 18.1 (3.2) — +1.9% 4 SOG
CAR vs TOR 4:00 PM CT 2.5 +130 -175 40.6% 41.2% 2.34 15.6 (1.7) — -5.4% 0 SOG
BUF @ TBL 5:00 PM CT 1.5 -200 +150 62.5% 66.1% 2.50 18.2 (3.0) — -0.9% 0 SOG
BUF @ TBL 5:00 PM CT 1.5 -165 +125 58.4% 59.7% 2.11 15.5 (1.4) — -4.1% 1 SOG
BUF @ TBL 5:00 PM CT 1.5 -170 +125 58.6% 59.2% 2.07 15.3 (2.9) — -6.0% 2 SOG
BUF @ TBL 5:00 PM CT 2.5 -170 +125 58.6% 58.9% 3.14 18.8 (2.9) — -6.5% 3 SOG
TBL vs BUF 5:00 PM CT 2.5 -130 +100 53.1% 55.0% 3.04 20.8 (4.0) — -2.7% 4 SOG
TBL vs BUF 5:00 PM CT 1.5 -145 +110 55.4% 54.4% 1.85 18.1 (1.2) — -8.1% 4 SOG
TBL vs BUF 5:00 PM CT 1.5 -115 -115 50.0% 54.0% 2.04 17.4 (1.1) — +0.9% 3 SOG
TBL vs BUF 5:00 PM CT 2.5 +110 -145 44.6% 47.8% 2.75 19.7 (3.9) — +0.4% 0 SOG
TBL vs BUF 5:00 PM CT 2.5 +105 -140 45.5% 46.6% 2.65 19.8 (2.4) — -4.4% 1 SOG
BUF @ TBL 5:00 PM CT 2.5 +115 -155 43.4% 44.0% 2.49 22.9 (3.1) — -5.5% 4 SOG
TBL vs BUF 5:00 PM CT 3.5 +125 -170 41.4% 42.0% 3.33 20.7 (4.1) — -5.6% 4 SOG
TBL vs BUF 5:00 PM CT 2.5 +115 -150 43.7% 41.5% 2.24 23.3 (3.3) — -10.8% 2 SOG
BUF @ TBL 5:00 PM CT 2.5 +140 -185 39.1% 40.7% 2.41 18.0 (2.7) — -2.4% 1 SOG
CBJ @ WSH 5:00 PM CT 2.5 -180 +135 60.2% 62.6% 3.51 27.3 (3.4) — -2.7% 2 SOG
WSH vs CBJ 5:00 PM CT 1.5 -165 +120 57.8% 60.2% 2.23 19.6 (3.3) — -3.3% 2 SOG
CBJ @ WSH 5:00 PM CT 1.5 -160 +120 57.5% 60.2% 2.24 17.4 (2.0) — -2.2% 2 SOG
WSH vs CBJ 5:00 PM CT 1.5 -165 +125 58.4% 59.1% 2.06 18.3 (2.6) — -5.1% 1 SOG
CBJ @ WSH 5:00 PM CT 1.5 -130 +100 53.1% 59.1% 2.32 18.9 (3.1) OVER lean +4.5% L 0 SOG · -1.00u
WSH vs CBJ 5:00 PM CT 1.5 -155 +115 56.7% 58.9% 2.17 17.9 (3.5) — -3.1% 2 SOG
WSH vs CBJ 5:00 PM CT 1.5 -175 +130 59.4% 57.6% 1.91 15.5 (1.4) — -9.4% 1 SOG
CBJ @ WSH 5:00 PM CT 1.5 -110 -125 48.5% 53.3% 2.06 15.7 (2.1) — +1.8% 4 SOG
CBJ @ WSH 5:00 PM CT 1.5 +105 -140 45.5% 50.2% 1.94 18.1 (3.3) OVER lean +2.9% L 0 SOG · -1.00u
WSH vs CBJ 5:00 PM CT 3.5 -135 +105 54.1% 49.8% 3.46 18.8 (4.7) UNDER lean +3.0% L 6 SOG · -1.00u
CBJ @ WSH 5:00 PM CT 1.5 +110 -145 44.6% 48.1% 1.81 15.2 (1.5) — +1.0% 1 SOG
CBJ @ WSH 5:00 PM CT 2.5 +115 -150 43.7% 44.8% 2.57 19.6 (2.8) — -3.7% 0 SOG
CBJ @ WSH 5:00 PM CT 2.5 +135 -180 39.8% 42.5% 2.53 18.1 (3.3) — -0.2% 2 SOG
EDM @ WPG 6:00 PM CT 1.5 -175 +130 59.4% 61.4% 2.24 22.7 (1.5) — -3.6% 4 SOG
WPG vs EDM 6:00 PM CT 2.5 -175 +130 59.4% 59.7% 3.20 21.0 (3.3) — -6.1% 3 SOG
EDM @ WPG 6:00 PM CT 1.5 -160 +120 57.5% 58.5% 2.05 14.1 (1.8) — -4.9% 2 SOG
WPG vs EDM 6:00 PM CT 1.5 -170 +125 58.6% 58.4% 2.02 16.2 (2.1) — -7.2% 2 SOG
WPG vs EDM 6:00 PM CT 1.5 -160 +120 57.5% 55.7% 1.86 15.0 (1.7) — -9.5% 2 SOG
EDM @ WPG 6:00 PM CT 2.5 -120 -110 51.0% 53.1% 2.96 21.0 (3.7) — -2.7% 4 SOG
WPG vs EDM 6:00 PM CT 1.5 -135 +100 53.5% 51.2% 1.63 16.3 (1.9) — -10.8% 2 SOG
EDM @ WPG 6:00 PM CT 2.5 -105 -130 47.5% 47.2% 2.62 22.3 (3.1) — -7.8% 2 SOG
EDM @ WPG 6:00 PM CT 2.5 -105 -130 47.5% 44.9% 2.39 15.2 (1.7) — -12.3% 4 SOG
WPG vs EDM 6:00 PM CT 2.5 +140 -185 39.1% 39.6% 2.33 20.6 (3.4) — -5.0% 3 SOG
SJS @ CGY 7:00 PM CT 1.5 -175 +130 59.4% 60.7% 2.21 18.0 (2.8) — -4.6% 3 SOG
SJS @ CGY 7:00 PM CT 1.5 -170 +125 58.6% 60.0% 2.17 19.9 (3.2) — -4.6% 1 SOG
CGY vs SJS 7:00 PM CT 1.5 -175 +130 59.4% 59.9% 2.12 19.7 (3.0) — -5.9% 1 SOG
SJS @ CGY 7:00 PM CT 2.5 -115 -115 50.0% 53.1% 3.03 18.2 (3.2) — -0.7% 7 SOG
CGY vs SJS 7:00 PM CT 1.5 -110 -120 49.0% 49.5% 1.70 15.5 (1.8) — -5.4% 4 SOG
SJS @ CGY 7:00 PM CT 1.5 -115 -115 50.0% 49.3% 1.66 21.7 (1.6) — -7.9% 2 SOG
CGY vs SJS 7:00 PM CT 2.5 -115 -115 50.0% 46.8% 2.41 17.8 (2.8) — -12.5% 4 SOG
CGY vs SJS 7:00 PM CT 3.5 -105 -130 47.5% 45.1% 3.33 19.6 (3.2) — -11.9% 4 SOG
CGY vs SJS 7:00 PM CT 2.5 +105 -135 45.9% 43.1% 2.30 17.4 (1.7) — -11.7% 5 SOG
SJS @ CGY 7:00 PM CT 3.5 +130 -175 40.6% 40.1% 3.19 20.1 (3.4) — -7.8% 2 SOG
CGY vs SJS 7:00 PM CT 2.5 +120 -160 42.5% 38.1% 2.04 16.9 (1.5) — -16.3% 2 SOG
ANA vs COL 9:00 PM CT 1.5 -115 -115 50.0% 54.8% 2.10 17.4 (2.7) OVER lean +2.4% L 0 SOG · -1.00u
COL @ ANA 9:00 PM CT 2.5 -140 +105 54.5% 52.8% 2.78 19.3 (3.7) — -9.4% 0 SOG
ANA vs COL 9:00 PM CT 1.5 +110 -145 44.6% 50.0% 1.97 17.1 (1.9) OVER best +5.1% L 1 SOG · -1.00u
ANA vs COL 9:00 PM CT 2.5 +130 -170 40.9% 44.1% 2.65 16.5 (2.1) — +1.4% 0 SOG
COL @ ANA 9:00 PM CT 1.5 -115 -115 50.0% 43.6% 1.28 14.8 (1.4) UNDER best +5.4% L 3 SOG · -1.00u
COL @ ANA 9:00 PM CT 2.5 +100 -130 46.9% 43.1% 2.26 18.2 (2.5) — -13.9% 2 SOG
ANA vs COL 9:00 PM CT 2.5 +130 -170 40.9% 41.4% 2.37 17.2 (3.0) — -4.8% 3 SOG
ANA vs COL 9:00 PM CT 2.5 +145 -190 38.4% 41.1% 2.46 18.2 (2.9) — +0.7% 3 SOG
ANA vs COL 9:00 PM CT 2.5 +130 -170 40.9% 39.6% 2.23 14.3 (0.9) — -8.8% 1 SOG
COL @ ANA 9:00 PM CT 2.5 +135 -180 39.8% 27.6% 1.38 16.9 (0.4) UNDER best +12.6% L 3 SOG · -1.00u

Click a row for the shot distribution and model inputs. Hard Rock lines only. Model fitted through 2026-10-18.