Rush defense leaked all night
Gave up 21 rush shots worth 1.79 xG (3 goals) — transition gaps were there every period.
Tighten neutral-zone structure and keep D gaps closed on entries.

Anaheim beat Calgary 4-2, and the Ducks had the better of the play to go with it. Nikita Nesterenko's poke from the doorstep late in the third settled a game that Calgary kept fighting back into.
Anaheim controlled 57% of the expected goals at five-on-five. Expected goals weigh the quality of chances, not just their number, so this says the Ducks were getting the better looks, not simply more of them.
Calgary's problem was finishing. The Flames scored 1.23 goals fewer than their chances were worth. Call it variance: the chances were there, and the finishing was not.
V. Husso was the difference in net. He stopped 27 of 29 shots, a save percentage of .931, and he kept out more than the shots he faced should have allowed. D. Wolf, in Calgary's net, stopped 24 of 28 shots, a save percentage of .857.
Anaheim opened the scoring on the power play, when J. LaCombe beat D. Wolf with a snap shot from ten feet off the rush. Calgary tied it at 15:03 when M. Frost beat V. Husso with a wrist shot from seven feet. F. Vatrano put Anaheim back ahead with a deflection from five feet at 19:15. A. Suniev evened it again at 17:54 of the second with a wrist shot from 16 feet. R. Poehling scored shorthanded at 05:35 of the third, on a snap shot from 29 feet. N. Nesterenko's poke from six feet at 17:03 of the third made it 4-2.
Off the rush, Anaheim scored three goals on 21 chances. Calgary took 27 rush chances and scored two.
Three Stars
The numbers can't say whether the finishing was luck or skill, why the benches were run the way they were, or who was hurt. That is the beat's story, and it is worth reading.
What the numbers can't tell you. Whether the finishing was luck or skill, why the benches were run the way they were, who was hurt, and anything said in the room. That is the beat's story, and it is worth reading.
Ducks hold off the Flames
The Ducks earned this one.
The board read ANA 4, CGY 2. The chances read ANA 4.2, CGY 3.2.
Both sides finished close to what their chances were worth. This one was earned on the ice.
R. Poehling makes it 3–2.
The Flames went 0 for 3 from the slot.
Ducks hold off the Flames
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 breakdownSnap shot from 10 feet, a 20% chance (off the rush), past D. Wolf. 10s after an ANA faceoff win by M. Granlund. Win probability moved 16 points.On the ice: A. Killorn, F. Vatrano, R. Poehling, J. LaCombe, N. Warren · against R. Strome, K. Bahl, M. Pospisil, S. Nemec, M. Gridin
Wrist shot from 7 feet, a 14% chance (off the rush), past V. Husso. Win probability moved 17 points.On the ice: R. Strome, J. Middleton, M. Pospisil, Z. Parekh, M. Gridin · against A. Killorn, F. Vatrano, R. Poehling, P. Mintyukov, T. Mitchell
Deflection from 5 feet, a 16% chance (off the rush), past D. Wolf. Win probability moved 19 points.On the ice: M. Granlund, N. Nesterenko, P. Mintyukov, N. Warren, L. Carlsson · against M. Backlund, Z. Whitecloud, J. Farabee, Y. Sharangovich, Y. Kuznetsov
Wrist shot from 16 feet, a 4% chance, a shot that rarely goes in (off the rush), past V. Husso. Win probability moved 25 points.On the ice: M. Backlund, J. Farabee, K. Bahl, Y. Sharangovich, S. Nemec · against M. Granlund, T. Luneau, L. Carlsson, T. Mitchell, B. Sennecke
Snap shot from 29 feet, a 32% chance (off the rush), past D. Wolf. Win probability moved 29 points.
Poke from 6 feet, a 20% chance, past D. Wolf. 4s after an ANA shot by A. Killorn. Win probability moved 9 points.
score reads ANA–CGY
CGY went 1-for-22 from medium danger on 2.24 expected goals — 1.2 left on the table.
ANA finished -0.2 against expected, CGY -1.2.
Wrist shots carried the volume: ANA went 0-for-21, CGY 2-for-26. ANA scored 3 of theirs off the rush.
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 →
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
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
Best skater on the ice by our rating: R. Poehling (ANA), 11:49 of ice, 1-1, 35% of the expected goals while he was out.
| Skater | TOI | G-A | SOG | ixG | xG% | PD/PT | Impact | /60 | Grade |
|---|---|---|---|---|---|---|---|---|---|
| R. PoehlingC | 11:49 | 1-1 | 2 | 0.40 | 35 | 1/0 | 1.77 | 8.97 | A+ |
| M. GranlundC | 19:23 | 0-2 | 4 | 0.36 | 60 | 0/0 | 1.62 | 5.01 | A+ |
| N. NesterenkoC | 14:04 | 1-0 | 3 | 0.66 | 68 | 0/0 | 1.30 | 5.56 | A+ |
| F. VatranoR | 11:48 | 1-0 | 1 | 0.66 | 29 | 0/0 | 0.87 | 4.41 | A |
| L. CarlssonC | 20:18 | 0-1 | 2 | 0.09 | 55 | 0/0 | 0.97 | 2.87 | A |
| A. KillornL | 18:37 | 0-1 | 4 | 0.17 | 35 | 0/0 | 0.88 | 2.83 | A |
| N. WarrenD | 21:14 | 0-1 | 2 | 0.01 | 48 | 0/0 | 0.88 | 2.48 | B |
| J. LaCombeD | 17:01 | 1-0 | 1 | 0.20 | 36 | 0/1 | 0.70 | 2.46 | B |
| P. MintyukovD | 19:49 | 0-1 | 2 | 0.07 | 39 | 0/0 | 0.69 | 2.08 | C |
| J. MalottL | 11:37 | 0-0 | 0 | 0.82 | 61 | 0/0 | 0.38 | 1.97 | C |
| T. HindsD | 19:21 | 0-0 | 1 | 0.01 | 62 | 0/0 | 0.42 | 1.29 | C |
| T. LuneauD | 23:42 | 0-0 | 0 | 0.05 | 53 | 1/0 | 0.26 | 0.65 | D |
| C. GauthierL | 2:18 | 0-0 | 0 | 0.00 | 100 | 0/0 | 0.01 | — | D |
| B. SenneckeR | 20:37 | 0-0 | 2 | 0.25 | 51 | 0/1 | 0.10 | 0.28 | D |
| T. WasheC | 16:40 | 0-0 | 2 | 0.29 | 37 | 0/1 | 0.01 | 0.02 | F |
| S. ColangeloR | 14:19 | 0-0 | 1 | 0.04 | 37 | 0/0 | -0.05 | -0.23 | F |
| T. MitchellD | 17:32 | 0-0 | 1 | 0.11 | 14 | 0/0 | -0.12 | -0.40 | F |
| J. CaulfieldR | 13:51 | 0-0 | 0 | 0.02 | 25 | 0/0 | -0.33 | -1.41 | F |
| Skater | TOI | G-A | SOG | ixG | xG% | PD/PT | Impact | /60 | Grade |
|---|---|---|---|---|---|---|---|---|---|
| M. CoronatoR | 19:47 | 0-2 | 1 | 0.01 | 19 | 0/0 | 1.25 | 3.78 | A |
| A. SunievL | 15:49 | 1-0 | 2 | 0.51 | 51 | 0/0 | 1.11 | 4.21 | A |
| K. BahlD | 21:26 | 0-0 | 4 | 0.03 | 70 | 1/0 | 0.82 | 2.31 | B |
| S. NemecD | 23:37 | 0-1 | 1 | 0.04 | 58 | 0/0 | 0.84 | 2.14 | B |
| M. PospisilC | 11:02 | 0-0 | 2 | 0.25 | 69 | 0/0 | 0.66 | 3.56 | B |
| R. StromeC | 13:39 | 0-0 | 3 | 0.35 | 70 | 0/0 | 0.66 | 2.90 | B |
| J. FarabeeL | 21:10 | 0-0 | 5 | 0.55 | 49 | 1/0 | 0.72 | 2.06 | B |
| J. CastagnaC | 9:51 | 0-0 | 1 | 0.18 | 88 | 1/1 | 0.43 | 2.62 | C |
| M. FrostC | 16:58 | 1-0 | 1 | 0.18 | 1 | 0/0 | 0.49 | 1.75 | C |
| M. GridinR | 14:54 | 0-0 | 3 | 0.30 | 52 | 0/0 | 0.39 | 1.57 | C |
| M. TsyplakovR | 11:28 | 0-0 | 1 | 0.27 | 82 | 0/0 | 0.31 | 1.63 | C |
| Y. SharangovichC | 22:11 | 0-0 | 2 | 0.33 | 55 | 0/0 | 0.30 | 0.82 | C |
| Z. WhitecloudD | 19:01 | 0-0 | 0 | 0.00 | 68 | 0/0 | 0.27 | 0.84 | D |
| A. KlapkaR | 11:35 | 0-0 | 0 | 0.17 | 82 | 0/0 | 0.22 | 1.15 | D |
| M. BacklundC | 19:24 | 0-0 | 1 | 0.00 | 54 | 0/0 | 0.21 | 0.65 | D |
| Y. KuznetsovD | 18:19 | 0-0 | 1 | 0.01 | 52 | 0/0 | 0.16 | 0.52 | D |
| J. MiddletonD | 12:40 | 0-0 | 0 | 0.00 | 50 | 0/0 | 0.10 | 0.45 | D |
| Z. ParekhD | 17:48 | 0-0 | 1 | 0.04 | 48 | 0/1 | -0.10 | -0.33 | F |
xG% = share of expected goals while on the ice · PD/PT = penalties drawn / taken · “in N min” = a per-60 rate far above the raw total. Impact = 0.75 G + 0.7 A1 + 0.55 A2 + 0.075 SOG + 0.05 BLK + 0.15 penalties drawn − 0.15 taken + 0.01 faceoff wins − 0.01 losses + 0.3 individual xG + 0.5 on-ice xG for − 0.5 on-ice xG against. Rating = 65% impact + 35% impact per 60, as a percentile among the skaters in this game.
Scratched, ANA: N. Jensen, A. Greer, N. Klepov. Scratched, CGY: J. Hanley, B. Othmann, S. Honzek. Referees Wes McCauley and Jake Brenk; linesmen Kiel Murchison and Ryan Daisy.
ANA Created 4.23 xG against a ~2.70 league-average game; 8 high-danger shots (2.61 xG) and 21 rush shots (1.79 xG).
CGY Created 3.23 xG against a ~2.70 league-average game; 3 high-danger shots (0.61 xG) and 27 rush shots (2.17 xG).
ANA Allowed 3.23 xG against a ~2.70 league-average game; conceded 3 high-danger shots (0.61 xG) and 27 rush shots (2.17 xG).
CGY Allowed 4.23 xG against a ~2.70 league-average game; conceded 8 high-danger shots (2.61 xG) and 21 rush shots (1.79 xG).
ANA Rush shots 21–27, rush xG 1.79–2.17 (rush-based; public data has no zone entries).
CGY Rush shots 27–21, rush xG 2.17–1.79 (rush-based; public data has no zone entries).
ANA 1-for-2 on the power play (50%; league ≈21%) with 0.20 PP xG.
CGY 0-for-3 on the power play (0%; league ≈21%) with 0.24 PP xG.
ANA +1.23 goals saved above expected on 29 shots against.
CGY +0.23 goals saved above expected on 28 shots against.
ANA Took 3 penalties for 6 PIM vs 2 for 4 on the other side.
CGY Took 2 penalties for 4 PIM vs 3 for 6 on the other side.
Grades bounces, not skill — C is neutral
ANA Finishing -0.23 goals vs xG plus +1.23 GSAx of save luck = +1.00 total. This grades luck, not skill — C is neutral, A is very lucky.
CGY Finishing -1.23 goals vs xG plus +0.23 GSAx of save luck = -1.00 total. This grades luck, not skill — C is neutral, A is very lucky.
Gave up 21 rush shots worth 1.79 xG (3 goals) — transition gaps were there every period.
Tighten neutral-zone structure and keep D gaps closed on entries.
Gave up 27 rush shots worth 2.17 xG (2 goals) — transition gaps were there every period.
Tighten neutral-zone structure and keep D gaps closed on entries.
3 goals on 21 rush shots worth 1.79 xG.
2 goals on 27 rush shots worth 2.17 xG.
3 goals on 8 high-danger shots (38% conversion on 2.61 xG).
D. Wolf stopped only 50% of 6 high-danger shots (3 goals against from the inner slot).
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.