Season in Review

Bills 2025 Season in Review

2025 NFL Season · Monday, May 11

0:000:00

Your episode · 0:00

The Rundown

James Cook ran for three hundred and fifty-eight yards over expected this season — second among all qualified running backs in the league. That's the number that defines Buffalo's 2025. Here's how the Bills built the best rushing attack in football, why Josh Allen quietly had a top-ten passing year that didn't feel that way, and the one side of the ball that kept this team from going further. Twelve and five. Fifth seed in the AFC. A wild card win in Jacksonville, then a three-point heartbreaker in Denver in the Divisional Round. The Bills smashed on the ground all year — and got muffed by a Broncos team that punched them in the mouth in January.

Let's set the table with the team-level numbers. Buffalo's offense posted plus one hundred forty-four point four total expected points added — how much every snap improved their chances of scoring across the season — third in the league. The defense came in at plus thirteen, allowing minus fifteen point five expected points added, league-average territory. The real signature: a third-down conversion rate of forty-six point three percent, fourth in the league, and a red-zone touchdown rate of seventy-two point three percent, third. When the Bills crossed the twenty, they scored seven, not three. Add it up — seventy-six percent of their scoring drives ended in touchdowns, the highest share in football. And the consistency was real. Outside of a Week 10 trip to Miami where they got smoked thirty to thirteen and a Week 17 stinker against Philadelphia, they hit twenty-three points or more in every game. Steady floor, week in, week out.

Now let's talk about the passing offense. Josh Allen threw for three thousand six hundred and sixty-eight yards, twenty-five touchdowns, ten interceptions, and added plus eighty-six point eight passing expected points added — seventh in the league. His completion percentage was sixty-nine point four against an expected sixty-seven point eight, so plus one point five percent above what an average quarterback would've completed on the same throws. Solid, not spectacular by his standards — but the passing game's identity wasn't about volume. It was about finishing drives. Allen also ran for fourteen touchdowns, tied for third in the league among all players. What kept this unit from elite-elite status: forty sacks allowed on five hundred and ninety-three dropbacks, a six point eight percent sack rate that's middle of the pack. Pressure got home, and the Bills wore it. The receiver room was a true committee — Khalil Shakir led the team with seventy-two catches for seven hundred and nineteen yards and four touchdowns, with air yards spread across the rest of the room. No single receiver carried this passing game. Allen did.

Now let's dig into the rushing offense. This is the headline of the season. Buffalo averaged five yards per carry — first in the league, the only team in football at five flat — and posted plus forty-one point three rushing expected points added, second in the league. One hundred fifty-nine point seven rushing yards per game. Thirty rushing touchdowns. The Bills didn't just run well — they ran at an elite level every single week. And James Cook was the engine: three hundred and nine carries, one thousand six hundred and twenty-one yards, five point three a pop, twelve rushing touchdowns. His plus three hundred fifty-eight point two rushing yards over expected — that much more than an average back would have gained on the same carries — was second among qualified runners in the league. The defining moment came in Week 8 at Carolina, second and four in the second quarter: Cook took a handoff through left guard and went sixty-four yards untouched to the end zone. That run was the season in microcosm — explosive, decisive, and the Bills were never in a one-score game again that day. They won forty to nine.

Next up, the pass defense. This is where the story gets more complicated. Buffalo allowed minus fifty-seven point four passing expected points added — and remember, on defense a big negative number is good, so this unit was genuinely above-average against the pass, around the seventy-eighth percentile in the league. They generated thirty-six sacks, twentieth in the league, and twenty-one total takeaways — thirteen interceptions plus eight fumble recoveries, middle of the pack. Not dominant, but huge plays in huge spots. The clearest example: Week 14 against Cincinnati, fourth quarter, twenty-eight to twenty-five Bengals, Joe Burrow throws a short right intended for Ja'Marr Chase and cornerback Christian Benford jumps it — sixty-three yards the other way for a touchdown. That single play swung the game, the Bills won thirty-nine to thirty-four, and it captured the unit's identity. They didn't smother offenses week to week. They took the ball away when it mattered most.

And the run defense — this is where Buffalo got muffed. The Bills allowed plus forty-one point nine rushing expected points added on defense, and remember, on defense you want negative. A positive number that big puts this unit in the sixth percentile of the league — bottom of the barrel. Twenty-four rushing touchdowns surrendered. Two thousand three hundred and twenty yards allowed on the ground over seventeen games. That's where the Denver loss in the Divisional Round traces back to, and it's where the losses to Atlanta in Week 6, Miami in Week 10, and Houston in Week 12 all share DNA. When teams committed to running the ball against Buffalo, they moved it.

The Bottom Line

A

12-5 regular season

Season MVP is James Cook — three hundred and nine carries, one thousand six hundred and twenty-one yards, twelve rushing touchdowns, and plus three hundred fifty-eight point two rushing yards over expected, second in the entire league. He was the heartbeat of the best rushing attack in football. The one thing Buffalo has to fix: the run defense. Plus forty-one point nine rushing expected points added allowed is a sixth-percentile number, and surrendering twenty-four rushing touchdowns over seventeen games is how a twelve-win team becomes a Divisional Round exit.

This episode is built around one person's roster.

Sign up and get a weekly episode built around yours — player-by-player, in the voice of your smartest football friend.

Get your own weekly episode →