Ottawa SenatorsOTT 6–2 Final Boston BruinsBOS

Sunday, December 21, 2025

Final 1st2nd3rd T SOG
Ottawa SenatorsOTT 330 6 28
Boston BruinsBOS 110 2 20

No impact calculated for this game. Impacts are calculated for games in the next 7 days.

Highlights

Scoring

1st Period
1:30 OTT Drake Batherson (14) Nick Jensen (7), Dylan Cozens (15) · snap xG 0.14 1–0 ▶
13:44 OTT Claude Giroux (7) Drake Batherson (20), Dylan Cozens (16) · wrist xG 0.35 2–0 ▶
16:47 OTT Fabian Zetterlund (8)PP Thomas Chabot (10), David Perron (12) · snap xG 0.12 3–0 ▶
19:07 BOS David Pastrnak (14)PP Pavel Zacha (16), Charlie McAvoy (18) · slap xG 0.27 3–1 ▶
2nd Period
6:44 OTT Tim Stützle (17) Brady Tkachuk (10), Fabian Zetterlund (7) · wrist xG 0.22 4–1 ▶
7:03 OTT Dylan Cozens (11) Drake Batherson (21), David Perron (13) · wrist xG 0.01 5–1 ▶
14:36 BOS Charlie McAvoy (1) Marat Khusnutdinov (7) · tip-in xG 0.06 5–2 ▶
17:26 OTT Fabian Zetterlund (9)PP Stephen Halliday (3), Claude Giroux (17) · slap xG 0.12 6–2 ▶
3rd Period
No scoring

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

OTT 69%Deserve to win31% BOS
OTTBOS
3.55Expected goals2.42
6Goals (no shootout)2
2.65Expected goals, 5 on 51.56
51Shot attempts56
40Unblocked attempts37
28Shots on goal20

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).

1st Period
15:20 OTT xG swing xG swing · Out-chanced BOS 1.35–0.15
In xG over 10 minutes, 7:00 to 17:00 of the 1st; goals 2–0
2nd Period
7:03 BOS Goalie Goalie · Korpisalo −2.3 goals saved
5 goals on 2.71 xG, 17 shots on goal
7:03 BOS Goalie change Goalie change · Swayman in for Korpisalo
7:03 of the 2nd; Korpisalo had allowed 5 goals on 17 shots (2.71 xG)

Shot map

OTT shoots ←Bigger circle: higher xG; filled: goal→ BOS shoots
Brady Tkachuk: snap, 41 ft, xG 0.04 (P1 0:11) Artem Zub: snap, 52 ft, xG 0.01 (P1 0:16) Nikita Zadorov: wrist, 177 ft, xG 0.00 (P1 1:52) Ridly Greig: backhand, 14 ft, xG 0.03 (P1 2:55) Sean Kuraly: snap, 49 ft, xG 0.03 (P1 6:23) Pavel Zacha: snap, 40 ft, xG 0.02 (P1 6:29) David Perron: snap, 34 ft, xG 0.09 (P1 7:51) Ridly Greig: tip-in, 16 ft, xG 0.08 (P1 8:54) Pavel Zacha: tip-in, 8 ft, xG 0.09 (P1 9:30) Tim Stützle: snap, 8 ft, xG 0.23 (P1 10:20) Tanner Jeannot: wrist, 28 ft, xG 0.06 (P1 12:32) Thomas Chabot: snap, 45 ft, xG 0.04 (P1 13:38) Dylan Cozens: snap, 18 ft, xG 0.19 (P1 13:40) Ridly Greig: snap, 22 ft, xG 0.04 (P1 14:30) Tim Stützle: backhand, 10 ft, xG 0.11 (P1 14:46) Jake Sanderson: snap, 35 ft, xG 0.10 (P1 15:20) Jake Sanderson: snap, 42 ft, xG 0.01 (P1 16:56) Mason Lohrei: slap, 50 ft, xG 0.01 (P1 17:14) David Pastrnak: snap, 9 ft, xG 0.18 (P1 17:42) Michael Eyssimont: snap, 7 ft, xG 0.05 (P1 18:09) David Pastrnak: snap, 44 ft, xG 0.05 (P1 18:21) Tim Stützle: snap, 24 ft, xG 0.17 (P1 19:23) Andrew Peeke: snap, 40 ft, xG 0.03 (P2 1:22) Charlie McAvoy: snap, 52 ft, xG 0.00 (P2 1:49) Michael Eyssimont: snap, 17 ft, xG 0.02 (P2 1:52) Sean Kuraly: tip-in, 14 ft, xG 0.08 (P2 2:31) Sean Kuraly: snap, 5 ft, xG 0.21 (P2 2:33) Nikita Zadorov: snap, 63 ft, xG 0.02 (P2 2:38) David Pastrnak: snap, 17 ft, xG 0.07 (P2 3:43) Michael Amadio: wrist, 6 ft, xG 0.21 (P2 5:23) Thomas Chabot: slap, 45 ft, xG 0.02 (P2 5:31) Michael Amadio: backhand, 9 ft, xG 0.02 (P2 5:32) Brady Tkachuk: tip-in, 4 ft, xG 0.25 (P2 6:24) Fabian Zetterlund: snap, 23 ft, xG 0.09 (P2 6:29) Brady Tkachuk: snap, 36 ft, xG 0.08 (P2 6:38) Tim Stützle: backhand, 7 ft, xG 0.04 (P2 6:39) Fabian Zetterlund: snap, 89 ft, xG 0.00 (P2 7:17) Tanner Jeannot: tip-in, 14 ft, xG 0.08 (P2 9:23) Jake Sanderson: snap, 37 ft, xG 0.06 (P2 10:06) David Perron: tip-in, 11 ft, xG 0.01 (P2 10:08) Elias Lindholm: tip-in, 26 ft, xG 0.01 (P2 10:28) Jake Sanderson: snap, 28 ft, xG 0.05 (P2 12:12) Pavel Zacha: bat, 8 ft, xG 0.05 (P2 13:04) Michael Eyssimont: tip-in, 15 ft, xG 0.05 (P2 15:46) Sean Kuraly: snap, 34 ft, xG 0.08 (P2 18:42) Tim Stützle: snap, 40 ft, xG 0.05 (P2 18:51) Thomas Chabot: slap, 70 ft, xG 0.01 (P2 18:55) Alex Steeves: snap, 56 ft, xG 0.02 (P3 0:47) Stephen Halliday: tip-in, 17 ft, xG 0.05 (P3 2:17) Elias Lindholm: tip-in, 6 ft, xG 0.04 (P3 2:40) Tim Stützle: snap, 67 ft, xG 0.00 (P3 3:22) Alex Steeves: tip-in, 26 ft, xG 0.06 (P3 3:44) David Perron: backhand, 16 ft, xG 0.03 (P3 6:26) David Perron: snap, 7 ft, xG 0.05 (P3 6:27) Morgan Geekie: slap, 36 ft, xG 0.04 (P3 7:11) Mason Lohrei: slap, 59 ft, xG 0.02 (P3 7:14) Ridly Greig: slap, 45 ft, xG 0.03 (P3 7:34) David Pastrnak: slap, 39 ft, xG 0.05 (P3 9:54) Morgan Geekie: slap, 35 ft, xG 0.02 (P3 10:20) Michael Amadio: snap, 20 ft, xG 0.23 (P3 10:29) Nick Cousins: snap, 43 ft, xG 0.04 (P3 11:45) Thomas Chabot: tip-in, 8 ft, xG 0.10 (P3 12:23) Marat Khusnutdinov: backhand, 24 ft, xG 0.05 (P3 14:42) Marat Khusnutdinov: snap, 7 ft, xG 0.02 (P3 14:43) Michael Eyssimont: deflected, 27 ft, xG 0.07 (P3 14:50) Charlie McAvoy: backhand, 6 ft, xG 0.17 (P3 15:03) Charlie McAvoy: snap, 41 ft, xG 0.08 (P3 19:30) Elias Lindholm: tip-in, 10 ft, xG 0.15 (P3 19:39) Morgan Geekie: snap, 35 ft, xG 0.10 (P3 19:49) Drake Batherson: GOAL, snap, 32 ft, xG 0.14 (P1 1:30) Claude Giroux: GOAL, wrist, 6 ft, xG 0.35 (P1 13:44) Fabian Zetterlund: GOAL, snap, 27 ft, xG 0.12 (P1 16:47) David Pastrnak: GOAL, slap, 30 ft, xG 0.27 (P1 19:07) Tim Stützle: GOAL, wrist, 10 ft, xG 0.22 (P2 6:44) Dylan Cozens: GOAL, wrist, 65 ft, xG 0.01 (P2 7:03) Charlie McAvoy: GOAL, tip-in, 36 ft, xG 0.06 (P2 14:36) Fabian Zetterlund: GOAL, slap, 36 ft, xG 0.12 (P2 17:26)
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

Ottawa Senators

Skater GAP+/− AttxG HitBlkTOI
Forwards
22 Michael Amadio 000 0 40.47 1017:20
20 Fabian Zetterlund 213 +1 40.33 1017:12
28 Claude Giroux 112 +1 10.35 1117:02
71 Ridly Greig 000 0 40.19 0117:00
18 Tim Stützle 101 +1 70.82 0116:25
19 Drake Batherson 123 +2 20.14 2116:11
24 Dylan Cozens 123 +2 30.21 6015:40
16 David Perron 022 +1 40.18 0115:11
8 Brady Tkachuk 011 +1 40.37 5113:46
21 Nick Cousins 000 0 10.04 1112:43
34 Stephen Halliday 011 0 10.05 1011:24
23 Kurtis MacDermid 000 0 00.00 2005:34
Defense
85 Jake Sanderson 000 0 60.22 0124:26
72 Thomas Chabot 011 +3 50.17 0322:46
2 Artem Zub 000 0 20.01 1019:51
33 Nikolas Matinpalo 000 0 10.00 0217:19
10 Jordan Spence 000 +3 10.00 0116:52
4 Nick Jensen 011 0 10.00 1314:23
Goalie SAGA SVSV% xGA GSAx
Linus Ullmark 20218 .900 2.42 +0.42

Boston Bruins

Skater GAP+/− AttxG HitBlkTOI
Forwards
88 David Pastrnak 101 -2 110.63 2019:04
18 Pavel Zacha 011 -2 30.16 0118:57
28 Elias Lindholm 000 -1 30.20 2017:44
39 Morgan Geekie 000 -1 50.16 2017:34
11 Casey Mittelstadt 000 -2 00.00 1115:29
93 Fraser Minten 000 0 10.00 3213:37
21 Alex Steeves 000 0 30.08 4013:27
52 Sean Kuraly 000 0 50.40 1113:24
47 Mark Kastelic 000 0 00.00 4113:11
84 Tanner Jeannot 000 0 30.14 6013:05
81 Michael Eyssimont 000 0 60.18 1011:15
92 Marat Khusnutdinov 011 -1 20.07 1010:49
Defense
73 Charlie McAvoy 112 +1 40.31 1021:59
27 Hampus Lindholm 000 -2 20.00 0121:46
20 Andrew Peeke 000 -2 40.03 0120:57
91 Nikita Zadorov 000 +1 20.02 3018:44
6 Mason Lohrei 000 -2 20.03 1217:26
Goalie SAGA SVSV% xGA GSAx
Joonas Korpisalo 17512 .706 2.71 -2.29
Jeremy Swayman 11110 .909 0.84 -0.16

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.

Ottawa Senators

Player Rating Points Shots On ice Pen FO Other GSAx TOI
19 Drake Batherson R +3.00 +2.15 +0.09 +0.71 0.00 0.00 +0.05 — 16:11
72 Thomas Chabot D +3.00 +0.70 +0.11 +2.04 0.00 0.00 +0.15 — 22:46
24 Dylan Cozens C +2.99 +1.85 +0.14 +0.77 +0.15 +0.07 +0.02 — 15:40
20 Fabian Zetterlund L +2.99 +2.05 +0.22 +0.72 0.00 0.00 0.00 — 17:12
28 Claude Giroux R +2.80 +1.30 +0.23 +1.22 0.00 +0.02 +0.03 — 17:02
18 Tim Stützle C +2.39 +0.75 +0.53 +1.09 0.00 -0.02 +0.03 — 16:25
7 Brady Tkachuk L +1.90 +0.70 +0.24 +0.89 0.00 +0.01 +0.05 — 13:46
10 Jordan Spence D +1.48 0.00 0.00 +1.43 0.00 0.00 +0.05 — 16:52
57 David Perron L +1.28 +1.10 +0.12 +0.03 0.00 0.00 +0.03 — 15:11
22 Michael Amadio R +0.59 0.00 +0.30 +0.30 0.00 0.00 -0.02 — 17:20
3 Nick Jensen D +0.50 +0.70 0.00 -0.25 -0.08 0.00 +0.13 — 14:23
35 Linus Ullmark G +0.42 0.00 — — 0.00 — — +0.42 60:00
71 Ridly Greig C +0.21 0.00 +0.12 +0.31 -0.22 -0.02 +0.03 — 17:00
85 Jake Sanderson D +0.21 0.00 +0.14 -0.22 +0.30 0.00 -0.01 — 24:26
23 Kurtis MacDermid L +0.05 0.00 0.00 +0.07 0.00 0.00 -0.02 — 5:34
83 Stephen Halliday C +0.02 +0.70 +0.03 -0.58 0.00 -0.05 -0.08 — 11:24
33 Nikolas Matinpalo D -0.01 0.00 0.00 -0.07 0.00 0.00 +0.06 — 17:19
2 Artem Zub D -0.03 0.00 +0.01 +0.11 -0.15 0.00 0.00 — 19:51
21 Nick Cousins C -0.45 0.00 +0.03 -0.36 -0.15 0.00 +0.03 — 12:43

Boston Bruins

Player Rating Points Shots On ice Pen FO Other GSAx TOI
73 Charlie McAvoy D +1.95 +1.30 +0.20 +0.46 0.00 0.00 -0.02 — 21:59
52 Sean Kuraly C +1.11 0.00 +0.26 +0.82 0.00 -0.02 +0.05 — 13:24
81 Michael Eyssimont C +1.06 0.00 +0.12 +0.79 +0.15 0.00 0.00 — 11:15
91 Nikita Zadorov D +0.53 0.00 +0.01 +0.54 0.00 0.00 -0.02 — 18:44
92 Marat Khusnutdinov C +0.30 +0.70 +0.05 -0.43 0.00 0.00 -0.02 — 10:49
47 Mark Kastelic C +0.21 0.00 0.00 +0.01 +0.15 +0.02 +0.03 — 13:11
21 Alex Steeves C +0.07 0.00 +0.05 +0.17 -0.15 0.00 0.00 — 13:27
93 Fraser Minten C +0.03 0.00 0.00 -0.03 0.00 -0.04 +0.10 — 13:37
88 David Pastrnak R -0.11 +0.75 +0.41 -1.40 +0.15 0.00 -0.02 — 19:04
1 Jeremy Swayman G -0.16 0.00 — — 0.00 — — -0.16 32:57
84 Tanner Jeannot L -0.18 0.00 +0.09 -0.12 -0.15 0.00 0.00 — 13:05
18 Pavel Zacha C -0.55 +0.70 +0.10 -1.42 0.00 +0.02 +0.05 — 18:57
27 Hampus Lindholm D -0.69 0.00 0.00 -0.74 0.00 0.00 +0.05 — 21:46
26 Andrew Peeke D -0.69 0.00 +0.02 -0.74 0.00 0.00 +0.03 — 20:57
39 Morgan Geekie C -0.76 0.00 +0.10 -0.99 +0.15 0.00 -0.02 — 17:34
28 Elias Lindholm C -1.06 0.00 +0.13 -1.01 -0.15 +0.01 -0.04 — 17:44
11 Casey Mittelstadt C -1.31 0.00 0.00 -1.32 0.00 0.00 +0.01 — 15:29
6 Mason Lohrei D -1.33 0.00 +0.02 -1.43 0.00 0.00 +0.08 — 17:26
29 Victor Soderstrom D -1.35 0.00 0.00 -1.38 0.00 0.00 +0.03 — 14:24
70 Joonas Korpisalo G -2.29 0.00 — — 0.00 — — -2.29 26:31

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.