Motion-blurred skater in a Anaheim Ducks sweater
Breakdown · ANA at CGY

Ducks edge the Flames in overtime

The verdict · earned

The Ducks earned it — the game and the expected-goals battle both.

ANA 3 · CGY 2
◆ By the ModelJul 12, 9: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 Flames held more possession but lost to superior shot quality. They managed 43% of shot attempts, yet the Ducks' xG advantage (55%–45%, 3.77–3.03) proved decisive in a 3-2 overtime victory.

Both teams underperformed their expected goals—the Flames by 1.03 goals, the Ducks by 0.77. Both goaltenders exceeded their expected performance, with V. Husso adding 1.03 goals of value and D. Cooley adding 0.77. Yet the Ducks' superior shot quality proved the deciding factor.

The rush was where both teams found success. The Flames scored twice on 25 rush attempts; the Ducks scored twice on 23, suggesting both capitalized on speed-based opportunities.

The Ducks' special-teams play was sharp—2 power-play goals on 16 shots with 0.95 xG. Mikael Granlund sealed it in overtime at 04:59 with a slap shot from the high slot.

The breakdown in twelve frames

Swipe it

Every number is from this page
Final · OT · Mar 26
ANA
3
CGY
2

Ducks edge the Flames in overtime

Chances 3.8 – 3.0Did they deserve it? →
Did they deserve it?

The Ducks earned this one.

Expected goals · chance value
ANA
3.77
CGY
3.03
55% of the chances45%

The board read ANA 3, CGY 2. The chances read ANA 3.8, CGY 3.0.

Our xG model · NHL play-by-play · all situations
Luck check
ANA
−0.8
goals above expected
ANA3.77 expected · 3 scored
Expected
Scored
CGY3.03 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. P2 01:06CGYB. Coleman0–1
  2. P2 03:07ANAM. Granlund1–1
  3. P3 07:46CGYM. Gridin1–2
  4. P3 16:27ANAM. GranlundPP2–2
  5. OT 04:59ANAM. GranlundPP3–2
NHL play-by-play · chance value from our xG model
Where the shots came from
ANA
51 shots
3
Final
90 shots
CGY
39 shots
2
ANA attackCGY attack
ANA CGY Goal
51
shots · 3 in
39
shots · 2 in
Every unblocked shot · press play to replay it
Chances by danger
ANACGY
0 / 5
1.10 xG
High danger
0 / 3
0.82 xG
2 / 18
2.06 xG
Medium
2 / 15
1.69 xG
1 / 52
0.61 xG
Low
0 / 35
0.52 xG

The Flames went 0 for 3 from the slot.

Danger tiers by our xG model · high ≥ 20% chance
In the net
B+
V. Husso
+1.0
ANA · 23/25
B+
D. Cooley
+0.8
CGY · 30/33
The numbers, checked
BACKCHECK

Ducks edge the Flames in overtime

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–10no goals
    2ndshots 8–7
    1. 01:06CGYB. Coleman(J. Farabee, O. Maatta)0–1
    2. 03:07ANAM. Granlund1–1
    3rdshots 15–8
    1. 07:46CGYM. Gridin(O. Maatta, M. Coronato)1–2
    2. 16:27ANAM. Granlundpower play(L. Carlsson, J. Carlson)2–2
    OTshots 2–0
    1. 04:59ANAM. Granlundpower play(J. Carlson, C. Gauthier)3–2

    score reads ANA–CGY

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

    The numbers

    XGBoost xG · NHL play-by-play
    3.77
    ANA chances
    Goals their shots were worth
    −0.8
    Finishing
    Goals below what those chances were worth
    1.002
    ANA puck luck
    About 1.000 — a normal night for bounces
    58.6%
    Shot attempts
    Over half — they had the puck more
    Split by club

    Who controlled the game

    3.77Expected goals3.03
    ANA 55% of the chance quality
    33Shots on goal25
    5High-danger chances3
    75All attempts (Corsi)53
    Adjusted for score: ANA 59% · CGY 41%
    Faceoffs · CGY won54%off48%neu42%def
    Source · NHL play-by-play · XGBoost xG
    How the game was won

    The danger ladder

    shotsgoalsexpected
    High dangerslot & crease
    ANA0 / 5 · 1.10 xG
    CGY0 / 3 · 0.82 xG
    Medium dangermid-range
    ANA2 / 18 · 2.06 xG
    CGY2 / 15 · 1.69 xG
    Low dangerperimeter & point
    ANA1 / 52 · 0.61 xG
    CGY0 / 35 · 0.52 xG

    ANA went 0-for-5 from high danger on 1.10 expected goals — 1.1 left on the table.

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

    Finishing vs expected

    expectedactual
    ANA
    3 G · 3.77 xG · -0.8
    CGY
    2 G · 3.03 xG · -1.0
    012345

    ANA finished -0.8 against expected, CGY -1.0.

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

    Shot diet

    goalsshots
    ANA
    WRIST0/23
    SLAP1/12
    SNAP2/5
    TIP IN0/7
    BACKHAND0/3
    DEFLECTED0/1
    WRAP AROUND0/0
    OTHER0/24
    CGY
    WRIST1/25
    SLAP0/2
    SNAP0/5
    TIP IN1/2
    BACKHAND0/2
    DEFLECTED0/2
    WRAP AROUND0/1
    OTHER0/14
    ANA
    CGY
    Off the rush
    2 G on 23
    2.62 xG
    2 G on 25
    2.55 xG
    Off rebounds
    1 G on 3
    0.36 xG
    0 G on 2
    0.11 xG

    Wrist shots carried the volume: ANA went 0-for-23, CGY 1-for-25. ANA 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
    V. Husso
    ANA · 23/25 · .920
    +1.0
    saved above expected
    B+
    the night
    By dangerG/attxGsaved
    High danger0/30.8+0.8
    Medium2/151.7-0.3
    Low0/350.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

    D. Cooley
    CGY · 30/33 · .909
    +0.8
    saved above expected
    B+
    the night
    By dangerG/attxGsaved
    High danger0/51.1+1.1
    Medium2/182.1+0.1
    Low1/520.6-0.4

    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

    90 shots · press play to watch the game back

    Where the shots came from

    NHL play-by-play coordinates
    ANA
    51 shots
    3
    Final
    90 shots
    CGY
    39 shots
    2
    ANA attackCGY attack
    ANA CGY Goal

    Each club shoots toward its own end — ANA left, CGY 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
    M. Granlund
    #64 · C · ANA
    3 G · 0 A · 6 SOG · 19:31 on ice · +1
    J. Carlson
    #74 · D · ANA
    0 G · 2 A · 3 SOG · 26:55 on ice
    O. Maatta
    #3 · D · CGY
    0 G · 2 A · 0 SOG · 22:20 on ice · +2
    Ranked from the box score — points first · Backcheck
    What the model said beforehand

    Before the game

    Written Thu, Mar 26
    Open the pre-game read
    Written from the numbers

    The read

    Edited for clarity
    ◆ By the ModelJul 12, 9: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.7–2.6 game with the Ducks at 52% win probability. This is about as close to a pick'em as you'll find.

    The Ducks own the underlying play. They're generating 52.0% of expected goals at 5v5 to the Flames' 47.0%, and driving territorial advantage at 52.0% Corsi. But controlling shot volume doesn't always translate to controlling outcomes—both teams are running cold at the PDO line (Ducks 0.981, Flames 0.985), which means variance is due for a correction in both directions.

    The back-to-back complicates matters. D. Wolf and L. Dostal are both starting their second consecutive night. If either gets pulled for a backup, the game's balance shifts. Even if they stay in, the shorter recovery window usually shows by the third period.

    Beckett Sennecke is Anaheim's key scorer. He's earned 20 goals on 1.03 expected goals per 60 and 8 high-danger chances—his 13.5% shooting rate contains more luck than most, but he remains a consistent threat. Cutter Gauthier supports him at 0.99 xG/60 with 25 goals and 12.9% efficiency; his output is real even if it includes unsustainable variance.

    Calgary's counter is Blake Coleman, running 0.89 xG/60 with 16 goals and 2 high-danger chances. He's shot 11.4%, closer to sustainable, but still above his underlying play. Matt Coronato has 10 goals on 0.80 xG/60 at 6.6% shooting—the weakest conversion rate in this peer set—which indicates variance has worked against him.

    The defensive weak links are Mason McTavish for Anaheim and Matt Coronato for Calgary.

    Both teams are equivalent: marginally better, marginally luckier, both regressing toward the mean. The model recognizes it. So should you.

    What the model said beforehand

    The model's lean

    ANA 52%
    52%
    ANA
    Model favorite
    52%
    48%
    ANA50CGY

    ANA by 4 points of win probability — effectively a coin flip. Projected score ANA 2.7–2.6 CGY; 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
    ANA← edge
    edge →CGY
    52.0%47.0%
    52.0%49.0%
    2.802.36
    2.592.66
    2.091.76
    2.322.15
    0.9810.985

    ANA holds 5 of 6 process categories — and the luck row (0.981 vs 0.985) says CGY has been getting the bounces, which tends not to last.

    Source · NHL stats API + our xG · 5v5
    Form · Last 10
    ANA
    6-3-1
    +2 GD · 1d rest
    CGY
    6-4-0
    -4 GD · 1d rest
    0.981
    ANA PDO
    Luck gauge · drifts to 1.000
    0.985
    CGY PDO
    Luck gauge · drifts to 1.000
    What decides it

    Keys to the game

    Where the edges live
    • The Ducks own the underlying play — 52.0% 5v5 xG vs 47.0%.
    • The Ducks drive Corsi at 52.0% — expect territorial tilt.
    Regression watch
    • The Flames' PDO is 0.985 — running cold, due for positive regression.
    • The Ducks' PDO is 0.981 — running cold, due for positive regression.
    Things to watch
    • The Ducks own the underlying play — 52.0% 5v5 xG vs 47.0%.
    • The Ducks drive Corsi at 52.0% — expect territorial tilt.
    • D. Wolf is on a back-to-back — watch for a backup start or a tired starter.
    • L. Dostal is on a back-to-back — watch for a backup start or a tired starter.
    • The Flames' PDO is 0.985 — running cold, due for positive regression.
    Last game's lineup · confirmed at warm-up

    Lineups

    NHL box score
    ANA
    Expected in goal
    L. Dostal
    back-to-back.900 last start
    Backup Lukas Dostal · -2.9 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.

    CGY
    Expected in goal
    D. Wolf
    back-to-back.920 last start
    Backup Dustin Wolf · -1.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.

    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
    ANA
    Beckett Sennecke20G 19A
    1.03 xG/60 · 8 HD · 13.5% sh
    Cutter Gauthier25G 16A
    0.99 xG/60 · 2 HD · 12.9% sh
    CGY
    Blake Coleman16G 12A
    0.89 xG/60 · 2 HD · 11.4% sh
    Matt Coronato10G 16A
    0.80 xG/60 · 0 HD · 6.6% sh
    Keep going

    Where to next