| Team | 1 | 2 | 3 | Total |
|---|---|---|---|---|
| CGY | 2 | 0 | 2 | 4 |
| BUF | 2 | 0 | 1 | 3 |
| Period | Time | Team | Scorer | Assists | Score |
|---|---|---|---|---|---|
| 1 | 0:49 | CGY | Jonathan Huberdeau | Elias Lindholm, Rasmus Andersson | 1-0 |
| 1 | 6:06 | BUF | Erik Johnson | Rasmus Dahlin, Kyle Okposo | 1-1 |
| 1 | 10:15 | CGY | Walker Duehr | A.J. Greer, Yegor Sharangovich | 2-1 |
| 1 | 14:28 | BUF | Tage Thompson (PP) | Dylan Cozens, Rasmus Dahlin | 2-2 |
| 3 | 1:52 | CGY | Blake Coleman | Matthew Coronato, Dennis Gilbert | 3-2 |
| 3 | 3:14 | BUF | JJ Peterka | Dylan Cozens, Henri Jokiharju | 3-3 |
| 3 | 4:35 | CGY | Adam Ruzicka | Nazem Kadri, Dillon Dube | 4-3 |
| Period | Time | Team | Player | Penalty | Minutes |
|---|---|---|---|---|---|
| 1 | 1:28 | BUF | Tyson Jost | Hooking | 2 |
| 1 | 6:47 | CGY | Walker Duehr | Slashing | 2 |
| 1 | 10:36 | CGY | Nikita Zadorov | Roughing | 2 |
| 1 | 13:53 | CGY | MacKenzie Weegar | Tripping | 2 |
| 1 | 15:01 | BUF | Casey Mittelstadt | Hooking | 2 |
| 2 | 6:28 | CGY | Dillon Dube | Cross-Checking | 2 |
| 2 | 16:27 | BUF | Connor Clifton | Tripping | 2 |
| 3 | 6:35 | BUF | Connor Clifton | Tripping | 2 |
| 3 | 12:33 | CGY | Andrew Mangiapane | High-Sticking | 2 |
| 3 | 12:33 | BUF | Rasmus Dahlin | Roughing | 2 |
| 3 | 12:33 | CGY | Andrew Mangiapane | Roughing | 2 |
| 3 | 18:53 | BUF | Too Many Men on the Ice | 2 |
| Goalie | Team | Saves | Shots | Save % | TOI |
|---|---|---|---|---|---|
| Daniel Vladar | CGY | 24 | 27 | 88.9% | 60:00 |
| Devon Levi | BUF | 32 | 36 | 88.9% | 58:58 |