Motion-blurred skater in a Buffalo Sabres sweater
Breakdown · ANA at BUF

Sabres hold off the Ducks

The verdict · earned

The Sabres earned it — the game and the expected-goals battle both.

ANA 3 · BUF 5
◆ By the ModelJul 12, 12:07 AMxG: xgboost-0.758Edited for clarityDrafted from NHL play-by-play by Backcheck's model, worded for clarity by an AI editor that may not change a number. Nobody at Backcheck was at the rink. How this works

The Ducks outshot the Sabres 36–32 but lost 5–3, a stark divergence between volume and outcome. Buffalo's dominance lay not in shot volume but in precision: they controlled 58% of 5v5 expected goals (4.80–3.49) and generated chances at nearly twice the efficiency (0.089 xG per shot versus Anaheim's 0.046).

That quality gap cascaded through the game. The Sabres claimed seven high-danger chances to the Ducks' five and converted them at a lethal rate. On the rush, where scoring should be cleanest, Buffalo scored five goals from 29 chances while Anaheim managed three from 32—a decisive efficiency edge that decided the match.

L. Dostal kept Anaheim closer than the underlying numbers deserved. His 0.871 SV% represented a +0.80 overperformance, making 27 saves on inferior chances. U. Luukkonen's 0.917 allowed Buffalo's efficiency advantage to translate directly into goals.

Josh Norris's backhander from the slot in the third period (19:49) served as the game's turning point, arriving when Buffalo already controlled play.

Finish rates in high-danger zones completed the story: the Sabres buried opportunities from prime scoring areas while Anaheim's 40% conversion rate (2 of 5) proved insufficient against the volume disadvantage.

The breakdown in twelve frames

Swipe it

Every number is from this page
Final · Jan 10
ANA
3
BUF
5

Sabres hold off the Ducks

Chances 3.5 – 4.8Did they deserve it? →
Did they deserve it?

The Sabres earned this one.

Expected goals · chance value
ANA
3.49
BUF
4.80
42% of the chances58%

The board read ANA 3, BUF 5. The chances read ANA 3.5, BUF 4.8.

Our xG model · NHL play-by-play · all situations
Luck check
BUF
+0.2
goals above expected
BUF4.80 expected · 5 scored
Expected
Scored
ANA3.49 expected · 3 scored
Expected
Scored

Both sides finished close to what their chances were worth. This one was earned on the ice.

PDO = sh% + sv% · drifts to 1.000 over a season
Every goal, in order
  1. P1 02:03BUFJ. Quinn0–1
  2. P2 07:22BUFT. Thompson0–2
  3. P3 07:09BUFB. Byram0–3
  4. P3 15:16ANAO. Zellweger1–3
  5. P3 16:00BUFJ. Quinn1–4
  6. P3 18:02ANAL. Carlsson2–4
  7. P3 19:12ANAM. McTavishPP3–4
+1 more on the full breakdown
NHL play-by-play · chance value from our xG model
Where the shots came from
ANA
52 shots
3
Final
95 shots
BUF
43 shots
5
ANA attackBUF attack
ANA BUF Goal
52
shots · 3 in
43
shots · 5 in
Every unblocked shot · press play to replay it
Chances by danger
ANABUF
2 / 5
1.27 xG
High danger
2 / 7
2.37 xG
0 / 14
1.46 xG
Medium
2 / 18
2.03 xG
1 / 57
0.77 xG
Low
1 / 29
0.40 xG

The Sabres buried 2 of 7 high-danger looks.

Danger tiers by our xG model · high ≥ 20% chance
In the net
B+
L. Dostal
+0.8
ANA · 27/31
B
U. Luukkonen
+0.5
BUF · 33/36
The numbers, checked
BACKCHECK

Sabres hold off the Ducks

A model, not a newsroom. Every number on these frames comes from the NHL's play-by-play and our own models. Nothing was watched, guessed or heard from anyone.

Read the full breakdown
backcheckreport.com
01 / 08 · Final
Every goal, in order

How it happened

NHL play-by-play
1stshots 8–12
  1. 02:03BUFJ. Quinn(R. McLeod, Z. Benson)0–1
2ndshots 14–11
  1. 07:22BUFT. Thompson(P. Krebs, J. Doan)0–2
3rdshots 14–9
  1. 07:09BUFB. Byram(T. Thompson, P. Krebs)0–3
  2. 15:16ANAO. Zellweger(J. LaCombe, M. Granlund)1–3
  3. 16:00BUFJ. Quinn(Z. Benson, O. Power)1–4
  4. 18:02ANAL. Carlsson(I. Moore)2–4
  5. 19:12ANAM. McTavishpower play(L. Carlsson, B. Sennecke)3–4
  6. 19:49BUFJ. Norrisempty net(A. Tuch)3–5

score reads ANA–BUF

Source · NHL play-by-play (api-web.nhle.com)
Process vs result

The numbers

XGBoost xG · NHL play-by-play
4.80
BUF chances
Goals their shots were worth
+0.2
Finishing
Goals above what those chances were worth
1.053
BUF puck luck
Above 1.000 — the bounces went their way
41.5%
Shot attempts
Under half — they were outshot
Split by club

Who controlled the game

3.49Expected goals4.80
BUF 58% of the chance quality
36Shots on goal32
5High-danger chances7
76All attempts (Corsi)54
Adjusted for score: ANA 64% · BUF 36%
Faceoffs · BUF won32%off50%neu58%def
Source · NHL play-by-play · XGBoost xG
How the game was won

The danger ladder

shotsgoalsexpected
High dangerslot & crease
ANA2 / 5 · 1.27 xG
BUF2 / 7 · 2.37 xG
Medium dangermid-range
ANA0 / 14 · 1.46 xG
BUF2 / 18 · 2.03 xG
Low dangerperimeter & point
ANA1 / 57 · 0.77 xG
BUF1 / 29 · 0.40 xG

ANA went 0-for-14 from medium danger on 1.46 expected goals — 1.5 left on the table.

Source · Backcheck xG model · NHL play-by-play
The luck layer

Finishing vs expected

expectedactual
ANA
3 G · 3.49 xG · -0.5
BUF
5 G · 4.80 xG · +0.2
0123456

ANA finished -0.5 against expected, BUF +0.2.

Source · Backcheck xG model
Shot types · rush and rebound chancesopen +
What they shot — and what went in

Shot diet

goalsshots
ANA
WRIST2/15
SLAP0/11
SNAP0/14
BACKHAND1/5
TIP IN0/6
DEFLECTED0/1
BAT0/0
OTHER0/24
BUF
WRIST1/24
SLAP0/7
SNAP2/2
BACKHAND1/6
TIP IN1/3
DEFLECTED0/0
BAT0/1
OTHER0/11
ANA
BUF
Off the rush
3 G on 32
2.00 xG
5 G on 29
3.19 xG
Off rebounds
0 G on 4
0.89 xG
0 G on 5
0.99 xG

Wrist shots carried the volume: ANA went 2-for-15, BUF 1-for-24. BUF scored 5 of theirs off the rush.

Source · Backcheck xG model · NHL shot types
New to these numbers?

Two things happened in this game: who created the better chances, and who put the puck in the net. They are not the same thing, and this page separates them on purpose.

The one to watch is expected goals— the best single read on who deserved to win. When it disagrees with the scoreboard, that disagreement is usually the story. Nothing here is a projection; every figure is computed from this game's play-by-play. Full glossary →

xG
Expected goals. Every shot scored by how often that exact look goes in. 2.5 xG means the chances were worth about two and a half goals.
HD
High-danger chances — shots from the slot and the crease, where shots actually become goals.
Corsi
Every shot attempt, including the ones that missed or got blocked. A rough read on who had the puck.
Adj.
Score-adjusted. Teams that trail shoot more and teams that lead sit back, so this corrects the attempt count for the scoreboard.
GSAx
Goals saved above expected. A positive number means the goalie stopped more than an average goalie would have on those shots.
PDO
Shooting % plus save % — a luck gauge. It sits near 1.000 over a season, so a game far from it usually means the bounces decided it.
Shot by shot

In the net

Graded on goals saved above expected
L. Dostal
ANA · 27/31 · .871
+0.8
saved above expected
B+
the night
By dangerG/attxGsaved
High danger2/72.4+0.4
Medium2/182.0+0.0
Low1/290.4-0.6

A+ ≥ +2.5 saved above expected · A ≥ +1.5 · B+ ≥ +0.75 · B ≥ +0.25 · C ≥ −0.25 · D ≥ −0.75 · F below −1.5

U. Luukkonen
BUF · 33/36 · .917
+0.5
saved above expected
B
the night
By dangerG/attxGsaved
High danger2/51.3-0.7
Medium0/141.5+1.5
Low1/570.8-0.2

A+ ≥ +2.5 saved above expected · A ≥ +1.5 · B+ ≥ +0.75 · B ≥ +0.25 · C ≥ −0.25 · D ≥ −0.75 · F below −1.5

95 shots · press play to watch the game back

Where the shots came from

NHL play-by-play coordinates
ANA
52 shots
3
Final
95 shots
BUF
43 shots
5
ANA attackBUF attack
ANA BUF Goal

Each club shoots toward its own end — ANA left, BUF right — the way you would watch it. A dot's size is how dangerous the look was, from distance and angle; it is a proxy for shot quality, not the xG model the article is written from. Hover a dot for the shooter and the clock.

Ranked from the box score

Three stars

Points first
Three stars · computed, not voted
L. Carlsson
#91 · C · ANA
1 G · 1 A · 5 SOG · 20:03 on ice
T. Thompson
#72 · C · BUF
1 G · 1 A · 3 SOG · 19:49 on ice
P. Krebs
#19 · C · BUF
0 G · 2 A · 1 SOG · 15:48 on ice · +1
Ranked from the box score — points first · Backcheck
What the model said beforehand

Before the game

Written Sat, Jan 10
Open the pre-game read
Written from the numbers

The read

Edited for clarity
◆ By the ModelJul 12, 12:06 AMEdited for clarityDrafted from NHL play-by-play by Backcheck's model, worded for clarity by an AI editor that may not change a number. Nobody at Backcheck was at the rink. How this works

The model projects a 2.7-2.7 game with the Sabres at 50% win probability. This is as close to a pick'em as you'll find.

Buffalo has won nine of its last 10, but Anaheim's recent form masks a structural advantage. The Ducks are -25 in goal differential over that same stretch, yet they control territory: 52.0% xG share and 52.0% Corsi% at 5v5 suggest they're generating more high-quality chances than they're allowing. Buffalo, by contrast, sits at 50.0% xG and 49.0% Corsi%—the slight edge elsewhere.

The risk tilts both ways. Buffalo's 1.020 PDO means the Sabres have been fortunate on both conversion and prevention; regression is likely. Anaheim's 0.981 PDO tells the opposite story—they're due for positive variance, which could look like a breakthrough if it arrives tonight.

Beckett Sennecke leads Anaheim's scoring at 1.03 xG/60 with 20 goals, 8 from high-danger areas. His 13.5% shooting rate suggests room for variance to work in his favor. Cutter Gauthier's 0.99 xG/60 and 25 goals come with a 12.9% shooting rate; whether that efficiency holds bears watching.

Jason Zucker anchors Buffalo's attack at 1.07 xG/60 with 14 goals, 6 from high-danger areas. He's shooting at 15.1%—elevated enough that normalizing downward is plausible. Josh Doan, at 1.01 xG/60 with 15 goals, rounds out the primary threats.

Both C. Ellis for Anaheim and V. Husso for Buffalo are on back-to-backs. Backup appearances or fatigued starters could tilt play. The territorial advantage Anaheim enjoys at even strength—a 52.0% Corsi figure—suggests they'll dictate pace, but Buffalo's recent success has come despite slight possession disadvantage, which points to either superior execution or variance working in their favor. Tonight will likely determine which.

What the model said beforehand

The model's lean

BUF 51%
50%
BUF
Model favorite
50%
50%
ANA50BUF

BUF by 0 points of win probability — effectively a coin flip. Projected score ANA 2.7–2.7 BUF; 18% chance it's tied after 60.

Source · Backcheck Poisson projection · season scoring rates
Season rates · 5v5

Tale of the tape

NHL stats API · our xG
ANA← edge
edge →BUF
52.0%50.0%
52.0%49.0%
2.802.55
2.592.55
2.092.35
2.321.90
0.9811.020

The season numbers split 3–3 — no clear process edge — and the luck row (0.981 vs 1.020) says BUF has been getting the bounces, which tends not to last.

Source · NHL stats API + our xG · 5v5
Form · Last 10
ANA
1-8-1
-25 GD · 1d rest
BUF
9-1-0
+15 GD · 1d rest
0.981
ANA PDO
Luck gauge · drifts to 1.000
1.020
BUF PDO
Luck gauge · drifts to 1.000
What decides it

Keys to the game

Where the edges live
  • The Ducks drive Corsi at 52.0% — expect territorial tilt.
Regression watch
  • The Sabres' PDO is 1.020 — running hot, expect some regression.
  • The Ducks' PDO is 0.981 — running cold, due for positive regression.
Things to watch
  • The Ducks drive Corsi at 52.0% — expect territorial tilt.
  • C. Ellis is on a back-to-back — watch for a backup start or a tired starter.
  • V. Husso is on a back-to-back — watch for a backup start or a tired starter.
  • The Sabres are the hotter team by points pace (9-1-0 in their last 10).
  • The Ducks are underwater at -25 goal differential over their last 10.
  • The Sabres' PDO is 1.020 — running hot, expect some regression.
Last game's lineup · confirmed at warm-up

Lineups

NHL box score
ANA
Expected in goal
V. Husso
back-to-back.882 last start
Backup Lukas Dostal · -2.9 GSAx this season
Back-to-back: the backup often gets this one. Treat the starter as unconfirmed.

No completed game on file for this club yet.

BUF
Expected in goal
C. Ellis
back-to-back.938 last start
Backup Ukko-Pekka Luukkonen · +10.5 GSAx this season
Back-to-back: the backup often gets this one. Treat the starter as unconfirmed.

No completed game on file for this club yet.

Lineups are the players who dressed in each club's last game, with their minutes; clubs confirm tonight's at warm-up. Every player this preview names was in that lineup.

Computed danger · scouting

Players to watch

NHL stats API · our xG
ANA
Beckett Sennecke20G 19A
1.03 xG/60 · 8 HD · 13.5% sh
Cutter Gauthier25G 16A
0.99 xG/60 · 2 HD · 12.9% sh
BUF
Jason Zucker14G 14A
1.07 xG/60 · 6 HD · 15.1% sh
Josh Doan15G 18A
1.01 xG/60 · 2 HD · 11.5% sh
Keep going

Where to next