Game Recap
The Calgary Flames defeated the Boston Bruins 2-1 in overtime on December 29, 2025. The Calgary Flames controlled play with 47.4% Corsi and generated 5.23 expected goals compared to 4.24 from the Boston Bruins at 5-on-5, suggesting the result was well-earned. The Calgary Flames created 7 high-danger scoring chances compared to 6 from the Boston Bruins at 5-on-5. Viktor Arvidsson was the most dangerous skater with 1.43 individual expected goals on 4 shots at 5-on-5. The Boston Bruins outshot the Calgary Flames 26-21 in total shots on goal.
← Back to Games

- xG Gameflow — cumulative expected goals chart tracking each team's xG as Boston Bruins vs Calgary Flames progressed on Dec 29, 2025
- Shot heatmap — where shots were taken on the ice, color-coded by scoring probability
- Event timeline — every goal, penalty, and key play mapped chronologically
- Player matchup grid — head-to-head on-ice performance in Corsi and expected goals
- Strength filter — 5v5 by default, with options for power play, penalty kill, and all situations
BOS1 - 2CGY (OT)
Dec 29, 2025 · Regular Season
Overview
| Period | Corsi | Fenwick | Shots | SC | HDSC | xG | Goals | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| F | A | % | F | A | % | F | A | % | F | A | % | F | A | % | F | A | % | F | A | % | ||
| CGY | P1 | 16 | 20 | 44.4 | 12 | 13 | 48.0 | 8 | 9 | 47.1 | 11 | 14 | 44.0 | 5 | 3 | 62.5 | 2.62 | 2.63 | 49.9 | 0 | 1 | 0.0 |
| P2 | 22 | 11 | 66.7 | 13 | 9 | 59.1 | 9 | 7 | 56.3 | 16 | 7 | 69.6 | 2 | 1 | 66.7 | 2.56 | 1.53 | 62.6 | 1 | 0 | 100.0 | |
| P3 | 8 | 16 | 33.3 | 3 | 11 | 21.4 | 1 | 8 | 11.1 | 7 | 8 | 46.7 | 1 | 3 | 25.0 | 0.84 | 1.19 | 41.4 | 0 | 0 | — | |
| OT | 3 | 3 | 50.0 | 3 | 3 | 50.0 | 3 | 2 | 60.0 | 2 | 2 | 50.0 | 0 | 1 | 0.0 | 0.45 | 0.78 | 36.6 | 1 | 0 | 100.0 | |
| Total | 49 | 50 | 49.5 | 31 | 36 | 46.3 | 21 | 26 | 44.7 | 36 | 31 | 53.7 | 8 | 8 | 50.0 | 6.47 | 6.13 | 51.4 | 2 | 1 | 66.7 | |
| BOS | P1 | 20 | 16 | 55.6 | 13 | 12 | 52.0 | 9 | 8 | 52.9 | 14 | 11 | 56.0 | 3 | 5 | 37.5 | 2.63 | 2.62 | 50.1 | 1 | 0 | 100.0 |
| P2 | 11 | 22 | 33.3 | 9 | 13 | 40.9 | 7 | 9 | 43.8 | 7 | 16 | 30.4 | 1 | 2 | 33.3 | 1.53 | 2.56 | 37.4 | 0 | 1 | 0.0 | |
| P3 | 16 | 8 | 66.7 | 11 | 3 | 78.6 | 8 | 1 | 88.9 | 8 | 7 | 53.3 | 3 | 1 | 75.0 | 1.19 | 0.84 | 58.6 | 0 | 0 | — | |
| OT | 3 | 3 | 50.0 | 3 | 3 | 50.0 | 2 | 3 | 40.0 | 2 | 2 | 50.0 | 1 | 0 | 100.0 | 0.78 | 0.45 | 63.4 | 0 | 1 | 0.0 | |
| Total | 50 | 49 | 50.5 | 36 | 31 | 53.7 | 26 | 21 | 55.3 | 31 | 36 | 46.3 | 8 | 8 | 50.0 | 6.13 | 6.47 | 48.6 | 1 | 2 | 33.3 | |
Win Probability
CGY Favored
BOS Favored
Goal
Power Play
Gameflow — Cumulative xG
CGY
BOS
Goal
Shot Density Heatmap
BOS Attempts
CGY Attempts
Individual Event Map
BOS ShootCGY Shoot
Hit
Hit Taken
Shot Blocked
Giveaway
Player Matchup Grid
This grid shows how every skater on the home team (CGY) performed against every skater on the away team (BOS) when they were on the ice at the same time.
- Rows = CGY players, Columns = BOS players. Forwards are listed first, then defensemen.
- Green = the CGY player had a favorable matchup (above 50%). Red = unfavorable (below 50%).
- Values shown from the home team's perspective. Toggle between CF% (shot attempt share) and xGF% (expected goal share).
- Cells with fewer than 3 shared events are grayed out (insufficient sample). Hover over any cell for full details.
| CGY ↓ / BOS → | Lindholm | Geekie | Zacha | Mittelstadt | Minten | Khusnutdinov | Kuraly | Steeves | Kastelic | Eyssimont | Arvidsson | Pastrnak | McAvoy | Zadorov | Lindholm | Peeke | Lohrei | Aspirot |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kadri | 63 | 50 | 20 | 30 | 50 | 33 | 55 | 60 | 33 | 33 | 0 | 22 | 46 | 52 | 44 | 57 | 29 | 40 |
| Sharangovich | 69 | 53 | 14 | 27 | 44 | 25 | 55 | 75 | 40 | 33 | 0 | 13 | 50 | 50 | 63 | 63 | 25 | 33 |
| Backlund | 50 | 40 | 33 | 30 | 36 | 56 | 60 | 40 | 86 | 75 | 30 | 42 | 50 | 75 | 33 | 67 | 63 | 43 |
| Frost | 40 | 0 | 70 | 70 | 100 | 67 | 83 | 0 | 67 | 67 | 75 | 0 | 57 | 56 | 78 | 67 | 50 | 67 |
| Zary | 17 | 17 | 73 | 70 | 100 | 100 | 88 | 0 | 100 | 67 | 69 | 50 | 50 | 56 | 77 | 71 | 33 | 78 |
| Beecher | 25 | 0 | 0 | 0 | 33 | 50 | 67 | 0 | 67 | 67 | 0 | 25 | 29 | 25 | 0 | 29 | 40 | 0 |
| Coleman | 57 | 40 | 43 | 38 | 54 | 57 | 80 | 40 | 86 | 75 | 38 | 45 | 73 | 90 | 50 | 83 | 71 | 25 |
| Farabee | 61 | 47 | 0 | 36 | 25 | 40 | 29 | 78 | 33 | 33 | 14 | 9 | 38 | 47 | 56 | 40 | 25 | 43 |
| Huberdeau | 43 | 0 | 50 | 54 | 100 | 67 | 88 | 0 | 75 | 67 | 60 | — | 44 | 44 | 67 | 67 | 33 | 78 |
| Lomberg | 50 | 20 | 20 | 0 | 25 | 50 | 50 | 0 | 67 | 50 | 0 | 33 | 67 | 38 | 20 | 33 | 43 | 20 |
| Coronato | 75 | 50 | 33 | 67 | 57 | 57 | 100 | 100 | 100 | 100 | 67 | 50 | 80 | 67 | 29 | 80 | 71 | 25 |
| Klapka | 50 | 25 | 14 | 0 | 33 | 50 | 75 | 0 | 75 | 67 | 0 | 43 | 50 | 25 | 0 | 44 | 50 | 0 |
| Weegar | 64 | 44 | 25 | 39 | 22 | 50 | 80 | 56 | 100 | 80 | 25 | 23 | 50 | 48 | 53 | 58 | 38 | 45 |
| Andersson | 47 | 27 | 46 | 30 | 60 | 58 | 56 | 14 | 33 | 0 | 50 | 46 | 31 | 39 | 50 | 71 | 62 | 63 |
| Kuznetsov | 62 | 44 | 36 | 53 | 33 | 60 | 60 | 55 | 100 | 80 | 40 | 27 | 52 | 50 | 50 | 44 | 44 | 56 |
| Bahl | 31 | 25 | 31 | 23 | 50 | 58 | 20 | 29 | 33 | 0 | 38 | 40 | 7 | 18 | 60 | 58 | 54 | 63 |
| Brzustewicz | 67 | 50 | 50 | 67 | 0 | 0 | 63 | 100 | 57 | 57 | 67 | 0 | 83 | 86 | 50 | 40 | 0 | 33 |
| Hanley | 20 | 20 | 25 | 50 | 33 | 0 | 57 | 100 | 57 | 57 | 50 | 0 | 56 | 75 | 33 | 20 | 0 | 20 |
