Motion-blurred skater in a Buffalo Sabres sweater
Breakdown · BUF at MTL

Sabres hold off the Canadiens

The verdict · coin flip

The Sabres won a genuine coin flip — neither side controlled the run of play.

BUF 4 · MTL 2
◆ By the ModelJul 12, 2:02 AMxG: xgboost-0.758Edited for clarityDrafted from NHL play-by-play by Backcheck's model, worded for clarity by an AI editor that may not change a number. Nobody at Backcheck was at the rink. How this works

The Sabres beat the Canadiens 4-2, but expected goals finished 3.28–3.55—nearly even. The real gap: Montreal controlled play and registered 67% of shot attempts (34 on goal to Buffalo's 17), yet still lost. This is the margin between volume and danger.

U. Luukkonen stopped 32 of 34 shots for a 0.941 save percentage, outperforming expected performance by 1.28 goals. S. Montembeault made 13 of 16 saves at 0.812, a modest 0.55 above expected, but the quality gap was too wide to bridge.

Buffalo's efficiency told the story. They generated 0.081 expected goals per shot compared to Montreal's 0.050—a decisive difference in shot quality. In the high-danger area, Buffalo converted 3 of 7 chances (43%), where it matters most. The Canadiens created 3 rebound opportunities but converted only 1, despite crashing the net effectively.

The rush game sealed it. Buffalo scored 2 goals on 20 rush opportunities—a ratio Montreal couldn't match. Peyton Krebs's snap shot from the wing in the third period exemplified this efficiency: Buffalo capitalized on transition where Montreal merely chased.

Montreal dominated possession but never found dangerous looks. They underperformed expected goals by 1.28, the penalty for quantity without precision. N. Suzuki (1G, 1A in 20:14) and M. Matheson (1A in 23:53) worked hard, yet the Canadiens' possession advantage converted into just two goals—a reminder that shot attempts don't decide games.

The breakdown in twelve frames

Swipe it

Every number is from this page
Final · Jan 22
BUF
4
MTL
2

Sabres hold off the Canadiens

Chances 3.5 – 3.3Did they deserve it? →
Did they deserve it?

Dead even on chances. The Sabres took it anyway.

Expected goals · chance value
BUF
3.55
MTL
3.28
52% of the chances48%

The board read BUF 4, MTL 2. The chances read BUF 3.5, MTL 3.3.

Our xG model · NHL play-by-play · all situations
Luck check
BUF
+0.5
goals above expected
BUF3.55 expected · 4 scored
Expected
Scored
MTL3.28 expected · 2 scored
Expected
Scored

Both sides finished close to what their chances were worth. This one was earned on the ice.

PDO = sh% + sv% · drifts to 1.000 over a season
Every goal, in order
  1. P1 00:44BUFJ. Zucker1–0
  2. P1 14:58BUFB. MalenstynSH2–0
  3. P2 02:25BUFZ. Benson3–0
  4. P2 03:56MTLC. Caufield3–1
  5. P2 11:20MTLN. Suzuki3–2
  6. P3 19:16BUFP. KrebsEN4–2
NHL play-by-play · chance value from our xG model
Where the shots came from
BUF
27 shots
4
Final
73 shots
MTL
46 shots
2
BUF attackMTL attack
BUF MTL Goal
27
shots · 4 in
46
shots · 2 in
Every unblocked shot · press play to replay it
Chances by danger
BUFMTL
3 / 7
2.36 xG
High danger
1 / 3
0.69 xG
1 / 9
0.87 xG
Medium
0 / 16
1.78 xG
0 / 28
0.32 xG
Low
1 / 47
0.80 xG

The Sabres buried 3 of 7 high-danger looks.

Danger tiers by our xG model · high ≥ 20% chance
In the net
B+
U. Luukkonen
+1.3
BUF · 32/34
B
S. Montembeault
+0.6
MTL · 13/16
The numbers, checked
BACKCHECK

Sabres hold off the Canadiens

A model, not a newsroom. Every number on these frames comes from the NHL's play-by-play and our own models. Nothing was watched, guessed or heard from anyone.

Read the full breakdown
backcheckreport.com
01 / 08 · Final
Every goal, in order

How it happened

NHL play-by-play
1stshots 8–10
  1. 00:44BUFJ. Zucker(J. Quinn, R. McLeod)1–0
  2. 14:58BUFB. Malenstynshorthanded(M. Samuelsson)2–0
2ndshots 3–15
  1. 02:25BUFZ. Benson(K. Helenius, N. Ostlund)3–0
  2. 03:56MTLC. Caufield(N. Suzuki, M. Matheson)3–1
  3. 11:20MTLN. Suzuki(Z. Bolduc)3–2
3rdshots 6–9
  1. 19:16BUFP. Krebsempty net(T. Thompson)4–2

score reads BUF–MTL

Source · NHL play-by-play (api-web.nhle.com)
Process vs result

The numbers

XGBoost xG · NHL play-by-play
3.55
BUF chances
Goals their shots were worth
+0.5
Finishing
Goals above what those chances were worth
1.061
BUF puck luck
Above 1.000 — the bounces went their way
40.0%
Shot attempts
Under half — they were outshot
Split by club

Who controlled the game

3.55Expected goals3.28
BUF 52% of the chance quality
17Shots on goal34
7High-danger chances3
44All attempts (Corsi)66
Adjusted for score: BUF 35% · MTL 65%
Faceoffs · MTL won81%off65%neu50%def
Source · NHL play-by-play · XGBoost xG
How the game was won

The danger ladder

shotsgoalsexpected
High dangerslot & crease
BUF3 / 7 · 2.36 xG
MTL1 / 3 · 0.69 xG
Medium dangermid-range
BUF1 / 9 · 0.87 xG
MTL0 / 16 · 1.78 xG
Low dangerperimeter & point
BUF0 / 28 · 0.32 xG
MTL1 / 47 · 0.80 xG

MTL went 0-for-16 from medium danger on 1.78 expected goals — 1.8 left on the table.

Source · Backcheck xG model · NHL play-by-play
The luck layer

Finishing vs expected

expectedactual
BUF
4 G · 3.55 xG · +0.5
MTL
2 G · 3.28 xG · -1.3
012345

BUF finished +0.5 against expected, MTL -1.3.

Source · Backcheck xG model
Shot types · rush and rebound chancesopen +
What they shot — and what went in

Shot diet

goalsshots
BUF
SNAP3/20
SLAP0/2
TIP IN0/1
BACKHAND1/3
WRIST0/1
DEFLECTED0/0
BAT0/0
OTHER0/17
MTL
SNAP2/28
SLAP0/5
TIP IN0/5
BACKHAND0/2
WRIST0/2
DEFLECTED0/3
BAT0/1
OTHER0/20
BUF
MTL
Off the rush
2 G on 20
1.97 xG
1 G on 31
2.35 xG
Off rebounds
0 G on 1
0.24 xG
1 G on 3
0.55 xG

Snap shots carried the volume: BUF went 3-for-20, MTL 2-for-28. BUF scored 2 of theirs off the rush.

Source · Backcheck xG model · NHL shot types
New to these numbers?

Two things happened in this game: who created the better chances, and who put the puck in the net. They are not the same thing, and this page separates them on purpose.

The one to watch is expected goals— the best single read on who deserved to win. When it disagrees with the scoreboard, that disagreement is usually the story. Nothing here is a projection; every figure is computed from this game's play-by-play. Full glossary →

xG
Expected goals. Every shot scored by how often that exact look goes in. 2.5 xG means the chances were worth about two and a half goals.
HD
High-danger chances — shots from the slot and the crease, where shots actually become goals.
Corsi
Every shot attempt, including the ones that missed or got blocked. A rough read on who had the puck.
Adj.
Score-adjusted. Teams that trail shoot more and teams that lead sit back, so this corrects the attempt count for the scoreboard.
GSAx
Goals saved above expected. A positive number means the goalie stopped more than an average goalie would have on those shots.
PDO
Shooting % plus save % — a luck gauge. It sits near 1.000 over a season, so a game far from it usually means the bounces decided it.
Shot by shot

In the net

Graded on goals saved above expected
U. Luukkonen
BUF · 32/34 · .941
+1.3
saved above expected
B+
the night
By dangerG/attxGsaved
High danger1/30.7-0.3
Medium0/161.8+1.8
Low1/470.8-0.2

A+ ≥ +2.5 saved above expected · A ≥ +1.5 · B+ ≥ +0.75 · B ≥ +0.25 · C ≥ −0.25 · D ≥ −0.75 · F below −1.5

S. Montembeault
MTL · 13/16 · .812
+0.6
saved above expected
B
the night
By dangerG/attxGsaved
High danger3/72.4-0.6
Medium1/90.9-0.1
Low0/280.3+0.3

A+ ≥ +2.5 saved above expected · A ≥ +1.5 · B+ ≥ +0.75 · B ≥ +0.25 · C ≥ −0.25 · D ≥ −0.75 · F below −1.5

73 shots · press play to watch the game back

Where the shots came from

NHL play-by-play coordinates
BUF
27 shots
4
Final
73 shots
MTL
46 shots
2
BUF attackMTL attack
BUF MTL Goal

Each club shoots toward its own end — BUF left, MTL right — the way you would watch it. A dot's size is how dangerous the look was, from distance and angle; it is a proxy for shot quality, not the xG model the article is written from. Hover a dot for the shooter and the clock.

Ranked from the box score

Three stars

Points first
Three stars · computed, not voted
N. Suzuki
#14 · C · MTL
1 G · 1 A · 3 SOG · 20:14 on ice
M. Matheson
#8 · D · MTL
0 G · 1 A · 5 SOG · 23:53 on ice · +1
M. Samuelsson
#23 · D · BUF
0 G · 1 A · 0 SOG · 23:03 on ice · -1
Ranked from the box score — points first · Backcheck
What the model said beforehand

Before the game

Written Thu, Jan 22
Open the pre-game read
Written from the numbers

The read

Edited for clarity
◆ By the ModelJul 12, 2:01 AMEdited for clarityDrafted from NHL play-by-play by Backcheck's model, worded for clarity by an AI editor that may not change a number. Nobody at Backcheck was at the rink. How this works

The model projects a 2.6–2.6 game with Montreal at 50% win probability. This is about as close to a pick'em as the numbers get.

The advanced metrics confirm it. Buffalo's xG% of 50.0% edges Montreal's 48.0%, but their Corsi figures are identical at 49.0%—essentially a wash. Both teams are running hot on PDO (Buffalo 1.020, Montreal 1.018), which means regression is coming for someone, though neither advantage is large enough to predict who.

The goaltending wrinkle: J. Dobes and A. Lyon are both playing on back-to-backs. One or both may be pulled in favor of a backup, or both may skate tired. Fatigue compounds under game intensity, so whichever starter stays in longer with better legs has an edge.

Buffalo's scoring runs through Jason Zucker, generating 1.07 xG/60 with 14 goals and 14 assists. His six high-danger goals and 15.1% shooting rate make him the most efficient weapon on either roster. Josh Doan pairs alongside at 1.01 xG/60, 15 goals, and 18 assists, though his two high-danger goals and 11.5% shooting suggest he's benefiting from volume over position—Montreal will target his defensive tendencies.

Montreal counters with Cole Caufield's 33 goals, 16 assists, and 0.97 xG/60. His one high-danger goal and 20.0% shooting reveal a sniper running hot on inefficiently generated chances—that conversion rate is unsustainable. Oliver Kapanen (0.83 xG/60, 19 goals, 12 assists, four high-danger goals) is the secondary playmaker, another name riding an inflated 17.8% shooting percentage.

The matchup pivots on whether Buffalo can neutralize Caufield and whether Montreal can contain Zucker. Jack Quinn is Buffalo's defensive weak link, placing him in Montreal's scouting report. Mike Matheson is Montreal's equivalent vulnerability.

Nothing here breaks toward either team. Same possession rates, overlapping shot generation, both riding unsustainable efficiency. The back-to-back goaltending situation is the only variable that leans either way, and that's noise on a 60-game slate. This is a true coin flip.

What the model said beforehand

The model's lean

MTL 50%
50%
MTL
Model favorite
50%
50%
BUF50MTL

MTL by 0 points of win probability — effectively a coin flip. Projected score BUF 2.6–2.6 MTL; 18% chance it's tied after 60.

Source · Backcheck Poisson projection · season scoring rates
Season rates · 5v5

Tale of the tape

NHL stats API · our xG
BUF← edge
edge →MTL
50.0%48.0%
49.0%49.0%
2.552.41
2.552.62
2.352.24
1.901.96
1.0201.018

BUF holds 5 of 6 process categories — and the luck row (1.020 vs 1.018) says BUF has been getting the bounces, which tends not to last.

Source · NHL stats API + our xG · 5v5
Form · Last 10
BUF
6-3-1
+7 GD · 1d rest
MTL
6-3-1
+4 GD · 1d rest
1.020
BUF PDO
Luck gauge · drifts to 1.000
1.018
MTL PDO
Luck gauge · drifts to 1.000
What decides it

Keys to the game

Regression watch
  • The Canadiens' PDO is 1.018 — running hot, expect some regression.
  • The Sabres' PDO is 1.020 — running hot, expect some regression.
Things to watch
  • J. Dobes is on a back-to-back — watch for a backup start or a tired starter.
  • A. Lyon is on a back-to-back — watch for a backup start or a tired starter.
  • The Canadiens' PDO is 1.018 — running hot, expect some regression.
Last game's lineup · confirmed at warm-up

Lineups

NHL box score
BUF
Expected in goal
A. Lyon
back-to-back.912 last start
Backup Ukko-Pekka Luukkonen · +10.5 GSAx this season
Back-to-back: the backup often gets this one. Treat the starter as unconfirmed.

No completed game on file for this club yet.

MTL
Expected in goal
J. Dobes
back-to-back.850 last start
Backup Jakub Dobes · +17.3 GSAx this season
Back-to-back: the backup often gets this one. Treat the starter as unconfirmed.

No completed game on file for this club yet.

Lineups are the players who dressed in each club's last game, with their minutes; clubs confirm tonight's at warm-up. Every player this preview names was in that lineup.

Computed danger · scouting

Players to watch

NHL stats API · our xG
BUF
Jason Zucker14G 14A
1.07 xG/60 · 6 HD · 15.1% sh
Josh Doan15G 18A
1.01 xG/60 · 2 HD · 11.5% sh
MTL
Cole Caufield33G 16A
0.97 xG/60 · 1 HD · 20.0% sh
Oliver Kapanen19G 12A
0.83 xG/60 · 4 HD · 17.8% sh
Keep going

Where to next