J. Markstrom stole it
J. Markstrom stopped 15 of 15 (1.000) — +2.61 goals saved above expected in a 1-goal game.

G. Forsling scored in overtime to give the Panthers a 1-0 shutout over the Hurricanes. J. Markstrom was flawless in net, turning back every chance Carolina's offense created.
But the underlying numbers tell a different story. The Hurricanes generated more high-danger chances—6 to Florida's 4—yet couldn't beat J. Markstrom, who saved 2.61 goals above expected. Expected goals nearly split even at 2.61–2.65, a sign the scoreboard exaggerated Florida's dominance.
The disparity came down to finishing. Carolina shot at a 0.070 expected-goals rate per shot versus Florida's 0.052, evidence they were hunting dangerous looks. They got 6 high-danger chances. They converted zero.
J. Markstrom was the engine of Florida's win. He allowed nothing on high danger—6 stops on 6 high-danger shots. B. Bussi answered the challenge with a 1.65-goal save above expected. Markstrom turned away the one that mattered: G. Forsling's 55-foot slap shot at 04:55 of overtime, a play the model gave only a 3% chance.
The transition game told the same story. The Hurricanes fired 19 rush shots worth 2.15 expected goals. Zero goals resulted. Florida's defense held serve when the play was most dangerous.
Special teams offered neither side an edge. Power plays failed for both clubs.
Three Stars: G. Forsling (1 goal in 22:40), C. Verhaeghe (1 assist in 18:58), and S. Jones (two-way depth in 28:59).
Final: FLA 1 – CAR 0 (OT)
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.
Panthers shut out the Hurricanes, 1-0
Dead even on chances. The Panthers took it anyway.
The board read FLA 1, CAR 0. The chances read FLA 2.6, CAR 2.6.
The Hurricanes left 2.6 goals on the table against what their chances were worth.
G. Forsling makes it 1–0.
The Hurricanes went 0 for 6 from the slot.
Panthers shut out the Hurricanes, 1-0
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 breakdownSlap shot from 55 feet, a 3% chance, a shot that rarely goes in, past B. Bussi. Win probability moved 50 points.
score reads FLA–CAR
FLA went 0-for-12 from medium danger on 1.50 expected goals — 1.5 left on the table.
FLA finished -1.6 against expected, CAR -2.6.
Snap shots carried the volume: FLA went 0-for-9, CAR 0-for-13.
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: C. Verhaeghe (FLA), 18:58 of ice, 0-1, 89% of the expected goals while he was out.
| Skater | TOI | G-A | SOG | ixG | xG% | PD/PT | Impact | /60 | Grade |
|---|---|---|---|---|---|---|---|---|---|
| C. VerhaegheC | 18:58 | 0-1 | 1 | 0.13 | 89 | 0/0 | 1.16 | 3.68 | A+ |
| S. ReinhartC | 20:57 | 0-0 | 2 | 0.20 | 70 | 1/0 | 0.69 | 1.99 | A |
| M. TkachukL | 19:01 | 0-0 | 2 | 0.29 | 70 | 1/0 | 0.63 | 2.00 | A |
| B. TkachukL | 16:33 | 0-0 | 1 | 0.36 | 81 | 0/1 | 0.45 | 1.64 | B |
| N. MikkolaD | 21:32 | 0-0 | 4 | 0.31 | 49 | 0/0 | 0.48 | 1.33 | B |
| A. BarkovC | 20:32 | 0-0 | 1 | 0.11 | 65 | 0/0 | 0.43 | 1.25 | B |
| S. JonesD | 28:59 | 0-0 | 1 | 0.06 | 64 | 0/0 | 0.45 | 0.94 | B |
| S. VilmanisL | 11:23 | 0-0 | 0 | 0.01 | 59 | 0/0 | 0.24 | 1.28 | B |
| R. GudasD | 10:45 | 0-0 | 0 | 0.00 | 98 | 0/0 | 0.23 | 1.31 | B |
| D. KulikovD | 11:46 | 0-0 | 0 | 0.00 | 98 | 0/1 | 0.24 | 1.25 | B |
| S. BennettC | 19:08 | 0-0 | 1 | 0.14 | 52 | 1/0 | 0.28 | 0.88 | C |
| A. LundellC | 19:02 | 0-0 | 3 | 0.52 | 43 | 0/0 | 0.27 | 0.83 | C |
| L. EllerC | 11:34 | 0-0 | 1 | 0.01 | 29 | 1/0 | 0.10 | 0.53 | C |
| G. ForslingD | 22:40 | 1-0 | 2 | 0.03 | 10 | 0/1 | 0.11 | 0.30 | C |
| E. LuostarinenC | 13:58 | 0-0 | 1 | 0.37 | 40 | 0/0 | 0.00 | 0.00 | C |
| B. ImamaL | 6:03 | 0-0 | 0 | 0.00 | 100 | 1/2 | -0.14 | -1.44 | F |
| A. EkbladD | 20:17 | 0-0 | 0 | 0.11 | 30 | 0/0 | -0.26 | -0.76 | F |
| G. HathawayR | 9:37 | 0-0 | 0 | 0.00 | 28 | 1/2 | -0.28 | -1.75 | F |
| Skater | TOI | G-A | SOG | ixG | xG% | PD/PT | Impact | /60 | Grade |
|---|---|---|---|---|---|---|---|---|---|
| J. BlakeR | 21:38 | 0-0 | 2 | 0.52 | 67 | 1/0 | 0.99 | 2.76 | A+ |
| N. EhlersL | 19:24 | 0-0 | 2 | 0.34 | 75 | 0/0 | 0.85 | 2.62 | A+ |
| S. AhoC | 20:56 | 0-0 | 4 | 0.50 | 76 | 0/2 | 0.85 | 2.45 | A |
| A. SvechnikovR | 16:21 | 0-0 | 2 | 0.52 | 72 | 0/1 | 0.64 | 2.33 | A |
| S. GostisbehereD | 19:09 | 0-0 | 1 | 0.25 | 54 | 2/0 | 0.59 | 1.84 | A |
| T. HallL | 15:27 | 0-0 | 1 | 0.20 | 51 | 1/1 | 0.14 | 0.56 | C |
| K. MillerD | 25:15 | 0-0 | 0 | 0.00 | 64 | 0/1 | 0.14 | 0.34 | C |
| J. SlavinD | 22:32 | 0-0 | 1 | 0.10 | 37 | 0/0 | 0.01 | 0.01 | C |
| N. DeslauriersL | 5:01 | 0-0 | 0 | 0.00 | 50 | 1/1 | 0.00 | 0.00 | D |
| W. CarrierL | 6:46 | 0-0 | 0 | 0.00 | 3 | 1/0 | -0.01 | -0.04 | D |
| S. WalkerD | 19:10 | 0-0 | 1 | 0.02 | 24 | 0/1 | -0.01 | -0.03 | D |
| E. RobinsonL | 13:00 | 0-0 | 0 | 0.04 | 41 | 0/0 | -0.07 | -0.31 | D |
| J. ChatfieldD | 19:12 | 0-0 | 0 | 0.00 | 40 | 0/0 | -0.13 | -0.39 | D |
| L. StankovenC | 19:54 | 0-0 | 0 | 0.00 | 43 | 0/0 | -0.13 | -0.39 | D |
| M. JankowskiL | 13:13 | 0-0 | 0 | 0.10 | 16 | 0/0 | -0.13 | -0.59 | D |
| J. StaalC | 17:17 | 0-0 | 0 | 0.00 | 19 | 0/0 | -0.23 | -0.80 | D |
| J. MartinookL | 13:50 | 0-0 | 0 | 0.00 | 4 | 0/0 | -0.26 | -1.11 | F |
| C. LegaultD | 12:40 | 0-0 | 1 | 0.02 | 3 | 0/0 | -0.29 | -1.39 | 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, FLA: U. Balinskis. Scratched, CAR: M. Reilly, C. Primeau, J. Kotkaniemi. Referees Chris Rooney and Jake Brenk; linesmen Libor Suchanek and Ryan Daisy.
FLA Created 2.65 xG against a ~2.70 league-average game; 4 high-danger shots (0.96 xG) and 18 rush shots (2.15 xG).
CAR Created 2.61 xG against a ~2.70 league-average game; 6 high-danger shots (1.21 xG) and 19 rush shots (2.15 xG).
FLA Allowed 2.61 xG against a ~2.70 league-average game; conceded 6 high-danger shots (1.21 xG) and 19 rush shots (2.15 xG).
CAR Allowed 2.65 xG against a ~2.70 league-average game; conceded 4 high-danger shots (0.96 xG) and 18 rush shots (2.15 xG).
FLA Rush shots 18–19, rush xG 2.15–2.15 (rush-based; public data has no zone entries).
CAR Rush shots 19–18, rush xG 2.15–2.15 (rush-based; public data has no zone entries).
FLA 0-for-7 on the power play (0%; league ≈21%) with 0.70 PP xG.
CAR 0-for-6 on the power play (0%; league ≈21%) with 1.64 PP xG.
FLA +2.61 goals saved above expected on 15 shots against.
CAR +1.65 goals saved above expected on 20 shots against.
FLA Took 7 penalties for 17 PIM vs 8 for 19 on the other side.
CAR Took 8 penalties for 19 PIM vs 7 for 17 on the other side.
Grades bounces, not skill — C is neutral
FLA Finishing -1.65 goals vs xG plus +2.61 GSAx of save luck = +0.96 total. This grades luck, not skill — C is neutral, A is very lucky.
CAR Finishing -2.61 goals vs xG plus +1.65 GSAx of save luck = -0.96 total. This grades luck, not skill — C is neutral, A is very lucky.
J. Markstrom stopped 15 of 15 (1.000) — +2.61 goals saved above expected in a 1-goal game.
Scored 0 on 2.61 xG — -2.61 vs expected. The looks were there; the finish will come back.
0-for-6 on high-danger chances worth 1.21 xG — that conversion rate won't stay at zero.
Gave up 19 rush shots worth 2.15 xG (0 goals) — transition gaps were there every period.
Tighten neutral-zone structure and keep D gaps closed on entries.
Gave up 18 rush shots worth 2.15 xG (0 goals) — transition gaps were there every period.
Tighten neutral-zone structure and keep D gaps closed on entries.
0-for-7 with the man advantage on 0.70 PP xG.
Rework PP entries and get a body to the net-front.
Each club shoots toward its own end — FLA left, CAR 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.
The Hurricanes get the model's edge, but Florida's play is the more threatening force. The Panthers control the board with real territorial advantage, though their success could cool as regression sets in.
The Panthers post 52.8% expected goals to the Hurricanes' 49.6%, a meaningful edge in the underlying play. They drive 57.9% of shot attempts, which means they're dictating where play happens and sustaining more offensive looks. But their PDO of 1.024 means they're scoring at rates above what the workload warrants — a hot run that will cool.
In the high slot, Florida has scored 3 goals on 6 attempts (50%). Denying that lane is critical for Carolina.
A. Schmid carries -0.7 goals saved above expected and an 87.5% save percentage in one appearance. B. Bussi posts +1.5 goals saved above expected and a 95.0% save percentage in one appearance.
The Hurricanes' edge relies on Florida's luck normalizing. As long as it hasn't, the Panthers' territorial mastery makes them a live threat.
CAR by 14 points of win probability — a modest lean. Projected score FLA 3.0–3.5 CAR; 16% chance it's tied after 60.
FLA holds 4 of 6 process categories — and the luck row (1.024 vs 1.000) says FLA has been getting the bounces, which tends not to last.
The Panthers own the underlying play — 52.8% 5v5 xG vs 49.6%.
The Panthers drive Corsi at 57.9% — expect territorial tilt.
The Panthers' PDO is 1.024 — running hot, expect some regression.
Weight the underlying numbers over the recent results.
Their most productive scoring zone over last 5 games.
Most goals from high-slot (3G on 6 shots, 50%) — deny that lane
No completed game on file for this club yet.
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.