| Final | 1st | 2nd | 3rd | T | SOG |
|---|---|---|---|---|---|
| 3 | 2 | 1 | 6 | 29 | |
| 2 | 0 | 0 | 2 | 27 |
| 1st Period | |||
|---|---|---|---|
| 1:51 | Ryan Poehling (11) Mason McTavish (21), Olen Zellweger (15) · slap xG 0.14 | 0–1 ▶ | |
| 5:24 | Robert Thomas (18) Philip Broberg (24), Colton Parayko (14) · snap xG 0.23 | 1–1 ▶ | |
| 11:18 | Dylan Holloway (18)PP Jake Neighbours (17), Robert Thomas (34) · snap xG 0.09 | 2–1 ▶ | |
| 16:01 | Jeffrey Viel (3) Ryan Poehling (23), Drew Helleson (13) · wrist xG 0.38 | 2–2 ▶ | |
| 18:44 | Jonatan Berggren (8) Pius Suter (14) · snap xG 0.16 | 3–2 ▶ | |
| 2nd Period | |||
| 3:08 | Pius Suter (13) Tyler Tucker (11), Jake Neighbours (18) · wrist xG 0.25 | 4–2 ▶ | |
| 16:50 | Colton Parayko (2) Dalibor Dvorsky (8), Jordan Kyrou (24) · snap xG 0.06 | 5–2 ▶ | |
| 3rd Period | |||
| 1:22 | Dylan Holloway (19)PP Robert Thomas (35), Philip Broberg (25) · snap xG 0.16 | 6–2 ▶ | |
Score away–home after each goal; season totals in parentheses.
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
| STL | ANA | |
|---|---|---|
| 3.69 | Expected goals | 3.59 |
| 6 | Goals (no shootout) | 2 |
| 3.07 | Expected goals, 5 on 5 | 2.54 |
| 51 | Shot attempts | 61 |
| 41 | Unblocked attempts | 47 |
| 29 | Shots on goal | 27 |
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).
| 1st Period | |||
|---|---|---|---|
| 11:20 | STL | xG swing | xG swing · Out-chanced ANA 1.43–0.15
In xG over 10 minutes, 3:40 to 13:40 of the 1st; goals 2–0 |
| 2nd Period | |||
| 16:50 | ANA | Goalie | Goalie · Dostal −2.5 goals saved
5 goals on 2.46 xG, 20 shots on goal |
| 20:00 | ANA | No shift | No shift · Moore, 10:19 on the bench
No shift from 3:08 of the 2nd to 1:22 of the 3rd; 9 shifts (4:28) before that |
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.
| Skater | G | A | P | +/− | Att | xG | Hit | Blk | TOI | |
|---|---|---|---|---|---|---|---|---|---|---|
| Forwards | ||||||||||
| 81 | Dylan Holloway | 2 | 0 | 2 | +1 | 6 | 0.66 | 2 | 2 | 21:07 |
| 21 | Jimmy Snuggerud | 0 | 0 | 0 | +1 | 5 | 0.11 | 0 | 0 | 19:32 |
| 18 | Robert Thomas | 1 | 2 | 3 | +1 | 1 | 0.23 | 0 | 0 | 18:20 |
| 63 | Jake Neighbours | 0 | 2 | 2 | +2 | 2 | 0.07 | 0 | 1 | 15:59 |
| 22 | Pius Suter | 1 | 1 | 2 | +2 | 3 | 0.28 | 1 | 0 | 15:41 |
| 15 | Dalibor Dvorsky | 0 | 1 | 1 | +1 | 3 | 0.42 | 0 | 1 | 14:51 |
| 92 | Jonathan Drouin | 0 | 0 | 0 | +1 | 3 | 0.39 | 0 | 2 | 14:14 |
| 29 | Jonatan Berggren | 1 | 0 | 1 | +2 | 3 | 0.30 | 0 | 0 | 13:52 |
| 25 | Jordan Kyrou | 0 | 1 | 1 | +1 | 7 | 0.37 | 1 | 1 | 13:06 |
| 28 | Otto Stenberg | 0 | 0 | 0 | -2 | 2 | 0.24 | 1 | 1 | 10:30 |
| 70 | Oskar Sundqvist | 0 | 0 | 0 | -2 | 1 | 0.00 | 1 | 1 | 10:08 |
| 26 | Nathan Walker | 0 | 0 | 0 | -2 | 2 | 0.21 | 6 | 1 | 09:58 |
| Defense | ||||||||||
| 6 | Philip Broberg | 0 | 2 | 2 | +1 | 3 | 0.10 | 1 | 0 | 23:04 |
| 55 | Colton Parayko | 1 | 1 | 2 | +2 | 5 | 0.17 | 1 | 2 | 22:38 |
| 17 | Cam Fowler | 0 | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 20:19 |
| 23 | Logan Mailloux | 0 | 0 | 0 | +1 | 2 | 0.08 | 3 | 0 | 19:11 |
| 4 | Theo Lindstein | 0 | 0 | 0 | 0 | 3 | 0.05 | 0 | 1 | 17:01 |
| 75 | Tyler Tucker | 0 | 1 | 1 | 0 | 0 | 0.00 | 2 | 1 | 12:55 |
| Goalie | SA | GA | SV | SV% | xGA | GSAx |
|---|---|---|---|---|---|---|
| Joel Hofer | 27 | 2 | 25 | .926 | 3.59 | +1.59 |
| Skater | G | A | P | +/− | Att | xG | Hit | Blk | TOI | |
|---|---|---|---|---|---|---|---|---|---|---|
| Forwards | ||||||||||
| 64 | Mikael Granlund | 0 | 0 | 0 | 0 | 1 | 0.13 | 3 | 1 | 20:32 |
| 91 | Leo Carlsson | 0 | 0 | 0 | -1 | 8 | 0.74 | 0 | 1 | 17:47 |
| 17 | Alex Killorn | 0 | 0 | 0 | 0 | 3 | 0.00 | 1 | 0 | 17:38 |
| 45 | Beckett Sennecke | 0 | 0 | 0 | 0 | 4 | 0.21 | 2 | 1 | 17:19 |
| 19 | Troy Terry | 0 | 0 | 0 | -1 | 7 | 0.57 | 0 | 0 | 16:31 |
| 22 | Chris Kreider | 0 | 0 | 0 | -1 | 0 | 0.00 | 0 | 0 | 15:47 |
| 83 | Mason McTavish | 0 | 1 | 1 | 0 | 4 | 0.28 | 2 | 0 | 14:29 |
| 42 | Tim Washe | 0 | 0 | 0 | -1 | 0 | 0.00 | 4 | 1 | 13:21 |
| 77 | Frank Vatrano | 0 | 0 | 0 | -1 | 4 | 0.18 | 3 | 1 | 12:37 |
| 25 | Ryan Poehling | 1 | 1 | 2 | 0 | 4 | 0.44 | 1 | 0 | 12:01 |
| 25 | Jeffrey Viel | 1 | 0 | 1 | 0 | 2 | 0.48 | 2 | 0 | 10:57 |
| 41 | Nathan Gaucher | 0 | 0 | 0 | -1 | 1 | 0.02 | 1 | 0 | 09:05 |
| Defense | ||||||||||
| 2 | Jackson LaCombe | 0 | 0 | 0 | 0 | 3 | 0.24 | 2 | 1 | 23:15 |
| 74 | John Carlson | 0 | 0 | 0 | -3 | 8 | 0.18 | 0 | 2 | 21:57 |
| 65 | Jacob Trouba | 0 | 0 | 0 | 0 | 3 | 0.08 | 3 | 0 | 20:37 |
| 8 | Olen Zellweger | 0 | 1 | 1 | 0 | 5 | 0.02 | 1 | 1 | 19:21 |
| 14 | Drew Helleson | 0 | 1 | 1 | +2 | 1 | 0.00 | 0 | 1 | 18:09 |
| 3 | Ian Moore | 0 | 0 | 0 | -3 | 3 | 0.03 | 0 | 0 | 10:50 |
| Goalie | SA | GA | SV | SV% | xGA | GSAx |
|---|---|---|---|---|---|---|
| Lukas Dostal | 29 | 6 | 23 | .793 | 3.69 | -2.31 |
Skaters by time on ice. Goalie lines count shots with the goalie in net, from the NHL play-by-play.
What each player added to the result, in goals, from most to least. Hover a number for what it's made of.
| Player | Rating | Points | Shots | On ice | Pen | FO | Other | GSAx | TOI |
|---|---|---|---|---|---|---|---|---|---|
| 55 Colton Parayko D | +2.59 | +1.30 | +0.11 | +0.95 | +0.15 | 0.00 | +0.08 | — | 22:38 |
| 25 Jordan Kyrou R | +2.39 | +0.55 | +0.24 | +1.57 | 0.00 | 0.00 | +0.03 | — | 13:06 |
| 18 Robert Thomas C | +2.23 | +2.00 | +0.15 | +0.04 | 0.00 | +0.02 | +0.02 | — | 18:20 |
| 22 Pius Suter C | +2.02 | +1.45 | +0.18 | +0.39 | 0.00 | 0.00 | 0.00 | — | 15:41 |
| 81 Dylan Holloway L | +1.99 | +1.50 | +0.43 | -0.01 | 0.00 | +0.01 | +0.06 | — | 21:07 |
| 54 Dalibor Dvorsky R | +1.89 | +0.70 | +0.28 | +1.03 | -0.15 | 0.00 | +0.03 | — | 14:51 |
| 30 Joel Hofer G | +1.59 | 0.00 | — | — | 0.00 | — | — | +1.59 | 59:34 |
| 75 Tyler Tucker D | +1.57 | +0.70 | 0.00 | +0.82 | 0.00 | 0.00 | +0.05 | — | 12:55 |
| 63 Jake Neighbours L | +1.54 | +1.25 | +0.05 | +0.19 | 0.00 | 0.00 | +0.05 | — | 15:59 |
| 29 Jonatan Berggren R | +1.51 | +0.75 | +0.19 | +0.55 | 0.00 | +0.01 | 0.00 | — | 13:52 |
| 92 Jonathan Drouin L | +1.49 | 0.00 | +0.25 | +1.12 | 0.00 | +0.02 | +0.10 | — | 14:14 |
| 6 Philip Broberg D | +1.16 | +1.25 | +0.07 | -0.10 | 0.00 | 0.00 | -0.06 | — | 23:04 |
| 17 Cam Fowler D | +0.24 | 0.00 | 0.00 | +0.24 | 0.00 | 0.00 | 0.00 | — | 20:19 |
| 41 Theo Lindstein D | +0.20 | 0.00 | +0.03 | -0.05 | +0.15 | 0.00 | +0.07 | — | 17:01 |
| 23 Logan Mailloux D | +0.11 | 0.00 | +0.05 | -0.11 | +0.15 | 0.00 | +0.02 | — | 19:11 |
| 26 Nathan Walker L | -0.35 | 0.00 | +0.14 | -0.50 | 0.00 | 0.00 | +0.01 | — | 9:58 |
| 28 Otto Stenberg C | -0.39 | 0.00 | +0.16 | -0.72 | +0.15 | 0.00 | +0.03 | — | 10:30 |
| 21 Jimmy Snuggerud R | -0.49 | 0.00 | +0.07 | -0.42 | -0.15 | 0.00 | 0.00 | — | 19:32 |
| 70 Oskar Sundqvist C | -0.73 | 0.00 | 0.00 | -0.59 | -0.15 | -0.04 | +0.05 | — | 10:08 |
| Player | Rating | Points | Shots | On ice | Pen | FO | Other | GSAx | TOI |
|---|---|---|---|---|---|---|---|---|---|
| 14 Drew Helleson D | +1.53 | +0.55 | 0.00 | +0.93 | 0.00 | 0.00 | +0.05 | — | 18:09 |
| 25 Ryan Poehling C | +1.33 | +1.45 | +0.29 | -0.47 | 0.00 | +0.06 | 0.00 | — | 12:01 |
| 91 Leo Carlsson C | +1.32 | 0.00 | +0.48 | +0.64 | +0.15 | 0.00 | +0.05 | — | 17:47 |
| 19 Troy Terry R | +0.97 | 0.00 | +0.37 | +0.60 | 0.00 | 0.00 | 0.00 | — | 16:31 |
| 51 Olen Zellweger D | +0.77 | +0.55 | +0.01 | +0.16 | 0.00 | 0.00 | +0.05 | — | 19:21 |
| 28 Jeffrey Viel L | +0.57 | +0.75 | +0.31 | -0.49 | 0.00 | 0.00 | 0.00 | — | 10:57 |
| 20 Chris Kreider L | +0.54 | 0.00 | 0.00 | +0.59 | 0.00 | -0.01 | -0.04 | — | 15:47 |
| 23 Mason McTavish C | +0.38 | +0.70 | +0.18 | -0.31 | -0.15 | -0.02 | -0.02 | — | 14:29 |
| 45 Beckett Sennecke R | 0.00 | 0.00 | +0.14 | -0.02 | -0.15 | +0.01 | +0.03 | — | 17:19 |
| 64 Mikael Granlund C | -0.02 | 0.00 | +0.08 | -0.09 | 0.00 | -0.04 | +0.03 | — | 20:32 |
| 74 John Carlson D | -0.07 | 0.00 | +0.12 | -0.26 | 0.00 | 0.00 | +0.08 | — | 21:57 |
| 17 Alex Killorn L | -0.26 | 0.00 | 0.00 | -0.10 | -0.15 | -0.01 | 0.00 | — | 17:38 |
| 2 Jackson LaCombe D | -0.52 | 0.00 | +0.16 | -0.68 | 0.00 | 0.00 | +0.01 | — | 23:15 |
| 65 Jacob Trouba D | -0.57 | 0.00 | +0.05 | -0.58 | 0.00 | 0.00 | -0.04 | — | 20:37 |
| 77 Frank Vatrano R | -0.76 | 0.00 | +0.11 | -1.07 | +0.15 | 0.00 | +0.05 | — | 12:37 |
| 42 Tim Washe C | -0.91 | 0.00 | 0.00 | -0.96 | 0.00 | 0.00 | +0.05 | — | 13:21 |
| 41 Nathan Gaucher C | -0.96 | 0.00 | +0.01 | -0.95 | 0.00 | -0.01 | -0.02 | — | 9:05 |
| 3 Ian Moore D | -1.32 | 0.00 | +0.02 | -1.32 | 0.00 | 0.00 | -0.02 | — | 10:50 |
| 1 Lukas Dostal G | -2.31 | 0.00 | — | — | 0.00 | — | — | -2.31 | 59:43 |
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.