The Green Bay Packers fought hard enough to avoid being blown out against a powerhouse opponent and showed signs of life all around the roster. 

At least, that’s what the stat sheet in the Packers 27-17 loss to the Buffalo Bills will tell you.  

The Packers’ paper victory doesn’t express the way this team was punched in the mouth, once again cowering in the shadow of a far superior opponent that brought their C-game and still demolished the Packers with ease.  

The story the box score tells is one much different than what was on the field Sunday night. The Packers finally embraced Aaron Jones, running him 20 times for 143 yards. Jones ripped off chunks of yardage all night long against the top-rated defense in the NFL. As a team, they ran the ball 31 times for 208 yards, averaging a very healthy 6.7 yards per carry.  

Aaron Rodgers’ stats were pedestrian for his standard (19/30, 203 yards, 2 TD, 1 INT), but look like enough to potentially squeak out a victory behind a dominant run game and opportunistic defense. 

Bills quarterback and MVP candidate Josh Allen played his worst game of the year against Green Bay, barely completing over 50% of his passes, throwing for just 218 yards and pairing his 2 touchdowns with a couple interceptions.  

And yet, despite a respectable box score and a promising first few drives, this game was 24-7 at halftime, at which point the Bills sleepwalked through the second half and watched as a helpless Packers offense missed chance after chance to bring it within reach.  

The Packers never had a shot with this passing offense. While down three scores for most of the second half, Green Bay called run after run, slowly eating away at the clock because it’s the only way they can move the ball.  

It doesn’t do the passing attack any favors when Rodgers and Matt LaFleur decide that they need to get back into the game with one huge play. After the Bills marched down the field and easily scored 7, the Packers came out and launched a flea flicker 60 yards down the field into double coverage. 

The pass obviously fell incomplete, and the game felt all but over. The Packers never fail to abandon their rhythm when they face any kind of adversity, launching improbable prayers down the field far too often. Failing multiple fourth-and-short attempts also helped to seal Green Bay’s fate. 

It’d be another thing if Green Bay actually had receivers to throw to. Two rookies and Sammy Watkins were the top three options at receiver; at least, that was the case before rookie Christian Watson left the game for good with an injury after his first catch back from his previous injury.  

The Packers also lost rookie linebacker Quay Walker early in the game to an ejection, and not long after that, former All-Pro linebacker De’Vondre Campbell left with an injury. The Packers were forced to insert young, inexperienced players at key positions on offense and defense against the best team in the league.  

Green Bay put out a better effort than anyone expected and did some things well, but what they do well isn’t enough to win big time games like these. Fans and media clamor for the team to run the ball, and the Packers obliged versus the Bills, but that strategy can’t get you back into games where you’re down three scores.  

They simply don’t have the firepower to keep up with elite teams. Green Bay is a team built to play ahead, but they’re hardly talented enough to build leads in the first place. The Bills were toying with the Packers in a game that wasn’t nearly as close as the final score or the box score suggest. Forget moral victories. 

The Packers now sit at 3-5 and can afford to lose only two or three more games. They play both the Eagles and Cowboys in the next three weeks, games where you can reasonably pencil in a loss for Green Bay. Next week’s contest versus the 1-6 Detroit Lions is a must-win; and certainly not guaranteed. 


Liam O’Donnell is a devoted Packers fan and an aspiring sportswriter from Milwaukee. He writes for and you can follow him on twitter at @liamodonnell___.