Anaheim DucksANA 4–1 Final Utah MammothUTA

Friday, March 20, 2026

Final 1st2nd3rd T SOG
Anaheim DucksANA 112 4 24
Utah MammothUTA 100 1 30
Playoff odds, % Change
ANA +2.2
UTA -2.1

How the result moved each team's playoff odds, calculated Mar 20, 2026 9:59 PM EDT.

Highlights

Scoring

1st Period
1:48 UTA Dylan Guenther (34) Sean Durzi (18), JJ Peterka (20) · slap xG 0.11 0–1 ▶
13:37 ANA Ryan Poehling (9)SH Alex Killorn (14), Pavel Mintyukov (12) · wrist xG 0.18 1–1 ▶
2nd Period
9:09 ANA Alex Killorn (11) Beckett Sennecke (32) · snap xG 0.04 2–1 ▶
3rd Period
18:24 ANA Cutter Gauthier (36)EN Jeffrey Viel (5), John Carlson (37) · snap xG 0.61 3–1 ▶
19:05 ANA Mikael Granlund (13)EN Ryan Poehling (22), Alex Killorn (15) · wrist xG 0.86 4–1 ▶

Score away–home after each goal; season totals in parentheses.

Shot quality

Expected goals (xG) rate every unblocked shot by how often shots like it go in, from where it was taken, the shot type, the strength and what happened just before it. How it works

ANA 33%Deserve to win67% UTA
ANAUTA
4.10Expected goals3.38
4Goals (no shootout)1
1.20Expected goals, 5 on 52.28
50Shot attempts74
38Unblocked attempts46
24Shots on goal30

Game notes

What stood out as the game went on, from the play-by-play and the shifts. Time on the bench is counted in 5-on-5 play outside the penalty box; the note says the player sat, not why. Goals saved are against the shots' expected goals (xG).

3rd Period
15:09 ANA Goalie Goalie · Dostal +2.2 goals saved
1 goal on 3.21 xG, 30 shots on goal
16:30 UTA xG swing xG swing · Out-chanced ANA 1.05–0.01
In xG over 10 minutes, 6:30 to 16:30 of the 3rd; neither team scored
17:56 UTA Pulled goalie Pulled goalie · Pulled Vanecek, down 2–1
With 2:04 left; ANA scored at 18:24 of the 3rd (3–1)
18:39 UTA Pulled goalie Pulled goalie · Pulled Vanecek, down 3–1
With 1:21 left; ANA scored at 19:05 of the 3rd (4–1)

Shot map

ANA shoots ←Bigger circle: higher xG; filled: goal→ UTA shoots
Barrett Hayton: snap, 35 ft, xG 0.02 (P1 0:30) Michael Carcone: backhand, 15 ft, xG 0.02 (P1 2:43) Nick Schmaltz: slap, 38 ft, xG 0.08 (P1 2:48) Michael Carcone: snap, 30 ft, xG 0.05 (P1 4:24) MacKenzie Weegar: slap, 64 ft, xG 0.02 (P1 5:29) Nick Schmaltz: wrist, 16 ft, xG 0.15 (P1 6:48) Mikhail Sergachev: snap, 56 ft, xG 0.04 (P1 7:45) Michael Carcone: slap, 33 ft, xG 0.07 (P1 8:01) Michael Carcone: slap, 38 ft, xG 0.05 (P1 8:38) Nick Schmaltz: snap, 34 ft, xG 0.11 (P1 10:11) Mikael Granlund: snap, 27 ft, xG 0.10 (P1 10:40) Alex Killorn: wrist, 64 ft, xG 0.01 (P1 11:48) Mikhail Sergachev: snap, 44 ft, xG 0.05 (P1 13:26) Nick Schmaltz: slap, 17 ft, xG 0.13 (P1 14:30) MacKenzie Weegar: slap, 47 ft, xG 0.03 (P1 15:23) Nate Schmidt: snap, 35 ft, xG 0.05 (P1 15:32) JJ Peterka: snap, 23 ft, xG 0.08 (P1 15:35) John Marino: snap, 38 ft, xG 0.03 (P1 15:40) JJ Peterka: wrist, 7 ft, xG 0.17 (P1 15:59) Mikael Granlund: wrist, 53 ft, xG 0.01 (P1 17:50) Olen Zellweger: slap, 42 ft, xG 0.02 (P1 17:57) Cutter Gauthier: bat, 21 ft, xG 0.05 (P1 17:59) John Carlson: snap, 67 ft, xG 0.00 (P1 18:58) Mason McTavish: snap, 61 ft, xG 0.04 (P1 19:57) Leo Carlsson: tip-in, 25 ft, xG 0.07 (P2 0:20) Chris Kreider: tip-in, 11 ft, xG 0.09 (P2 1:09) Chris Kreider: tip-in, 8 ft, xG 0.12 (P2 1:24) Beckett Sennecke: tip-in, 22 ft, xG 0.05 (P2 1:59) Nick Schmaltz: snap, 22 ft, xG 0.02 (P2 2:39) Ian Cole: wrist, 6 ft, xG 0.03 (P2 2:40) Mikael Granlund: tip-in, 13 ft, xG 0.06 (P2 5:48) Beckett Sennecke: backhand, 8 ft, xG 0.23 (P2 5:50) Barrett Hayton: tip-in, 11 ft, xG 0.06 (P2 6:21) Cutter Gauthier: wrist, 27 ft, xG 0.09 (P2 8:14) Mikhail Sergachev: backhand, 8 ft, xG 0.21 (P2 8:48) Mason McTavish: snap, 25 ft, xG 0.17 (P2 9:08) Pavel Mintyukov: backhand, 21 ft, xG 0.04 (P2 9:18) Alex Killorn: snap, 32 ft, xG 0.05 (P2 10:50) Dylan Guenther: snap, 41 ft, xG 0.03 (P2 11:52) Nate Schmidt: snap, 35 ft, xG 0.06 (P2 13:04) Nate Schmidt: wrist, 18 ft, xG 0.04 (P2 13:05) MacKenzie Weegar: snap, 31 ft, xG 0.05 (P2 14:19) Kevin Stenlund: deflected, 8 ft, xG 0.12 (P2 14:34) Ian Moore: slap, 60 ft, xG 0.01 (P2 15:25) Chris Kreider: tip-in, 10 ft, xG 0.07 (P2 16:40) Troy Terry: slap, 34 ft, xG 0.10 (P2 16:46) Dylan Guenther: tip-in, 8 ft, xG 0.10 (P2 18:41) John Marino: snap, 61 ft, xG 0.02 (P2 18:58) Nick Schmaltz: wrist, 22 ft, xG 0.11 (P2 19:36) Leo Carlsson: snap, 42 ft, xG 0.03 (P3 1:12) Chris Kreider: wrap-around, 9 ft, xG 0.06 (P3 1:20) Nate Schmidt: snap, 41 ft, xG 0.08 (P3 2:15) Beckett Sennecke: wrist, 30 ft, xG 0.08 (P3 2:31) Jackson LaCombe: snap, 61 ft, xG 0.00 (P3 2:36) Mason McTavish: snap, 32 ft, xG 0.05 (P3 2:46) Jacob Trouba: slap, 59 ft, xG 0.03 (P3 2:59) Lawson Crouse: backhand, 12 ft, xG 0.12 (P3 3:28) Ian Cole: slap, 50 ft, xG 0.01 (P3 4:05) Troy Terry: snap, 37 ft, xG 0.08 (P3 4:13) Troy Terry: snap, 34 ft, xG 0.10 (P3 5:12) Clayton Keller: snap, 55 ft, xG 0.03 (P3 7:26) Lawson Crouse: wrist, 7 ft, xG 0.04 (P3 7:27) Lawson Crouse: snap, 17 ft, xG 0.17 (P3 7:59) Dylan Guenther: wrist, 51 ft, xG 0.01 (P3 8:23) Dylan Guenther: wrist, 21 ft, xG 0.05 (P3 8:29) Dylan Guenther: tip-in, 35 ft, xG 0.05 (P3 8:40) Lawson Crouse: tip-in, 9 ft, xG 0.08 (P3 9:07) Logan Cooley: wrist, 16 ft, xG 0.06 (P3 9:28) Lawson Crouse: snap, 29 ft, xG 0.10 (P3 9:32) Dylan Guenther: snap, 32 ft, xG 0.06 (P3 10:38) Alex Killorn: wrist, 55 ft, xG 0.01 (P3 12:01) Barrett Hayton: wrist, 5 ft, xG 0.24 (P3 15:09) Clayton Keller: slap, 39 ft, xG 0.08 (P3 16:03) Michael Carcone: slap, 37 ft, xG 0.09 (P3 16:30) John Carlson: snap, 179 ft, xG 0.00 (P3 16:39) Cutter Gauthier: snap, 167 ft, xG 0.29 (P3 18:00) Beckett Sennecke: tip-in, 12 ft, xG 0.11 (P3 19:16) Mason McTavish: snap, 41 ft, xG 0.07 (P3 19:24) Beckett Sennecke: tip-in, 7 ft, xG 0.10 (P3 19:52) Dylan Guenther: GOAL, slap, 31 ft, xG 0.11 (P1 1:48) Ryan Poehling: GOAL, wrist, 12 ft, xG 0.18 (P1 13:37) Alex Killorn: GOAL, snap, 25 ft, xG 0.04 (P2 9:09) Cutter Gauthier: GOAL, snap, 51 ft, xG 0.61 (P3 18:24) Mikael Granlund: GOAL, wrist, 44 ft, xG 0.86 (P3 19:05)
About these numbers

xG comes from hockeystats.io's own model, a gradient-boosted tree model trained on every unblocked shot from the 2021-22 to 2025-26 regular seasons using the NHL's public play-by-play. Each shot's value is the share of similar shots that became goals. A team's xG is the sum over its shots; "deserve to win" asks how often the team would outscore its opponent if every shot went in at exactly that rate. Blocked shots count as attempts but have no xG (the NHL records where they were blocked, not where they were taken), so the map leaves them out.

Box score

Anaheim Ducks

Skater GAP+/− AttxG HitBlkTOI
Forwards
25 Ryan Poehling 112 +2 20.18 5419:04
22 Chris Kreider 000 0 40.34 2018:01
91 Leo Carlsson 000 0 20.10 0117:44
19 Troy Terry 000 0 30.28 0017:36
61 Cutter Gauthier 101 +1 51.04 0016:56
17 Alex Killorn 123 +2 40.11 1016:39
64 Mikael Granlund 101 +2 41.03 0016:35
45 Beckett Sennecke 011 0 50.57 2115:09
25 Jeffrey Viel 011 +1 00.00 1215:00
83 Mason McTavish 000 0 50.33 1010:22
42 Tim Washe 000 +1 00.00 3310:20
10 Jansen Harkins 000 0 10.00 1208:18
Defense
74 John Carlson 011 +1 50.00 1324:19
98 Pavel Mintyukov 011 +2 20.04 1222:51
65 Jacob Trouba 000 +2 20.03 1620:33
2 Jackson LaCombe 000 +2 30.00 0319:54
8 Olen Zellweger 000 -1 10.02 1013:10
3 Ian Moore 000 -1 20.01 0211:29
Goalie SAGA SVSV% xGA GSAx
Lukas Dostal 30129 .967 3.38 +2.38

Utah Mammoth

Skater GAP+/− AttxG HitBlkTOI
Forwards
9 Clayton Keller 000 -2 50.11 0020:31
67 Lawson Crouse 000 -2 70.52 4320:29
8 Nick Schmaltz 000 -2 80.60 0020:22
11 Dylan Guenther 101 -1 100.41 0017:17
92 Logan Cooley 000 -1 10.06 2116:56
27 Barrett Hayton 000 -2 30.31 0014:44
82 Kevin Stenlund 000 0 20.12 0013:15
10 JJ Peterka 011 0 40.25 0013:06
53 Michael Carcone 000 -1 70.29 4012:44
22 Jack McBain 000 -1 00.00 3110:39
14 Alexander Kerfoot 000 0 00.00 1010:32
56 Kailer Yamamoto 000 0 00.00 0107:17
Defense
98 Mikhail Sergachev 000 -3 70.30 0123:15
6 John Marino 000 -1 30.05 0020:28
52 MacKenzie Weegar 000 -1 50.10 1220:12
88 Nate Schmidt 000 0 90.23 0018:13
28 Ian Cole 000 0 20.04 1216:24
5 Sean Durzi 011 0 10.00 2115:42
Goalie SAGA SVSV% xGA GSAx
Vitek Vanecek 22220 .909 2.33 +0.33

Skaters by time on ice. Goalie lines count shots with the goalie in net, from the NHL play-by-play.

Player ratings

What each player added to the result, in goals, from most to least. Hover a number for what it's made of.

Anaheim Ducks

Player Rating Points Shots On ice Pen FO Other GSAx TOI
1 Lukas Dostal G +2.38 0.00 — — 0.00 — — +2.38 60:00
17 Alex Killorn L +2.24 +2.00 +0.07 +0.20 0.00 -0.01 -0.02 — 16:39
64 Mikael Granlund C +1.74 +0.75 +0.67 +0.30 0.00 +0.02 0.00 — 16:35
25 Ryan Poehling C +1.13 +1.45 +0.12 -0.90 +0.15 +0.11 +0.20 — 19:04
61 Cutter Gauthier L +1.07 +0.75 +0.68 -0.34 0.00 0.00 -0.02 — 16:56
45 Beckett Sennecke R +1.05 +0.70 +0.37 -0.01 0.00 0.00 -0.01 — 15:09
98 Pavel Mintyukov D +0.35 +0.55 +0.03 -0.32 0.00 0.00 +0.10 — 22:51
74 John Carlson D +0.35 +0.55 0.00 -0.34 0.00 0.00 +0.13 — 24:19
23 Mason McTavish C +0.23 0.00 +0.21 +0.05 0.00 -0.01 -0.02 — 10:22
42 Tim Washe C +0.19 0.00 0.00 -0.16 +0.15 +0.05 +0.15 — 10:20
28 Jeffrey Viel L 0.00 +0.70 0.00 -0.95 +0.15 0.00 +0.10 — 15:00
3 Ian Moore D -0.09 0.00 +0.01 -0.07 -0.15 0.00 +0.12 — 11:29
24 Jansen Harkins C -0.11 0.00 0.00 -0.20 0.00 +0.01 +0.08 — 8:18
19 Troy Terry R -0.12 0.00 +0.18 -0.32 0.00 0.00 +0.02 — 17:36
91 Leo Carlsson C -0.13 0.00 +0.06 -0.38 +0.15 -0.01 +0.05 — 17:44
51 Olen Zellweger D -0.19 0.00 +0.01 -0.33 +0.15 0.00 -0.02 — 13:10
20 Chris Kreider L -0.24 0.00 +0.22 -0.47 0.00 +0.01 0.00 — 18:01
2 Jackson LaCombe D -0.38 0.00 0.00 -0.53 0.00 0.00 +0.15 — 19:54
65 Jacob Trouba D -1.08 0.00 +0.02 -1.16 -0.15 0.00 +0.21 — 20:33

Utah Mammoth

Player Rating Points Shots On ice Pen FO Other GSAx TOI
77 JJ Peterka R +1.88 +0.55 +0.16 +1.01 +0.15 0.00 0.00 — 13:06
11 Dylan Guenther R +1.85 +0.75 +0.26 +0.83 0.00 0.00 0.00 — 17:17
88 Nate Schmidt D +1.35 0.00 +0.15 +1.30 -0.08 0.00 -0.02 — 18:13
50 Sean Durzi D +1.02 +0.70 0.00 +0.27 0.00 0.00 +0.05 — 15:42
8 Nick Schmaltz C +1.00 0.00 +0.39 +0.65 0.00 -0.04 0.00 — 20:22
6 John Marino D +0.97 0.00 +0.03 +1.12 -0.15 0.00 -0.04 — 20:28
67 Lawson Crouse L +0.83 0.00 +0.34 +0.34 0.00 -0.01 +0.17 — 20:29
9 Clayton Keller R +0.49 0.00 +0.07 +0.47 0.00 -0.01 -0.04 — 20:31
92 Logan Cooley C +0.38 0.00 +0.04 +0.44 0.00 -0.05 -0.05 — 16:56
41 Vitek Vanecek G +0.33 0.00 — — 0.00 — — +0.33 59:06
56 Kailer Yamamoto R +0.23 0.00 0.00 +0.18 0.00 0.00 +0.05 — 7:17
82 Kevin Stenlund C +0.16 0.00 +0.08 +0.11 0.00 -0.03 0.00 — 13:15
15 Alexander Kerfoot C +0.15 0.00 0.00 +0.18 0.00 -0.01 -0.02 — 10:32
53 Michael Carcone L +0.12 0.00 +0.19 -0.07 0.00 0.00 0.00 — 12:44
52 MacKenzie Weegar D +0.05 0.00 +0.06 -0.07 0.00 0.00 +0.06 — 20:12
27 Barrett Hayton C +0.04 0.00 +0.20 -0.07 -0.08 -0.02 0.00 — 14:44
22 Jack McBain C -0.08 0.00 0.00 -0.13 0.00 0.00 +0.05 — 10:39
28 Ian Cole D -0.27 0.00 +0.02 -0.21 -0.15 0.00 +0.06 — 16:24
98 Mikhail Sergachev D -0.35 0.00 +0.19 -0.42 -0.15 0.00 +0.03 — 23:15

An expected-goals take on Dom Luszczyszyn's Game Score: goals and assists, the quality of a player's own shots, shot quality for and against while they were on the ice at 5v5, penalties, faceoffs and puck plays, all in goals; goalies by goals saved above expected. From the NHL play-by-play and shift charts.