Motion-blurred skater in a gold and black sweater
Breakdown · BOS at MTL

J. Swayman stands tall as the Bruins edge the Canadiens

The verdict · coin flip

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

BOS 3 · MTL 2
◆ By the ModelJul 11, 4:03 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 controlled the ice—55% of shot attempts—yet lost 3-2 to Boston in a game where expected goals split 4.80–4.82. That split said dead-even. The scoreboard begged to differ, and the answer sat between the pipes.

The Canadiens' evening vanished at the highest-leverage moments. They went 0/8 on high-danger chances, the kind of drought that hardens quickly into regret. Montreal's 55% shot advantage never translated downstairs; they scored twice off the rush on 29 chances but found nothing in the core. They underperformed their expected goals by 2.80, pouring possession into a game that wouldn't repay it.

Boston was equally silent on grade-A looks, going 0/9 on high-danger chances. Yet they broke through. Twice on the rush (26 chances), three times total—and that margin is J. Swayman. He stopped at 0.929 save percentage, 26 saves on 28 shots, in a performance that ran 2.80 goals better than expected. When both teams miss this badly—17 combined high-danger chances, zero conversions for Montreal, zero for Boston—the goaltender who turns that into a win becomes the differentiator.

S. Montembeault made 20 saves on 23 shots (0.870 SV%), yet it wasn't enough. Montreal's underperformance of their xG by 2.80 cost them. Boston, despite underperforming their 4.82 xG by 1.82, still found three. The asymmetry was Swayman's work.

Neither team crashed the crease with conviction: both created 5 rebound opportunities, both converted zero. Neither dominated the rush—Montreal 2/29, Boston 2/26. The game was an evenly distributed mess, which should have meant an evenly distributed result. Instead, one goaltender's save percentage wrote 3-2 across the scoreboard.

D. Pastrnak's 2 assists in 20:15 framed the attack. N. Zadorov added 1 in 21:05. For Montreal, N. Suzuki had 1 assist in 24:35.

The breakdown in twelve frames

Swipe it

Every number is from this page
Final · Nov 15
BOS
3
MTL
2

J. Swayman stands tall as the Bruins edge the Canadiens

Chances 4.8 – 4.8Did they deserve it? →
Did they deserve it?

Dead even on chances. The Bruins took it anyway.

Expected goals · chance value
BOS
4.82
MTL
4.80
50% of the chances50%

The board read BOS 3, MTL 2. The chances read BOS 4.8, MTL 4.8.

Our xG model · NHL play-by-play · all situations
Luck check
BOS
−1.8
goals above expected
BOS4.82 expected · 3 scored
Expected
Scored
MTL4.80 expected · 2 scored
Expected
Scored

The Canadiens left 2.8 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 08:38BOSM. Khusnutdinov1–0
  2. P1 12:12MTLJ. EvansSH1–1
  3. P2 02:00BOSM. Lohrei2–1
  4. P2 16:51BOSV. ArvidssonPP3–1
  5. P2 18:44MTLC. Caufield3–2
NHL play-by-play · chance value from our xG model
Where the shots came from
BOS
40 shots
3
Final
92 shots
MTL
52 shots
2
BOS attackMTL attack
BOS MTL Goal
40
shots · 3 in
52
shots · 2 in
Every unblocked shot · press play to replay it
Chances by danger
BOSMTL
0 / 9
2.77 xG
High danger
0 / 8
1.71 xG
2 / 18
1.73 xG
Medium
2 / 25
2.62 xG
1 / 36
0.32 xG
Low
0 / 38
0.47 xG

The Canadiens went 0 for 8 from the slot.

Danger tiers by our xG model · high ≥ 20% chance
In the net
A+
J. Swayman
+2.8
BOS · 26/28
A
S. Montembeault
+1.8
MTL · 20/23
The numbers, checked
BACKCHECK

J. Swayman stands tall as the Bruins edge 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 10–7
  1. 08:38BOSM. Khusnutdinov(D. Pastrnak, N. Zadorov)1–0
  2. 12:12MTLJ. Evansshorthanded(J. Anderson)1–1
2ndshots 7–12
  1. 02:00BOSM. Lohrei(M. Kastelic, T. Jeannot)2–1
  2. 16:51BOSV. Arvidssonpower play(P. Zacha, D. Pastrnak)3–1
  3. 18:44MTLC. Caufield(N. Suzuki, J. Struble)3–2
3rdshots 6–9no goals

    score reads BOS–MTL

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

    The numbers

    XGBoost xG · NHL play-by-play
    4.82
    BOS chances
    Goals their shots were worth
    −1.8
    Finishing
    Goals below what those chances were worth
    1.020
    BOS puck luck
    About 1.000 — a normal night for bounces
    47.0%
    Shot attempts
    Under half — they were outshot
    Split by club

    Who controlled the game

    4.82Expected goals4.80
    BOS 50% of the chance quality
    23Shots on goal28
    9High-danger chances8
    63All attempts (Corsi)71
    Adjusted for score: BOS 44% · MTL 56%
    Faceoffs · MTL won41%off44%neu39%def
    Source · NHL play-by-play · XGBoost xG
    How the game was won

    The danger ladder

    shotsgoalsexpected
    High dangerslot & crease
    BOS0 / 9 · 2.77 xG
    MTL0 / 8 · 1.71 xG
    Medium dangermid-range
    BOS2 / 18 · 1.73 xG
    MTL2 / 25 · 2.62 xG
    Low dangerperimeter & point
    BOS1 / 36 · 0.32 xG
    MTL0 / 38 · 0.47 xG

    BOS went 0-for-9 from high danger on 2.77 expected goals — 2.8 left on the table.

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

    Finishing vs expected

    expectedactual
    BOS
    3 G · 4.82 xG · -1.8
    MTL
    2 G · 4.80 xG · -2.8
    0123456

    BOS finished -1.8 against expected, MTL -2.8.

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

    Shot diet

    goalsshots
    BOS
    SNAP3/28
    SLAP0/3
    TIP IN0/3
    BACKHAND0/4
    WRIST0/2
    OTHER0/23
    MTL
    SNAP1/33
    SLAP0/9
    TIP IN0/7
    BACKHAND1/3
    WRIST0/0
    OTHER0/19
    BOS
    MTL
    Off the rush
    2 G on 26
    3.00 xG
    2 G on 29
    2.43 xG
    Off rebounds
    0 G on 5
    0.53 xG
    0 G on 5
    0.89 xG

    Snap shots carried the volume: BOS went 3-for-28, MTL 1-for-33. BOS 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. Swayman
    BOS · 26/28 · .929
    +2.8
    saved above expected
    A+
    the night
    By dangerG/attxGsaved
    High danger0/81.7+1.7
    Medium2/252.6+0.6
    Low0/380.5+0.5

    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 · 20/23 · .870
    +1.8
    saved above expected
    A
    the night
    By dangerG/attxGsaved
    High danger0/92.8+2.8
    Medium2/181.7-0.3
    Low1/360.3-0.7

    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

    92 shots · press play to watch the game back

    Where the shots came from

    NHL play-by-play coordinates
    BOS
    40 shots
    3
    Final
    92 shots
    MTL
    52 shots
    2
    BOS attackMTL attack
    BOS MTL Goal

    Each club shoots toward its own end — BOS 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
    D. Pastrnak
    #88 · R · BOS
    0 G · 2 A · 5 SOG · 20:15 on ice · -1
    N. Suzuki
    #14 · C · MTL
    0 G · 1 A · 2 SOG · 24:35 on ice
    N. Zadorov
    #91 · D · BOS
    0 G · 1 A · 0 SOG · 21:05 on ice
    Ranked from the box score — points first · Backcheck
    What the model said beforehand

    Before the game

    Written Sat, Nov 15
    Open the pre-game read
    Written from the numbers

    The read

    Edited for clarity
    ◆ By the ModelJul 11, 4:02 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 model can't decide. It projects a Boston win by 2.5 to 2.7 goals but gives Montreal 53% win probability—the hockey equivalent of flipping a coin. There's no edge here.

    The Bruins are hotter by record, sitting 8-2-0 in their last ten. The Canadiens are underwater: -6 in goal differential over that same span. But dig deeper and the contradiction dissolves. Both teams' underlying metrics are nearly identical. Boston holds 47.0% expected goals share at 5v5; Montreal sits at 48.0%. Their Corsi percentages are identical at 49.0% apiece. This is not a gap between a dominant and a struggling team. It's a gap between two evenly matched ones, with Boston getting hot at exactly the right time.

    The complication: both teams are running lucky, and luck expires. Boston's PDO sits at 1.023—high enough to regress hard. Montreal's is 1.018. Both of these numbers tell you the same story: unsustainable results propping up records that don't quite match the underlying play. Add in the goaltending situation—J. Dobes and J. Korpisalo are both on the back-to-back—and you have two tired opponents leaning on performance that won't hold.

    Where this game tips depends on the edge players. Cole Caufield leads Montreal's scoring with 33 goals, but his expected production (0.97 xG/60) doesn't quite match that output. His 20.0% shooting rate explains the gap; regression is waiting. Oliver Kapanen's 0.83 xG/60 is cleaner, and his 4 hard-chance goals suggest a forward who converts opportunities rather than just generating them.

    Boston counters with Viktor Arvidsson, who generates at 1.04 xG/60—the most dangerous rate on the ice. He's cashed 18 goals with 13.0% shooting, which is sustainable talent, not luck. Tanner Jeannot runs just 0.75 xG/60 but has found 6 goals anyway, leaning on a 2-hard-chance advantage to overcome a modest 8.3% shooting rate.

    The defensive anchors matter too. Elias Lindholm is Boston's weak link; Mike Matheson is Montreal's. In a game this tight, how well each team's defense can shelter their goaltenders and limit the other's best shooters will decide it.

    This is as close to a true toss-up as you'll find. Boston has momentum. Montreal has more even 5v5 play. Both will regress. The team that avoids the biggest collapse wins.

    Data: MoneyPuck 5v5 models, NHL API

    What the model said beforehand

    The model's lean

    MTL 53%
    53%
    MTL
    Model favorite
    47%
    53%
    BOS50MTL

    MTL by 6 points of win probability — a modest lean. Projected score BOS 2.5–2.7 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
    BOS← edge
    edge →MTL
    47.0%48.0%
    49.0%49.0%
    2.392.41
    2.672.62
    2.222.24
    1.821.96
    1.0231.018

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

    Source · NHL stats API + our xG · 5v5
    Form · Last 10
    BOS
    8-2-0
    +5 GD · 1d rest
    MTL
    5-3-2
    -6 GD · 1d rest
    1.023
    BOS 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 Bruins' PDO is 1.023 — 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.
    • J. Korpisalo is on a back-to-back — watch for a backup start or a tired starter.
    • The Bruins are the hotter team by points pace (8-2-0 in their last 10).
    • The Canadiens 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
    BOS
    Expected in goal
    J. Korpisalo
    back-to-back.810 last start
    Backup Jeremy Swayman · +28.8 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.615 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
    BOS
    Viktor Arvidsson18G 24A
    1.04 xG/60 · 2 HD · 13.0% sh
    Tanner Jeannot6G 14A
    0.75 xG/60 · 2 HD · 8.3% 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