Bills vs Browns
Final · Week 16 · Sun Dec 21 · 1:00 PM ET · Huntington Bank Field
Buffalo BillsBills11-4
23FinalDec 21, 2025
Cleveland BrownsBrowns3-12
20TVCBS
Closing line
US sportsbook at kickoffMoneyline
BUF−600
CLE+440
Spread
BUF −10.5−110
CLE +10.5−110
Total O/U
Over 41.5−110
Under 41.5−110
- Spread: Browns +10.5 covered.
- Total O/U: over 41.5 (43 points).
Recap
The Buffalo Bills edged the Cleveland Browns 23-20 at Huntington Bank Field in Cleveland on Dec 21, 2025 to move to 11-4.
The Bills have won 4 straight. The Bills won the turnover battle 2-0.
Score by quarter
| Team | 1 | 2 | 3 | 4 | T |
|---|---|---|---|---|---|
| BUF | 7 | 13 | 3 | 0 | 23 |
| CLE | 7 | 3 | 7 | 3 | 20 |
Scoring plays
First Quarter
- CLETouchdown · 10:42Harold Fannin Jr. 13 Yd pass from Shedeur Sanders (Andre Szmyt Kick)0-7
- BUFTouchdown · 7:47James Cook III 44 Yd Rush (Michael Badgley Kick)7-7
Second Quarter
- BUFTouchdown · 12:54Ty Johnson 2 Yd Rush (Michael Badgley PAT Failed)13-7
- CLEField Goal · 5:38Andre Szmyt 24 Yd Field Goal13-10
- BUFTouchdown · 2:23James Cook III 3 Yd Rush (Michael Badgley Kick)20-10
Third Quarter
- BUFField Goal · 9:37Michael Badgley 41 Yd Field Goal23-10
- CLETouchdown · 1:36Harold Fannin Jr. 1 Yd Rush (Andre Szmyt Kick)23-17
Fourth Quarter
- CLEField Goal · 8:46Andre Szmyt 41 Yd Field Goal23-20
Team stats
BUFCLE
- 1st Downs
- 16
- 22
- Total Yards
- 259
- 294
- Passing
- 95
- 134
- Rushing
- 164
- 160
- 3rd down efficiency
- 2-8
- 8-14
- Turnovers
- 0
- 2
- Possession
- 24:37
- 35:23
Top performers
Buffalo BillsCleveland Browns
Passing
Josh Allen12/19, 130 YDS
Shedeur Sanders20/29, 157 YDS, 1 TD, 2 INT
Rushing
James Cook III16 CAR, 117 YDS, 2 TD
Shedeur Sanders4 CAR, 49 YDS
Receiving
Khalil Shakir4 REC, 34 YDS
Trayveon Williams4 REC, 38 YDS
Sacks
Greg Rousseau2.5
Carson Schwesinger1
Tackles
Jordan Poyer11
Carson Schwesinger14
Player stats
Bills · Passing
| Player | C/ATT | YDS | AVG | TD | INT | SACKS | QBR | RTG |
|---|---|---|---|---|---|---|---|---|
| Josh Allen | 12/19 | 130 | 6.8 | 0 | 0 | 2-35 | 46.0 | 83.2 |
Bills · Rushing
| Player | CAR | YDS | AVG | TD | LONG |
|---|---|---|---|---|---|
| James Cook III | 16 | 117 | 7.3 | 2 | 44 |
| Josh Allen | 7 | 17 | 2.4 | 0 | 7 |
| Ty Johnson | 3 | 16 | 5.3 | 1 | 9 |
| Ray Davis | 3 | 14 | 4.7 | 0 | 8 |
Bills · Receiving
| Player | REC | YDS | AVG | TD | LONG | TGTS |
|---|---|---|---|---|---|---|
| Khalil Shakir | 4 | 34 | 8.5 | 0 | 18 | 5 |
| Jackson Hawes | 2 | 26 | 13.0 | 0 | 18 | 2 |
| Tyrell Shavers | 1 | 21 | 21.0 | 0 | 21 | 2 |
| Ray Davis | 2 | 20 | 10.0 | 0 | 14 | 2 |
| James Cook III | 1 | 17 | 17.0 | 0 | 17 | 2 |
| Dawson Knox | 1 | 10 | 10.0 | 0 | 10 | 2 |
| Joshua Palmer | 1 | 2 | 2.0 | 0 | 2 | 1 |
| Brandin Cooks | 0 | 0 | 0.0 | 0 | 0 | 1 |
| Dalton Kincaid | 0 | 0 | 0.0 | 0 | 0 | 1 |
Bills · Defense
| Player | TOT | SOLO | SACKS | TFL | PD | QB HTS | TD |
|---|---|---|---|---|---|---|---|
| Jordan Poyer | 11 | 6 | 0.5 | 1 | 1 | 1 | 0 |
| Matt Milano | 9 | 4 | 0 | 1 | 0 | 2 | 0 |
| Cole Bishop | 7 | 5 | 0 | 1 | 0 | 0 | 0 |
| Terrel Bernard | 6 | 1 | 0 | 0 | 0 | 0 | 0 |
| Taron Johnson | 5 | 2 | 0 | 0 | 0 | 0 | 0 |
| DaQuan Jones | 4 | 2 | 0 | 0 | 1 | 0 | 0 |
| Tre'Davious White | 4 | 2 | 0 | 0 | 1 | 0 | 0 |
| Phidarian Mathis | 4 | 2 | 0 | 0 | 0 | 0 | 0 |
Bills · Interceptions
| Player | INT | YDS | TD |
|---|---|---|---|
| Jordan Poyer | 1 | 10 | 0 |
| DaQuan Jones | 1 | 1 | 0 |
Bills · Kick returns
| Player | NO | YDS | AVG | LONG | TD |
|---|---|---|---|---|---|
| Ray Davis | 4 | 92 | 23.0 | 26 | 0 |
Bills · Punt returns
| Player | NO | YDS | AVG | LONG | TD |
|---|---|---|---|---|---|
| Mecole Hardman Jr. | 1 | 4 | 4.0 | 4 | 0 |
| Khalil Shakir | 1 | 3 | 3.0 | 3 | 0 |
Bills · Kicking
| Player | FG | PCT | LONG | XP | PTS |
|---|---|---|---|---|---|
| Michael Badgley | 1/1 | 100.0 | 41 | 2/3 | 5 |
Bills · Punting
| Player | NO | YDS | AVG | TB | In 20 | LONG |
|---|---|---|---|---|---|---|
| Mitch Wishnowsky | 3 | 149 | 49.7 | 1 | 0 | 62 |
Browns · Passing
| Player | C/ATT | YDS | AVG | TD | INT | SACKS | QBR | RTG |
|---|---|---|---|---|---|---|---|---|
| Shedeur Sanders | 20/29 | 157 | 5.4 | 1 | 2 | 2-21 | 27.7 | 64.9 |
| Corey Bojorquez | 0/1 | 0 | 0.0 | 0 | 0 | 0-0 | 0.0 | 39.6 |
| Dillon Gabriel | 0/0 | 0 | 0.0 | 0 | 0 | 1-2 | 0.0 | 0.0 |
Browns · Rushing
| Player | CAR | YDS | AVG | TD | LONG |
|---|---|---|---|---|---|
| Shedeur Sanders | 4 | 49 | 12.3 | 0 | 16 |
| Raheim Sanders | 11 | 42 | 3.8 | 0 | 9 |
| Malachi Corley | 3 | 30 | 10.0 | 0 | 14 |
| Quinshon Judkins | 8 | 22 | 2.8 | 0 | 5 |
| Trayveon Williams | 3 | 17 | 5.7 | 0 | 11 |
| Harold Fannin Jr. | 1 | 1 | 1.0 | 1 | 1 |
| Isaiah Bond | 1 | -1 | -1.0 | 0 | -1 |
Browns · Receiving
| Player | REC | YDS | AVG | TD | LONG | TGTS |
|---|---|---|---|---|---|---|
| Trayveon Williams | 4 | 38 | 9.5 | 0 | 26 | 4 |
| Harold Fannin Jr. | 4 | 34 | 8.5 | 1 | 13 | 6 |
| Quinshon Judkins | 5 | 29 | 5.8 | 0 | 16 | 6 |
| Isaiah Bond | 0 | 21 | 0.0 | 0 | 21 | 0 |
| Jerry Jeudy | 3 | 12 | 4.0 | 0 | 7 | 4 |
| Malachi Corley | 2 | 11 | 5.5 | 0 | 11 | 4 |
| Cedric Tillman | 1 | 8 | 8.0 | 0 | 8 | 1 |
| Raheim Sanders | 1 | 4 | 4.0 | 0 | 4 | 1 |
| Brenden Bates | 0 | 0 | 0.0 | 0 | 0 | 1 |
Browns · Fumbles
| Player | FUM | LOST | REC |
|---|---|---|---|
| Corey Bojorquez | 1 | 0 | 1 |
Browns · Defense
| Player | TOT | SOLO | SACKS | TFL | PD | QB HTS | TD |
|---|---|---|---|---|---|---|---|
| Carson Schwesinger | 14 | 5 | 1 | 1 | 0 | 2 | 0 |
| Devin Bush | 9 | 5 | 0 | 0 | 0 | 0 | 0 |
| Ronnie Hickman | 6 | 2 | 0 | 0 | 0 | 0 | 0 |
| Mohamoud Diabate | 4 | 3 | 0 | 0 | 0 | 0 | 0 |
| Myles Harden | 4 | 3 | 0 | 0 | 1 | 0 | 0 |
| Grant Delpit | 4 | 2 | 0 | 0 | 0 | 0 | 0 |
| Shelby Harris | 3 | 2 | 0 | 0 | 0 | 0 | 0 |
| Tyson Campbell | 2 | 2 | 0 | 0 | 0 | 0 | 0 |
Browns · Kick returns
| Player | NO | YDS | AVG | LONG | TD |
|---|---|---|---|---|---|
| Malachi Corley | 4 | 107 | 26.8 | 31 | 0 |
Browns · Punt returns
| Player | NO | YDS | AVG | LONG | TD |
|---|---|---|---|---|---|
| Gage Larvadain | 1 | 3 | 3.0 | 3 | 0 |
Browns · Kicking
| Player | FG | PCT | LONG | XP | PTS |
|---|---|---|---|---|---|
| Andre Szmyt | 2/2 | 100.0 | 41 | 2/2 | 8 |
Browns · Punting
| Player | NO | YDS | AVG | TB | In 20 | LONG |
|---|---|---|---|---|---|---|
| Corey Bojorquez | 2 | 103 | 51.5 | 0 | 1 | 52 |
Game info
VenueHuntington Bank Field, Cleveland, OH
Attendance67,580
OfficialsReferee: Bill Vinovich · Side Judge: Jimmy Buchanan · Back Judge: Todd Prukop · Field Judge: Aaron Santi
TVCBS · national
Last and next games
More scores
NFL Week 16, 2025All NFL ScoresNFL 2025 SeasonNFL OddsScores & schedules
College Football ScoresNBA ScoresCollege Basketball ScoresNHL ScoresMLB ScoresWNBA ScoresUFC & MMA Results
Scores, stats and closing line: ESPN. Prediction-market prices: Kalshi and Polymarket. Betting splits: a consensus across several sportsbooks. Odds change constantly: confirm the price at the book. 21+. Gambling problem? Call 1-800-GAMBLER.
Game details updated Oct 13, 5:54 PM ET. How game pages are made