Motion-blurred skater in a St. Louis Blues sweater
Breakdown · MTL at STL

Blues shut out the Canadiens, 2-0

The verdict · stolen

The Blues stole one. They lost the expected-goals battle 4.28–3.86 and won anyway.

MTL 0 · STL 2
◆ By the ModelJul 11, 10:55 PMxG: 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

Montreal had the better chances. St. Louis had J. Binnington — and that was the difference in a 2–0 game the underlying metrics suggested should have been close. The Canadiens finished with 4.28 expected goals to the Blues's 3.86, a 53–47 split that implied competitiveness. The scoreboard disagreed.

Binnington stopped all 26 shots and saved 4.28 goals above expected, a performance so pristine it inverted an entire game. When one goalie stands on his head, structure becomes irrelevant.

The Canadiens had their chances and failed to capitalize. J. Fowler kept Montreal in the game — 17 saves on 19 shots, +1.86 vs expected — but couldn't overcome his team's finishing. Montreal went 0 for 6 on high-danger chances and couldn't convert four rebound opportunities, a rare failure that usually doesn't repeat.

St. Louis's victory came from precision and timing. They shot at 0.101 expected goals per shot to Montreal's 0.066, a gap that reflects quality over volume. But their decisive edge was the rush — 2 goals on 24 attempts. That output looks modest until you remember Montreal's futility: 0 goals on six high-danger chances.

Robert Thomas's backhander from the slot in the second period made it 1–0, settling a game that would ultimately turn on the only thing that mattered: which team could finish.

The breakdown in twelve frames

Swipe it

Every number is from this page
Final · Jan 3
MTL
0
STL
2

Blues shut out the Canadiens, 2-0

Chances 4.3 – 3.9Did they deserve it? →
Did they deserve it?

The Canadiens deserved better.

Expected goals · chance value
MTL
4.28
STL
3.86
53% of the chances47%

The board read MTL 0, STL 2. The chances read MTL 4.3, STL 3.9.

Our xG model · NHL play-by-play · all situations
Luck check
STL
−1.9
goals above expected
STL3.86 expected · 2 scored
Expected
Scored
MTL4.28 expected · 0 scored
Expected
Scored

The Canadiens left 4.3 goals on the table against what their chances were worth.

PDO = sh% + sv% · drifts to 1.000 over a season
Every goal, in order
  1. P1 10:48STLJ. Berggren0–1
  2. P2 10:13STLR. ThomasSH0–2
NHL play-by-play · chance value from our xG model
Where the shots came from
MTL
48 shots
0
Final
76 shots
STL
28 shots
2
MTL attackSTL attack
MTL STL Goal
48
shots · 0 in
28
shots · 2 in
Every unblocked shot · press play to replay it
Chances by danger
MTLSTL
0 / 6
1.28 xG
High danger
1 / 5
1.95 xG
0 / 22
2.42 xG
Medium
1 / 16
1.65 xG
0 / 37
0.58 xG
Low
0 / 17
0.25 xG

The Canadiens went 0 for 6 from the slot.

Danger tiers by our xG model · high ≥ 20% chance
In the net
A+
J. Binnington
+4.3
STL · 26/26
A
J. Fowler
+1.9
MTL · 17/19
The numbers, checked
BACKCHECK

Blues shut out the Canadiens, 2-0

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 9–8
  1. 10:48STLJ. Berggren(C. Fowler, O. Stenberg)0–1
2ndshots 10–7
  1. 10:13STLR. Thomasshorthanded(A. Toropchenko)0–2
3rdshots 7–4no goals

    score reads MTL–STL

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

    The numbers

    XGBoost xG · NHL play-by-play
    3.86
    STL chances
    Goals their shots were worth
    −1.9
    Finishing
    Goals below what those chances were worth
    1.053
    STL puck luck
    Above 1.000 — the bounces went their way
    36.9%
    Shot attempts
    Under half — they were outshot
    Split by club

    Who controlled the game

    4.28Expected goals3.86
    MTL 53% of the chance quality
    26Shots on goal19
    6High-danger chances5
    65All attempts (Corsi)38
    Adjusted for score: MTL 68% · STL 32%
    Faceoffs · STL won46%off43%neu43%def
    Source · NHL play-by-play · XGBoost xG
    How the game was won

    The danger ladder

    shotsgoalsexpected
    High dangerslot & crease
    MTL0 / 6 · 1.28 xG
    STL1 / 5 · 1.95 xG
    Medium dangermid-range
    MTL0 / 22 · 2.42 xG
    STL1 / 16 · 1.65 xG
    Low dangerperimeter & point
    MTL0 / 37 · 0.58 xG
    STL0 / 17 · 0.25 xG

    MTL went 0-for-22 from medium danger on 2.42 expected goals — 2.4 left on the table.

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

    Finishing vs expected

    expectedactual
    MTL
    0 G · 4.28 xG · -4.3
    STL
    2 G · 3.86 xG · -1.9
    012345

    MTL finished -4.3 against expected, STL -1.9.

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

    Shot diet

    goalsshots
    MTL
    WRIST0/24
    SNAP0/5
    SLAP0/10
    TIP IN0/6
    BACKHAND0/1
    POKE0/1
    WRAP AROUND0/1
    DEFLECTED0/0
    OTHER0/17
    STL
    WRIST0/17
    SNAP1/6
    SLAP0/0
    TIP IN0/1
    BACKHAND1/3
    POKE0/0
    WRAP AROUND0/0
    DEFLECTED0/1
    OTHER0/10
    MTL
    STL
    Off the rush
    0 G on 33
    3.05 xG
    2 G on 24
    3.22 xG
    Off rebounds
    0 G on 4
    0.65 xG
    0 G on 1
    0.10 xG

    Wrist shots carried the volume: MTL went 0-for-24, STL 0-for-17. STL 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
    J. Fowler
    MTL · 17/19 · .895
    +1.9
    saved above expected
    A
    the night
    By dangerG/attxGsaved
    High danger1/51.9+0.9
    Medium1/161.6+0.7
    Low0/170.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

    J. Binnington
    STL · 26/26 · 1.000
    +4.3
    saved above expected
    A+
    the night
    By dangerG/attxGsaved
    High danger0/61.3+1.3
    Medium0/222.4+2.4
    Low0/370.6+0.6

    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

    76 shots · press play to watch the game back

    Where the shots came from

    NHL play-by-play coordinates
    MTL
    48 shots
    0
    Final
    76 shots
    STL
    28 shots
    2
    MTL attackSTL attack
    MTL STL Goal

    Each club shoots toward its own end — MTL left, STL 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
    R. Thomas
    #18 · C · STL
    1 G · 0 A · 2 SOG · 22:33 on ice · +1
    C. Fowler
    #17 · D · STL
    0 G · 1 A · 0 SOG · 18:22 on ice · +1
    A. Toropchenko
    #13 · R · STL
    0 G · 1 A · 2 SOG · 14:33 on ice · +1
    Ranked from the box score — points first · Backcheck
    What the model said beforehand

    Before the game

    Written Sat, Jan 3
    Open the pre-game read
    Written from the numbers

    The read

    Edited for clarity
    ◆ By the ModelJul 11, 10:53 PMEdited 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 models see a 53% edge to St. Louis in a game that rounds to a dead heat—project 2.4 to 2.6 goals separating them. At that margin, this is as close to a pick'em as November gets.

    Saint Louis brings the better five-on-five underlying numbers: 49.0% xG% to Montreal's 48.0%, though the Canadiens lead in shot share at 49.0% Corsi%. The Blues, though, are running negative over ten games, down 6 on goal differential—a warning sign entering this one.

    Montreal's advantage carries an asterisk. Their 1.018 PDO is unsustainable—that's a goaltender and shooter luck combo that doesn't last. Regression is coming, and this is the kind of game where it might arrive early.

    Both J. Hofer and J. Dobes play on the second leg of a back-to-back, which means either backups take over or starters run on fumes. Either scenario introduces randomness into the result.

    The offensive battle centers on Cole Caufield, who leads Montreal with 33 goals—one from high-danger scoring areas—at 0.97 xG/60. His 20.0% shooting rate demonstrates reliable conversion. Oliver Kapanen provides secondary scoring: 19 goals including 4 high-danger, 0.83 xG/60, 17.8% shooting.

    St. Louis counters with Jimmy Snuggerud, who has 15 goals (2 high-danger), 22 assists, and 0.86 xG/60, and Dylan Holloway with 13 goals (1 high-danger), 24 assists, 0.82 xG/60, and 10.8% shooting.

    Montreal exposes Mike Matheson as a defensive liability, an opening St. Louis can exploit. The Blues list Snuggerud as their defensive weak link—an odd designation for an offensive leader, but one that speaks to the thinness of their back end.

    Neither team generates high-danger goals at volume (both 0% HD goal rate) or converts rebound chances (both 0% rebound goal rate). Tonight likely breaks on open-ice execution and whoever keeps their goaltender fresher in the third.

    This is a true toss-up. The models are right.

    What the model said beforehand

    The model's lean

    STL 53%
    53%
    STL
    Model favorite
    47%
    53%
    MTL50STL

    STL by 6 points of win probability — a modest lean. Projected score MTL 2.4–2.6 STL; 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
    MTL← edge
    edge →STL
    48.0%49.0%
    49.0%48.0%
    2.412.34
    2.622.40
    2.242.00
    1.962.12
    1.0181.000

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

    Source · NHL stats API + our xG · 5v5
    Form · Last 10
    MTL
    6-1-3
    +11 GD · 1d rest
    STL
    5-4-1
    -6 GD · 1d rest
    1.018
    MTL PDO
    Luck gauge · drifts to 1.000
    1.000
    STL 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.
    Things to watch
    • J. Hofer is on a back-to-back — watch for a backup start or a tired starter.
    • J. Dobes is on a back-to-back — watch for a backup start or a tired starter.
    • The Blues are underwater at -6 goal differential over their last 10.
    • The Canadiens' PDO is 1.018 — running hot, expect some regression.
    Last game's lineup · confirmed at warm-up

    Lineups

    NHL box score
    MTL
    Expected in goal
    J. Dobes
    back-to-back.800 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.

    STL
    Expected in goal
    J. Hofer
    back-to-back.880 last start
    Backup Joel Hofer · +11.7 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
    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
    STL
    Jimmy Snuggerud15G 22A
    0.86 xG/60 · 2 HD · 11.9% sh
    Dylan Holloway13G 24A
    0.82 xG/60 · 1 HD · 10.8% sh
    Keep going

    Where to next