Thursday, January 29, 2026
No impact calculated for this game. Impacts are calculated for games in the next 7 days.
Highlights
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
CGY 54%Deserve to win 46% MIN
CGY MIN
2.58 Expected goals 2.82
1 Goals (no shootout) 4
1.64 Expected goals, 5 on 5 1.57
64 Shot attempts 57
47 Unblocked attempts 39
30 Shots on goal 24
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
17:38
CGY
Pulled goalie
Pulled goalie · Pulled Cooley, down 3–1
With 2:22 left; MIN scored at 17:45 of the 3rd (1–4)
Shot map
CGY shoots ←Bigger circle: higher xG; filled: goal → MIN shoots
Zach Whitecloud: wrist, 38 ft, xG 0.06 (P1 1:26)
Danila Yurov: wrist, 60 ft, xG 0.01 (P1 2:29)
Yegor Sharangovich: wrist, 36 ft, xG 0.02 (P1 3:34)
Martin Pospisil: wrist, 19 ft, xG 0.09 (P1 4:40)
Jonathan Huberdeau: tip-in, 27 ft, xG 0.04 (P1 5:45)
Jake Middleton: wrist, 154 ft, xG 0.00 (P1 6:37)
Connor Zary: wrist, 18 ft, xG 0.06 (P1 7:20)
Connor Zary: backhand, 8 ft, xG 0.13 (P1 7:22)
Nazem Kadri: snap, 28 ft, xG 0.10 (P1 7:41)
Jonathan Huberdeau: backhand, 8 ft, xG 0.03 (P1 7:42)
MacKenzie Weegar: slap, 48 ft, xG 0.05 (P1 7:48)
Jonathan Huberdeau: tip-in, 9 ft, xG 0.09 (P1 7:54)
Nazem Kadri: backhand, 9 ft, xG 0.03 (P1 8:08)
Matt Coronato: wrist, 46 ft, xG 0.01 (P1 9:55)
Zach Whitecloud: wrist, 61 ft, xG 0.01 (P1 11:40)
Zach Whitecloud: snap, 61 ft, xG 0.01 (P1 11:50)
Yegor Sharangovich: wrist, 38 ft, xG 0.06 (P1 13:09)
Yegor Sharangovich: wrist, 55 ft, xG 0.01 (P1 13:13)
Yan Kuznetsov: wrist, 55 ft, xG 0.01 (P1 13:17)
Mikael Backlund: wrist, 49 ft, xG 0.02 (P1 14:12)
Quinn Hughes: slap, 62 ft, xG 0.02 (P1 17:17)
Kirill Kaprizov: slap, 29 ft, xG 0.04 (P1 17:55)
Joel Farabee: wrist, 35 ft, xG 0.03 (P1 18:17)
Matt Coronato: snap, 22 ft, xG 0.15 (P1 19:06)
Matt Coronato: wrist, 78 ft, xG 0.00 (P2 0:50)
Yan Kuznetsov: wrist, 61 ft, xG 0.02 (P2 1:11)
Kirill Kaprizov: wrist, 36 ft, xG 0.05 (P2 2:05)
Matt Boldy: wrist, 17 ft, xG 0.04 (P2 4:09)
Mikael Backlund: tip-in, 11 ft, xG 0.06 (P2 4:34)
Ryan Hartman: wrist, 16 ft, xG 0.05 (P2 6:10)
Marcus Foligno: wrist, 22 ft, xG 0.02 (P2 6:59)
Joel Eriksson Ek: wrist, 47 ft, xG 0.01 (P2 8:01)
Jake Middleton: tip-in, 23 ft, xG 0.07 (P2 8:28)
Martin Pospisil: wrist, 33 ft, xG 0.07 (P2 9:25)
Nazem Kadri: wrist, 29 ft, xG 0.12 (P2 9:50)
Martin Pospisil: wrist, 28 ft, xG 0.01 (P2 9:51)
Brock Faber: wrist, 44 ft, xG 0.00 (P2 10:27)
Yan Kuznetsov: slap, 63 ft, xG 0.02 (P2 10:52)
Mikael Backlund: slap, 48 ft, xG 0.02 (P2 11:25)
Hunter Brzustewicz: snap, 63 ft, xG 0.01 (P2 12:02)
Adam Klapka: tip-in, 11 ft, xG 0.09 (P2 12:57)
Adam Klapka: slap, 24 ft, xG 0.13 (P2 13:11)
Quinn Hughes: snap, 61 ft, xG 0.02 (P2 14:21)
Brock Faber: wrist, 56 ft, xG 0.01 (P2 15:06)
David Jiricek: wrist, 66 ft, xG 0.01 (P2 15:12)
Marcus Foligno: bat, 14 ft, xG 0.07 (P2 15:31)
Jonathan Huberdeau: wrist, 42 ft, xG 0.04 (P2 15:43)
Yegor Sharangovich: wrist, 43 ft, xG 0.04 (P2 17:08)
Ryan Hartman: wrist, 90 ft, xG 0.00 (P2 19:58)
Joel Eriksson Ek: snap, 16 ft, xG 0.04 (P3 0:46)
Daemon Hunt: wrist, 35 ft, xG 0.07 (P3 2:30)
Yakov Trenin: wrist, 24 ft, xG 0.07 (P3 2:50)
Marcus Foligno: wrist, 23 ft, xG 0.11 (P3 3:29)
Kirill Kaprizov: tip-in, 20 ft, xG 0.02 (P3 4:13)
Matvei Gridin: wrist, 39 ft, xG 0.06 (P3 4:49)
David Jiricek: wrist, 56 ft, xG 0.01 (P3 5:41)
Matvei Gridin: wrist, 46 ft, xG 0.04 (P3 6:45)
Morgan Frost: wrist, 34 ft, xG 0.06 (P3 7:38)
Mikael Backlund: wrist, 20 ft, xG 0.07 (P3 7:48)
Connor Zary: wrist, 13 ft, xG 0.15 (P3 8:02)
Quinn Hughes: snap, 27 ft, xG 0.19 (P3 8:20)
Justin Kirkland: wrist, 25 ft, xG 0.02 (P3 8:40)
Quinn Hughes: wrist, 91 ft, xG 0.00 (P3 10:25)
Matt Coronato: wrist, 30 ft, xG 0.06 (P3 11:12)
Matt Coronato: wrap-around, 6 ft, xG 0.09 (P3 11:30)
Mats Zuccarello: wrist, 44 ft, xG 0.04 (P3 15:41)
Kirill Kaprizov: slap, 34 ft, xG 0.09 (P3 15:47)
Vladimir Tarasenko: backhand, 36 ft, xG 0.03 (P3 16:03)
Matt Boldy: slap, 43 ft, xG 0.10 (P3 16:11)
Matt Boldy: snap, 34 ft, xG 0.15 (P3 16:34)
Quinn Hughes: wrist, 38 ft, xG 0.08 (P3 16:41)
Matt Boldy: snap, 29 ft, xG 0.09 (P3 16:55)
Kirill Kaprizov: snap, 26 ft, xG 0.12 (P3 16:57)
Matvei Gridin: wrist, 27 ft, xG 0.03 (P3 17:36)
Adam Klapka: wrist, 19 ft, xG 0.02 (P3 18:11)
Joel Farabee: wrist, 75 ft, xG 0.00 (P3 18:24)
Marcus Johansson: snap, 18 ft, xG 0.24 (P3 18:34)
Matvei Gridin: snap, 24 ft, xG 0.14 (P3 19:05)
Matvei Gridin: wrist, 5 ft, xG 0.04 (P3 19:06)
Vinnie Hinostroza: tip-in, 11 ft, xG 0.09 (P3 19:18)
Marcus Foligno: wrist, 15 ft, xG 0.03 (P3 19:29)
Danila Yurov: GOAL, snap, 18 ft, xG 0.14 (P1 2:43)
Vinnie Hinostroza: GOAL, wrist, 19 ft, xG 0.13 (P1 10:37)
Morgan Frost: GOAL, wrist, 24 ft, xG 0.15 (P3 5:49)
Matt Boldy: GOAL, tip-in, 14 ft, xG 0.10 (P3 17:17)
Kirill Kaprizov: GOAL, wrist, 86 ft, xG 0.46 (P3 17:45)
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.
All columns
Box score
Calgary Flames
Goalie
SA GA
SV SV%
xGA
GSAx
Devin Cooley
23 3 20
.870
2.36
-0.64
Minnesota Wild
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.
Calgary Flames
Player
Rating
Points
Shots
On ice
Pen
FO
Other
GSAx
TOI
10 Jonathan Huberdeau L
+1.21
+0.70
+0.13
+0.42
0.00
0.00
-0.04
—
16:48
16 Morgan Frost C
+1.10
+0.75
+0.13
-0.14
+0.15
+0.06
+0.14
—
16:25
27 Matt Coronato R
+0.55
0.00
+0.21
+0.31
0.00
+0.01
+0.02
—
18:15
28 Zach Whitecloud D
+0.31
0.00
+0.06
+0.20
0.00
0.00
+0.05
—
24:26
44 Joel Hanley D
+0.29
0.00
0.00
+0.24
0.00
0.00
+0.05
—
12:20
48 Hunter Brzustewicz D
+0.25
0.00
+0.01
+0.20
0.00
0.00
+0.05
—
16:15
7 Kevin Bahl D
+0.23
0.00
0.00
+0.15
0.00
0.00
+0.08
—
23:08
47 Connor Zary C
+0.22
0.00
+0.22
+0.01
0.00
-0.01
0.00
—
16:22
76 Martin Pospisil C
+0.22
0.00
+0.11
+0.11
0.00
0.00
0.00
—
12:36
91 Nazem Kadri C
+0.20
0.00
+0.16
+0.08
0.00
-0.02
-0.02
—
16:12
11 Mikael Backlund C
+0.12
0.00
+0.11
+0.11
0.00
-0.04
-0.06
—
20:30
17 Yegor Sharangovich C
+0.06
0.00
+0.09
-0.05
0.00
0.00
+0.02
—
18:05
52 MacKenzie Weegar D
+0.03
0.00
+0.04
-0.17
-0.15
0.00
+0.31
—
20:02
43 Adam Klapka R
-0.03
0.00
+0.16
-0.34
+0.15
0.00
0.00
—
9:17
92 Matvei Gridin R
-0.08
0.00
+0.20
-0.26
0.00
-0.01
-0.01
—
16:26
37 Yan Kuznetsov D
-0.20
0.00
+0.03
-0.26
0.00
0.00
+0.03
—
17:50
23 Justin Kirkland C
-0.34
0.00
+0.02
-0.34
0.00
0.00
-0.02
—
10:35
86 Joel Farabee L
-0.64
0.00
+0.02
-0.67
0.00
0.00
+0.01
—
11:25
1 Devin Cooley G
-0.64
0.00
—
—
0.00
—
—
-0.64
59:53
Minnesota Wild
Player
Rating
Points
Shots
On ice
Pen
FO
Other
GSAx
TOI
97 Kirill Kaprizov L
+1.89
+1.45
+0.50
-0.06
0.00
0.00
0.00
—
19:27
32 Filip Gustavsson G
+1.58
0.00
—
—
0.00
—
—
+1.58
60:00
18 Vinnie Hinostroza C
+1.31
+0.75
+0.14
+0.41
0.00
0.00
0.00
—
8:21
22 Danila Yurov R
+1.09
+0.75
+0.10
+0.25
0.00
-0.01
0.00
—
13:58
48 Daemon Hunt D
+1.06
+0.55
+0.04
+0.34
0.00
0.00
+0.13
—
15:09
91 Vladimir Tarasenko R
+0.99
+0.70
+0.02
+0.04
+0.15
0.00
+0.08
—
13:26
5 Jake Middleton D
+0.83
+0.70
+0.04
+0.06
0.00
0.00
+0.03
—
20:22
43 Quinn Hughes D
+0.74
+0.55
+0.20
+0.14
-0.15
0.00
0.00
—
27:57
12 Matt Boldy L
+0.55
+0.75
+0.31
-0.51
0.00
+0.01
0.00
—
17:26
17 Marcus Foligno L
+0.54
0.00
+0.16
+0.37
0.00
+0.01
0.00
—
8:34
7 Brock Faber D
+0.52
+0.70
+0.01
-0.04
-0.15
0.00
0.00
—
24:01
46 Jared Spurgeon D
+0.47
+0.55
0.00
-0.31
+0.15
0.00
+0.08
—
18:40
78 Nico Sturm C
+0.32
0.00
0.00
+0.29
0.00
-0.02
+0.05
—
9:48
38 Ryan Hartman R
+0.24
0.00
+0.04
+0.06
-0.15
+0.02
+0.28
—
18:17
13 Yakov Trenin C
+0.17
0.00
+0.05
+0.13
0.00
0.00
0.00
—
16:08
55 David Jiricek D
+0.15
0.00
+0.01
+0.16
0.00
0.00
-0.02
—
12:38
14 Joel Eriksson Ek C
+0.05
+0.55
+0.03
-0.52
0.00
+0.01
-0.02
—
16:27
36 Mats Zuccarello R
-0.10
0.00
+0.03
-0.06
0.00
-0.01
-0.06
—
19:27
90 Marcus Johansson L
-0.18
0.00
+0.16
-0.34
0.00
0.00
0.00
—
13:54
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.