Backcheck
Recap · VAN at CGY

Flames pull away from the Canucks

The Flames stole one. They lost the expected-goals battle 3.79–2.26 and won anyway.

By the ModelJul 12, 9:24 AMxG: xgboost-0.758Edited for clarity
Away
VAN
Vancouver Canucks
3
Home
CGY
Calgary Flames
7
FINAL
Process vs result

The underlying story

3.79Expected goals2.26
63% share for the better side
34Shot attempts (SOG)23
2High-danger chances3
61Corsi (all attempts)42
Score-adjusted: 66% / 34%
Source · NHL play-by-play · XGBoost xG

Calgary's 7-3 victory over Vancouver masks a striking reality: the Canucks controlled 63% of expected goals at 5v5. This was a heist.

The Flames held 40% of shot attempts (23–34 on goal), yet won by four goals. Expected goals finished 2.26–3.79 in Vancouver's favor, a 37–63 split. Calgary overperformed its xG by 4.74 goals.

Goaltending tells much of the story. D. Wolf (CGY) posted a 0.912 SV%, exceeding expected by 0.79 goals. Vancouver's crease cratered: K. Lankinen stopped just 0.750 SV%, 1.82 goals short of expected, and N. Tolopilo posted 0.636, another 2.92 goals underwater.

Calgary finished where it mattered. The Flames scored two low-danger goals—looks the opposing goalie typically saves. On rush chances, Calgary went 4-for-24; Vancouver went 2-for-33. Calgary's power play was dominant: 2 PPG on 6 PP shots. High-danger chances tilted Calgary at 3–2.

Adam Klapka's wrist shot from the slot (P3, 19:52) marked the turning point.

How the game was won

The danger ladder

shotsgoalsexpected
High dangerslot & crease
VAN0 / 2 · 0.44 xG
CGY3 / 3 · 0.65 xG
Medium dangermid-range
VAN3 / 21 · 2.58 xG
CGY2 / 9 · 1.07 xG
Low dangerperimeter & point
VAN0 / 38 · 0.77 xG
CGY2 / 30 · 0.54 xG

CGY went 3-for-3 from high danger on 0.65 expected goals — 2.4 above expected.

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

Finishing vs expected

expectedactual
VAN
3 G · 3.79 xG · -0.8
CGY
7 G · 2.26 xG · +4.7
012345678
Goalies · GSAx (goals saved above expected)
K. LankinenVAN
-1.8
N. TolopiloVAN
-2.9
D. WolfCGY
+0.8

VAN finished -0.8 against expected, CGY +4.7 — N. Tolopilo (VAN) allowed 2.9 more goals than expected.

Source · Backcheck xG model
What they shot — and what went in

Shot diet

goalsshots
VAN
WRIST0/27
TIP IN2/5
SNAP1/7
SLAP0/5
BACKHAND0/2
DEFLECTED0/2
WRAP AROUND0/1
POKE0/0
OTHER0/12
CGY
WRIST3/19
TIP IN2/7
SNAP0/0
SLAP0/0
BACKHAND1/3
DEFLECTED0/0
WRAP AROUND0/0
POKE1/1
OTHER0/12
VAN
CGY
Off the rush
2 G on 33 · 2.79 xG
4 G on 24 · 1.75 xG
Off rebounds
0 G on 4 · 0.61 xG
2 G on 2 · 0.41 xG

Wrist shots carried the volume: VAN went 0-for-27, CGY 3-for-19. CGY scored 4 of theirs off the rush.

Source · Backcheck xG model · NHL shot types
Three stars · computed, not voted
M. Coronato
#27 · R · CGY
1 G · 2 A · 1 SOG · 15:42 TOI · +2
M. Frost
#16 · C · CGY
1 G · 2 A · 1 SOG · 14:05 TOI · +2
O. Maatta
#3 · D · CGY
1 G · 1 A · 2 SOG · 20:55 TOI · +2
Ranked from the box score — points first · Backcheck
What the model flagged
  • CGY won despite being outplayed by xG (37%). Goaltending or finishing carried them.
  • K. Lankinen (VAN) gave up 1.8 goals more than expected — well below their workload.
  • CGY scored 2 goals from low-danger spots — the opposing goalie needs to have those.
  • CGY was lethal off the rush — 4 goals on 24 rush chances.
  • VAN was lethal off the rush — 2 goals on 33 rush chances.
  • VAN created 4 rebound opportunities (0 converted) — crashing the net effectively.
  • CGY outperformed their expected goals by 4.7 — elite finishing or lucky bounces.
  • CGY power play was dominant — 2 PPG on 6 PP shots (0.46 xG).
Before the game — the model's pre-game read
Preview · VAN at CGY · 10:00 PM ET

Canucks at Flames: a genuine coin flip

By the ModelJul 12, 9:23 AMEdited for clarity
Win probability

The model's lean

55%
CGY
Model favorite
45%
55%
VAN50CGY

CGY by 10 points of win probability — a modest lean. Projected score VAN 2.42.7 CGY; 18% chance it's tied after 60.

Source · Backcheck Poisson projection · season scoring rates
Season profile · edge from the spine

Tale of the tape

VAN← edge
edge →CGY
44.0%5v5 xG%47.0%
46.0%Corsi%49.0%
2.22xGF / 602.36
2.81xGA / 602.66
1.60Goals for / gm1.76
2.56Goals against / gm2.15
0.974PDO — luck, not skill0.985

CGY holds 6 of 6 process categories — and PDO (0.974 vs 0.985) says CGY has run hotter.

Source · MoneyPuck season tables · 5v5

The models project a VAN 2.4 - 2.7 CGY game with the Flames at 55% win probability. This is about as close to a pick'em as you'll find.

Calgary has won more recently—5-4-1 in their last 10—but points pace lies. Their -6 goal differential over the same span reveals they're winning despite playing worse. Vancouver fares worse, at -11. Both teams have a structural problem they haven't solved.

The season-long 5v5 metrics confirm Calgary's edge in generation. They run 47.0% xG% and 49.0% Corsi% to Vancouver's 44.0% xG% and 46.0% Corsi%. Yet both are running cold: CGY at 0.985 PDO and VAN at 0.974. When PDO is this low, conversion is lagging possession—both teams are candidates for upward regression.

Goaltending is the deciding variable. D. Cooley and K. Lankinen are both on back-to-backs, which raises the probability of a backup start or a tired starter. Whichever team manages fresher goaltending gains an edge.

Filip Chytil (3G 0A, 1.03 xG/60, 15.0% shooting) won't play—he's been out 54 days—so Vancouver's offensive load falls to Drew O'Connor. O'Connor carries the load: 13G 11A at 11.8% shooting, generating 0.85 xG/60. Blake Coleman anchors Calgary's attack with 16G 12A at 11.4% shooting and a 0.89 xG/60 rate. Matt Coronato (10G 16A) operates at 0.80 xG/60, though his 6.6% shooting rate flags him as likely to regress.

Victor Mancini is Vancouver's defensive liability. Calgary's depth is more forgiving—if Coronato stumbles, the Flames have cover.

This is a tight matchup between two flawed teams. The models' coin flip is the right call.

Computed danger · scouting

Players to watch

VAN
Filip Chytil3G 0A
1.03 xG/60 · 1 HD · 15.0% sh
Drew O'Connor13G 11A
0.85 xG/60 · 3 HD · 11.8% 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
Source · MoneyPuck skaters