For the complete documentation index, see llms.txt. Markdown variants are available only for registry-approved public pages by appending .md to eligible URLs or by sending Accept: text/markdown.
Sync your league to My Playbook for custom advice

2025 Week 16 · Sun, Dec 21, 2025 · FirstEnergy Stadium

Buffalo BillsWinner

23

Cleveland Browns

20

BUF -10.5 no coverO 41.5 ✓25°F · 16 mph

Buffalo Bills 23–20 — decided on the final possessions. Biggest swing: Q4 5:08, BUF +11% win probability on one snap. Played in 16 mph wind — weigh that when reading the passing lines.

The game in one curve — scrub to replay it

Win probability

0255075100End Q1End Q2End Q3CLEBUF
Q4 · 5:08BUF 23CLE 20CLE ball · 4th & 2BUF 81%

(5:08) (Shotgun) 12-S.Sanders sacked at CLE 31 for -13 yards (50-G.Rousseau).

Market-anchored home win probability, play by play. Drag across the curve or use arrow keys to replay the game; gold diamonds mark the biggest momentum swings — tap one to jump there.

Highest-leverage plays

  1. Q4 · 5:08BUF +11% win prob(5:08) (Shotgun) 12-S.Sanders sacked at CLE 31 for -13 yards (50-G.Rousseau).
  2. Q1 · 12:45CLE +9% win prob(12:45) (Shotgun) 12-S.Sanders pass short middle to 83-M.Corley to 50 for -6 yards. Lateral to 16-I.Bond pushed ob at BUF 23 for 27 yards (27-T.White).
  3. Q4 · 2:53BUF +9% win prob(2:53) 17-J.Allen pass incomplete short right to 88-D.Knox.
  4. Q4 · 7:55BUF +8% win prob(7:55) (Shotgun) 17-J.Allen sacked at BUF 23 for -13 yards (49-C.Schwesinger).

How the points landed

Scoring summary

  1. Q1 · 10:47CLE Touchdown

    (10:47) 12-S.Sanders pass short right to 44-H.Fannin for 13 yards, TOUCHDOWN. (kick good)

    Score after this play: BUF 0CLE 7
  2. Q1 · 7:58BUF Touchdown

    (7:58) 4-J.Cook up the middle for 44 yards, TOUCHDOWN. (kick good)

    Score after this play: BUF 7CLE 7
  3. Q2 · 12:57BUF Touchdown

    (12:57) (No Huddle) 26-Ty.Johnson up the middle for 2 yards, TOUCHDOWN.

    Score after this play: BUF 13CLE 7
  4. Q2 · 5:41CLE Field goal

    (5:41) 25-A.Szmyt 24 yard field goal is GOOD, Center-50-R.Sunahara, Holder-13-C.Bojorquez.

    Score after this play: BUF 13CLE 10
  5. Q2 · 2:27BUF Touchdown

    (2:27) (No Huddle) 4-J.Cook up the middle for 3 yards, TOUCHDOWN. (kick good)

    Score after this play: BUF 20CLE 10
  6. Q3 · 9:41BUF Field goal

    (9:41) 32-M.Badgley 41 yard field goal is GOOD, Center-69-R.Ferguson, Holder-19-M.Wishnowsky.

    Score after this play: BUF 23CLE 10
  7. Q3 · 1:39CLE Touchdown

    (1:39) 70-Z.Zinter and 98-A.Huntington reported in as eligible. 44-H.Fannin up the middle for 1 yard, TOUCHDOWN. (kick good)

    Score after this play: BUF 23CLE 17
  8. Q4 · 8:50CLE Field goal

    (8:50) 25-A.Szmyt 41 yard field goal is GOOD, Center-50-R.Sunahara, Holder-13-C.Bojorquez.

    Score after this play: BUF 23CLE 20

Down-to-down truth

Situational splits

MetricBillsBrowns
Offensive plays4864
Total yards261294 (edge)
Yards per play5.4 (edge)4.6
Expected points added / play0.06 (edge)-0.10
Success rate54% (edge)47%
Dropback rate48%58%
Dropback efficiency (EPA/play)-0.34-0.26 (edge)
Rush efficiency (EPA/play)0.43 (edge)0.13
Third downs2/88/14 (edge)
Red-zone trips → TDs0 → 00 → 0
Explosive plays (10+ rush / 20+ pass)48 (edge)
First downs gained on snaps1620 (edge)
Sacks taken2 (edge)3
Turnovers0 (edge)3

Browns outgained Bills 294–261 but lost the turnover battle 3–0. That was the game.

Who moved the needle

Top performers

Passing · CLE

Shedeur SandersQB

20/29, 157 yds, 1 TD, 2 INT

-11.7 expected points added · +1.4% completion over expected

Passing · BUF

Josh AllenQB

12/19, 130 yds, 0 TD, 0 INT

-8.5 expected points added · -0.9% completion over expected

Rushing · BUF

James CookRB

16 att, 117 yds, 2 TD

6.1 expected points added on the ground

Rushing · CLE

Raheim SandersRB

11 att, 42 yds, 0 TD

1.8 expected points added on the ground

Receiving · CLE

Trayveon WilliamsRB

4/4 for 38 yds, 0 TD

15% of team targets · 1.7 expected points added

Receiving · BUF

Khalil ShakirWR

4/5 for 34 yds, 0 TD

28% of team targets · -1.5 expected points added

Possession by possession

Drive chart

#TeamStartPlaysScrim ydsClockResult
1CLECLE 3110694:18Touchdown +7
2BUFBUF 207802:55Touchdown +7
3CLECLE 377424:52Interception
4BUFBUF 3910615:01Touchdown +6
5CLECLE 2914657:16Field goal +3
6BUFBUF 329683:15Touchdown +7
7CLECLE 405-20:47Defensive touchdown
8BUFBUF 144-121:30Punt
9CLEBUF 30200:06End of half
10BUFBUF 30582:14Punt
11CLECLE 204122:07Interception
12BUFCLE 25421:02Field goal +3
13CLECLE 3316678:01Touchdown +7
14BUFBUF 318363:06Turnover on downs
15CLECLE 348434:44Field goal +3
16BUFBUF 355-121:41Punt
17CLECLE 364-52:03Turnover on downs
18BUFCLE 305192:15Turnover on downs
19CLECLE 12531:09Punt
20BUFCLE 495111:38End of game

8 of 20 drives ended in points. Longest march: Bills gained 80 scrimmage yards over 7 plays for a touchdown.

Full stat lines

Box score

Buffalo Bills

Passing

PlayerC/AttYdsTDINTSackedEPA
Josh Allen12/19130002-8.5

Rushing

PlayerAttYdsAvgTDEPA
James Cook161177.326.1
Josh Allen7172.400.9
Ty Johnson3165.312.2
Ray Davis3144.700.4

Receiving

PlayerRecTgtYdsTDTgt shareEPA
Khalil Shakir4534028%-1.5
Jackson Hawes2226011%0.8
Tyrell Shavers1221011%-1.5
Ray Davis2220011%1.7
James Cook1217011%0.8
Dawson Knox1210011%-3.0
Josh Palmer11206%-0.4
Brandin Cooks01006%-0.7
Dalton Kincaid01006%-0.5

Defense (top contributors)

PlayerSoloAstSacksINTPD
Jordan Poyer650.511
Matt Milano450.000
Cole Bishop520.000
Terrel Bernard150.000
Taron Johnson230.000
Phidarian Mathis220.000
Tre'Davious White220.001
Andre Jones Jr.130.000
DaQuan Jones220.011
Dorian Williams130.000

Cleveland Browns

Passing

PlayerC/AttYdsTDINTSackedEPA
Shedeur Sanders20/29157122-11.7
Corey Bojorquez0/10000-1.8

Rushing

PlayerAttYdsAvgTDEPA
Shedeur Sanders44912.305.1
Raheim Sanders11423.801.8
Malachi Corley33010.001.3
Quinshon Judkins8222.80-0.7
Trayveon Williams3175.701.5
Harold Fannin Jr.111.010.7
Isaiah Bond1-1-1.00-0.9

Receiving

PlayerRecTgtYdsTDTgt shareEPA
Trayveon Williams4438015%1.7
Harold Fannin Jr.4634122%0.5
Quinshon Judkins5629022%-3.3
Jerry Jeudy3412015%2.3
Malachi Corley2411015%-5.1
Cedric Tillman11804%-0.6
Raheim Sanders11404%-0.1
Brenden Bates01004%-1.0

Defense (top contributors)

PlayerSoloAstSacksINTPD
Carson Schwesinger591.000
Devin Bush540.000
Ronnie Hickman Jr.240.000
Myles Harden310.001
Mohamoud Diabate310.000
Grant Delpit220.000
Shelby Harris210.000
Jerome Baker110.000
D'Angelo Ross110.000
Tyson Campbell200.000

Closing number vs result

Betting context

Closing spread
BUF -10.5
Closing total
41.5
BUF moneyline
-575
CLE moneyline
+425

Bills closed -10.5, won by 3 — but didn't cover.

Total closed 41.5; the game landed 43 — over by 1.5.

Conditions and crew

Game environment

Venue
FirstEnergy Stadium
Roof / surface
outdoors · grass
Kickoff weather
25°F, wind 16 mph
Referee
Bill Vinovich
Rest
BUF 7 days · CLE 7 days
Coaches
Sean McDermott vs Kevin Stefanski

Wind at 16 mph is the kind that drags passing depth and kicking range — weigh it when reading the splits.