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

Boston beat Philadelphia 5-1, and the Bruins earned the win. The score makes it look more one-sided than it was, though.
The metric that disagrees most with the scoreboard is expected goals, the model's estimate of how many goals a team's chances should have produced. At five-on-five, Boston's expected goals total was 3.72 to Philadelphia's 1.74. That is a clear edge, just a narrower one than 5-1 suggests.
Boston controlled 68% of shot attempts, which counts misses and blocks as well as shots on goal. Shots on goal were 32 to 15. Finishing made up much of the difference. Boston scored 1.28 goals more than its chances predicted, and Philadelphia scored 0.74 fewer than its chances predicted.
The turning point came late in the third period, when F. Minten's wrist shot at 15:59 made it 5-1.
Philadelphia did not score until the third period, on a P. Martone power-play goal. Boston led 3-0 before that. Transition was the story. Boston scored 4 goals on 36 rush chances, and Philadelphia's defense left gaps in transition in every period.
D. Vladar stopped 27 of 32 shots for Philadelphia, but he allowed more goals than that workload should have allowed. The model put that gap at 1.28 goals. J. Swayman stopped 14 of 15 for Boston and saved more than expected.
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.
Bruins run the Flyers off the ice on the underlying numbers
The Bruins earned this one.
The board read PHI 1, BOS 5. The chances read PHI 1.7, BOS 3.7.
Both sides finished close to what their chances were worth. This one was earned on the ice.
P. Zacha makes it 0–1.
High-danger looks: PHI 0 of 2, BOS 1 of 2.
Bruins run the Flyers off the ice on the underlying numbers
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 breakdownWrist shot from 40 feet, a 5% chance, a shot that rarely goes in (off the rush), past D. Vladar. Win probability moved 16 points.On the ice: H. Lindholm, W. Borgen, J. Peterka, M. Khusnutdinov, F. Minten · against G. Wilson, M. Bunting, N. Acciari, S. Benoit, H. Grans
Wrist shot from 33 feet, a 10% chance (off the rush), past D. Vladar. 9s after a PHI shot by D. Jiricek. Win probability moved 14 points.On the ice: H. Lindholm, E. Lindholm, W. Borgen, C. Mittelstadt, J. Hagens · against N. Seeler, N. Cates, H. Grans, D. Barkey, P. Martone
Wrist shot from 11 feet, a 20% chance (off the rush), past D. Vladar. Win probability moved 5 points.On the ice: C. Clifton, E. Lindholm, N. Zadorov, C. Mittelstadt, J. Hagens · against N. Seeler, T. Zegras, H. Grans, M. Michkov, P. Martone
Wrist shot from 23 feet, an 11% chance (off the rush), past J. Swayman.On the ice: T. Sanheim, C. Dvorak, J. Drysdale, T. Foerster, D. Barkey · against T. Jeannot, M. Kastelic, M. Lohrei, F. Brunet, M. Poitras
Wrist shot from 7 feet, a 14% chance, past D. Vladar. 5s after a PHI giveaway by S. Benoit.On the ice: D. Pastrnak, P. Zacha, M. Geekie, M. Lohrei, F. Brunet · against G. Wilson, N. Seeler, M. Bunting, N. Acciari, D. Jiricek
Wrist shot from 12 feet, an 11% chance (off the rush), past D. Vladar. 5s after a PHI hit by T. Sanheim. T. Sanheim was 49s into his shift for the defending side.
score reads PHI–BOS
BOS went 1-for-2 from high danger on 0.39 expected goals — 0.6 above expected.
PHI finished -0.7 against expected, BOS +1.3.
Wrist shots carried the volume: PHI went 1-for-21, BOS 5-for-24. BOS scored 4 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: F. Minten (BOS), 14:25 of ice, 1-2, 75% of the expected goals while he was out.
| Skater | TOI | G-A | SOG | ixG | xG% | PD/PT | Impact | /60 | Grade |
|---|---|---|---|---|---|---|---|---|---|
| P. MartoneR | 15:18 | 1-0 | 3 | 0.41 | 51 | 1/2 | 0.96 | 3.78 | B |
| D.JiricekD | 17:46 | 0-1 | 1 | 0.02 | 29 | 1/0 | 0.77 | 2.58 | B |
| D. BarkeyC | 13:51 | 0-1 | 1 | 0.20 | 43 | 0/0 | 0.63 | 2.74 | B |
| N. CatesL | 10:57 | 0-0 | 1 | 0.17 | 59 | 1/0 | 0.31 | 1.70 | C |
| J. DrysdaleD | 24:58 | 0-0 | 2 | 0.06 | 39 | 0/0 | 0.10 | 0.24 | C |
| O. TippettR | 17:18 | 0-0 | 3 | 0.41 | 31 | 0/0 | 0.08 | 0.27 | C |
| S. BenoitD | 13:37 | 0-0 | 0 | 0.00 | 36 | 0/0 | -0.07 | -0.31 | C |
| T. SanheimD | 28:51 | 0-0 | 0 | 0.00 | 38 | 0/0 | -0.13 | -0.26 | D |
| C. DvorakC | 17:25 | 0-0 | 0 | 0.14 | 37 | 0/0 | -0.15 | -0.51 | D |
| M. BuntingL | 13:36 | 0-0 | 0 | 0.01 | 30 | 0/0 | -0.15 | -0.64 | D |
| T. ZegrasC | 15:53 | 0-0 | 0 | 0.00 | 40 | 0/0 | -0.18 | -0.68 | D |
| N. SeelerD | 20:19 | 0-0 | 1 | 0.06 | 27 | 0/0 | -0.27 | -0.79 | D |
| S. CouturierC | 16:09 | 0-0 | 0 | 0.00 | 32 | 0/0 | -0.26 | -0.97 | D |
| M. MichkovR | 15:35 | 0-0 | 2 | 0.14 | 18 | 0/0 | -0.27 | -1.05 | D |
| H. GransD | 12:26 | 0-0 | 0 | 0.00 | 29 | 0/0 | -0.28 | -1.35 | F |
| G. WilsonL | 11:46 | 0-0 | 0 | 0.00 | 4 | 0/0 | -0.32 | -1.61 | F |
| T. FoersterR | 16:15 | 0-0 | 1 | 0.12 | 26 | 0/1 | -0.43 | -1.58 | F |
| N. AcciariC | 12:44 | 0-0 | 0 | 0.00 | 4 | 0/1 | -0.43 | -2.05 | F |
| Skater | TOI | G-A | SOG | ixG | xG% | PD/PT | Impact | /60 | Grade |
|---|---|---|---|---|---|---|---|---|---|
| F. MintenC | 14:25 | 1-2 | 3 | 0.37 | 75 | 1/2 | 2.43 | 10.10 | A+ |
| J. PeterkaR | 14:02 | 0-2 | 2 | 0.27 | 76 | 0/0 | 1.88 | 8.04 | A+ |
| J. HagensC | 14:48 | 0-1 | 4 | 0.61 | 78 | 0/0 | 1.54 | 6.25 | A+ |
| D. PastrnakR | 19:29 | 0-1 | 4 | 0.44 | 77 | 1/0 | 1.68 | 5.16 | A |
| C. MittelstadtC | 14:25 | 1-0 | 2 | 0.43 | 77 | 0/0 | 1.46 | 6.09 | A |
| M. KhusnutdinovC | 13:27 | 1-0 | 3 | 0.27 | 82 | 0/0 | 1.41 | 6.27 | A |
| E. LindholmC | 13:47 | 0-1 | 1 | 0.07 | 85 | 0/0 | 1.41 | 6.12 | A |
| M. LohreiD | 17:41 | 1-0 | 1 | 0.10 | 64 | 0/0 | 1.15 | 3.90 | A |
| P. ZachaC | 19:16 | 1-0 | 1 | 0.19 | 77 | 0/1 | 1.13 | 3.51 | B |
| N. ZadorovD | 22:37 | 0-0 | 4 | 0.27 | 73 | 1/0 | 1.10 | 2.92 | B |
| M. GeekieC | 16:40 | 0-0 | 1 | 0.39 | 83 | 0/0 | 0.68 | 2.45 | B |
| H. LindholmD | 18:28 | 0-1 | 0 | 0.00 | 55 | 0/0 | 0.61 | 1.98 | B |
| C. CliftonD | 22:48 | 0-0 | 1 | 0.18 | 78 | 0/1 | 0.57 | 1.51 | C |
| W. BorgenD | 18:13 | 0-1 | 0 | 0.00 | 61 | 0/1 | 0.54 | 1.76 | C |
| F. BrunetD | 18:25 | 0-0 | 2 | 0.06 | 62 | 0/0 | 0.37 | 1.21 | C |
| M. KastelicC | 11:24 | 0-0 | 2 | 0.03 | 19 | 0/0 | -0.01 | -0.03 | C |
| M. PoitrasC | 12:14 | 0-0 | 1 | 0.07 | 19 | 0/0 | -0.24 | -1.20 | D |
| T. JeannotL | 12:49 | 0-0 | 0 | 0.00 | 19 | 0/0 | -0.27 | -1.24 | 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, PHI: T. Konecny, C. Grundstrom, C. York. Scratched, BOS: S. Kuraly, C. McAvoy, J. Aspirot. Referees Thomas John Luxmore and Alex Lepkowski; linesmen Joe Mahon and Jeremy Faucher.
PHI Created 1.74 xG against a ~2.70 league-average game; 2 high-danger shots (0.37 xG) and 23 rush shots (1.71 xG).
BOS Created 3.72 xG against a ~2.70 league-average game; 2 high-danger shots (0.39 xG) and 36 rush shots (3.24 xG).
PHI Allowed 3.72 xG against a ~2.70 league-average game; conceded 2 high-danger shots (0.39 xG) and 36 rush shots (3.24 xG).
BOS Allowed 1.74 xG against a ~2.70 league-average game; conceded 2 high-danger shots (0.37 xG) and 23 rush shots (1.71 xG).
PHI Rush shots 23–36, rush xG 1.71–3.24 (rush-based; public data has no zone entries).
BOS Rush shots 36–23, rush xG 3.24–1.71 (rush-based; public data has no zone entries).
PHI 1-for-3 on the power play (33%; league ≈21%) with 0.15 PP xG.
BOS 0-for-2 on the power play (0%; league ≈21%) with 0.00 PP xG.
PHI -1.28 goals saved above expected on 32 shots against.
BOS +0.74 goals saved above expected on 15 shots against.
PHI Took 4 penalties for 16 PIM vs 5 for 18 on the other side.
BOS Took 5 penalties for 18 PIM vs 4 for 16 on the other side.
Grades bounces, not skill — C is neutral
PHI Finishing -0.74 goals vs xG plus -1.28 GSAx of save luck = -2.02 total. This grades luck, not skill — C is neutral, A is very lucky.
BOS Finishing +1.28 goals vs xG plus +0.74 GSAx of save luck = +2.02 total. This grades luck, not skill — C is neutral, A is very lucky.
Gave up 36 rush shots worth 3.24 xG (4 goals) — transition gaps were there every period.
Tighten neutral-zone structure and keep D gaps closed on entries.
4 goals on 36 rush shots worth 3.24 xG.
The Bruins controlled 68% of expected goals (3.72–1.74) and won 5-1 — result matched process.
Gave up 23 rush shots worth 1.71 xG (1 goals) — transition gaps were there every period.
Tighten neutral-zone structure and keep D gaps closed on entries.
1 goals on 23 rush shots worth 1.71 xG.
1G 2A in 14:25 — the game's first star.
Each club shoots toward its own end — PHI left, BOS 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.