| Team | 1 | 2 | 3 | Total |
|---|---|---|---|---|
| BUF | 2 | 1 | 2 | 5 |
| OTT | 0 | 1 | 1 | 2 |
| Period | Time | Team | Scorer | Assists | Score |
|---|---|---|---|---|---|
| 1 | 8:38 | BUF | Alex Tuch | Mattias Samuelsson, Jason Zucker | 1-0 |
| 1 | 11:51 | BUF | Rasmus Dahlin | Jack Quinn, Mattias Samuelsson | 2-0 |
| 2 | 12:36 | BUF | Tage Thompson | JJ Peterka, Rasmus Dahlin | 3-0 |
| 2 | 13:46 | OTT | Claude Giroux | Tyler Kleven, Linus Ullmark | 3-1 |
| 3 | 9:59 | BUF | Peyton Krebs | Unassisted | 4-1 |
| 3 | 10:22 | OTT | Jake Sanderson | Michael Amadio, Artem Zub | 4-2 |
| 3 | 17:21 | BUF | Ryan McLeod (SH) | Alex Tuch, Connor Clifton | 5-2 |
| Period | Time | Team | Player | Penalty | Minutes |
|---|---|---|---|---|---|
| 1 | 4:30 | BUF | Jacob Bernard-Docker | High-Sticking | 2 |
| 1 | 8:44 | BUF | JJ Peterka | Interference | 2 |
| 1 | 15:51 | BUF | Beck Malenstyn | Delay of Game (Puck Over the Glass | 2 |
| 2 | 11:23 | OTT | Claude Giroux | Interference | 2 |
| 2 | 11:23 | BUF | Peyton Krebs | Embellishment | 2 |
| 2 | 19:12 | OTT | Artem Zub | Interference | 2 |
| 3 | 6:56 | OTT | Shane Pinto | Roughing | 2 |
| 3 | 6:56 | BUF | Bowen Byram | Roughing | 2 |
| 3 | 16:25 | BUF | Bowen Byram | Tripping | 2 |
| Goalie | Team | Saves | Shots | Save % | TOI |
|---|---|---|---|---|---|
| James Reimer | BUF | 33 | 35 | 94.3% | 60:00 |
| Linus Ullmark | OTT | 17 | 21 | 81.0% | 56:55 |