Grading the Buffalo Bills after their 23-16 loss to the Pittsburgh Steelers on Sunday at Highmark Stadium:
Pass offense: D
This was not the start any member of Bills Mafia had in mind for quarterback Josh Allen. He looked rattled from the start against a relentless Pittsburgh pass rush. Call it pressing, call it first-game nerves, call it whatever you want – Allen just wasn’t good enough. The offensive line did him no favors, consistently allowing too much pressure. Allen was sacked three times and hit eight, while offensive linemen were flagged six times for holding, four of which were accepted. The big-play element was sorely lacking. Buffalo had just one completion of more than 16 yards – a 37-yarder to Gabriel Davis in the second quarter. Davis later added a nice 3-yard touchdown catch, but those were his only two catches of the game. Running back Devin Singletary was a nonfactor, with just three catches for 8 yards. No. 1 receiver Stefon Diggs got plenty of looks with a game-high 14 targets, but the Steelers can live with his production on them – nine catches for 69 yards. Slot receiver Cole Beasley was also busy, catching eight passes on 13 targets for 60 yards. Diggs' long catch went for just 13 yards, while Beasley's was 12. About the only good thing that can be said about the passing game is that Allen wasn’t intercepted.
People are also reading…
Run offense: C
With Zack Moss a healthy inactive, Singletary figured to dominate the carries among running backs, which he did. He rushed a respectable 11 times for 72 yards, and had a long gain of 25 yards. Matt Breida had four carries for 4 yards – a stat line that was negatively impacted by a disastrous 7-yard loss. (More on that debacle later.) Allen gained 44 yards on nine carries. A good portion of those were designed runs. On short yardage, that makes plenty of sense. Allen did display poor ball security when he scrambled for an 8-yard gain in the second quarter, but he was able to make the recovery. The obligatory Isaiah McKenzie carry didn’t work – he was stopped for a 3-yard loss on his only rushing attempt.
Run defense: B
Ed Oliver showed up with a big tackle for a loss in the second quarter, turning second-and-1 into third-and-5 and helping the defense get off the field. Oliver finished with three tackles. Nickel cornerback Taron Johnson led the Bills with seven tackles. One was particularly impressive. Johnson met Steelers running back Najee Harris straight up in the hole on a second-and-10 play in the second quarter, stopping him after a 2-yard gain. The Bills held Harris, a first-round draft pick from Alabama, to 45 yards on 16 carries. He was the only Pittsburgh running back to log a rushing attempt. Receiver Chase Claypool gained 25 yards on his only rushing attempt. Quarterback Ben Roethlisberger also was able to scramble for an 8-yard gain, despite very limited mobility, helping set his team up for an insurance field goal in the fourth quarter.
Here’s the big-picture analysis of the Bills’ season-opening, 23-16 loss to the Steelers.
Pass defense: B-
Before the game, the Bills would have signed up for holding Roethlisberger to an 18-of-32 passing performance for 188 yards and one touchdown. Mario Addison had a sack-forced fumble, while Jordan Poyer had a sack among the Bills’ six quarterback hits. Johnson had two passes defensed, but was beaten by JuJu Smith-Schuster for a crucial 24-yard gain late in the fourth quarter. The holding penalty against Tre’Davious White that wiped out his interception was questionable at best. There was a coverage breakdown that led to Steelers tight end Pat Freiermuth getting open for a 24-yard gain.
Allen was off target basically all afternoon, as the Bills’ high-powered offense from a year ago never showed up in a 23-16 loss to the Pittsburgh Steelers.
Special teams: D-
McKenzie’s 75-yard punt return is the only thing saving this from a failing grade. As great of a moment as that was, it was easily forgotten in the fourth quarter, when the Steelers blocked Matt Haack’s punt and returned it for a touchdown. It was just the second time Haack has had a punt blocked in his five-year career, and obviously came at a horrible time. It capped a miserable debut for Haack, who averaged just 28.0 net yards on three punts. His lone touchback wasn’t close to staying in the field of play. McKenzie averaged 35.8 yards on four kick returns, but his lone punt return went for just 1 yard. Kicker Tyler Bass made field goals of 37, 25 and 42 yards and has now converted 17 consecutive field goals, just one off the team record set by Rian Lindell.
The game's result had more to do with the Bills’ shortcomings on offense and questionable play-calling than anything Pittsburgh did.
Coaching: F
Sean McDermott reiterated the same comment about 100 times in his postgame news conference: He needs to coach better. No argument here. What happened to the McDermott who showed such aggressiveness on fourth down last year? That went away in the AFC championship game against the Chiefs, and unfortunately didn’t return Sunday. McDermott punted on fourth-and-1 from his own 46-yard line in the first quarter and again on fourth-and-3 from the Pittsburgh 43 on his team’s next possession. That’s absolutely inexcusable. To make matters worse, offensive coordinator Brian Daboll called a flea flicker on the third-and-1 play that came before the punt. With two chances to gain 1 yard, it's no time to get cute. Just run your 237-pound quarterback ahead to gain 3 feet. That wasn’t the worst play call made by Daboll on Sunday, though. That distinction goes to the backward pass to Breida on fourth-and-1 at the start of the fourth quarter. The play was dead in the water, as Breida was blown up almost immediately. “I mean, yeah, I got to do a better job with that,” McDermott said. Again, no argument here. The Bills didn't look ready to play. That's on the coach. Now, it's on him to fix it to get a season with such high expectations on track.
Photos: Bills open season against Steelers
Bad break
Josh Allen fumbles the ball as he is tackled by Steelers linebacker T.J. Watt (90) during the second quarter.
Turning point
Pittsburgh Steelers safety Miles Killebrew (28) blocks a punt attempt by Buffalo Bills punter Matt Haack (3) during the fourth quarter.
End zone strike
Buffalo Bills wide receiver Gabriel Davis (13) pulls in a touchdown pass against Pittsburgh Steelers cornerback Cameron Sutton (20) during the 2021 season-opening game.
Celebrating with fans
Buffalo Bills wide receiver Gabriel Davis (13) celebrates his touchdown with fans during the second quarter.
Upper deck
The Buffalo Bills host the Pittsburgh Steelers for the season opener.
Trouble
Buffalo Bills quarterback Josh Allen (17) runs into Pittsburgh Steelers strong safety Terrell Edmunds and defensive end Tyson Alualu (94) during the second quarter.
Beasley bounces
Buffalo Bills wide receiver Cole Beasley (11) finds extra yards against Pittsburgh Steelers linebacker Devin Bush (55) during the second quarter.
VIP fan
New York Gov. Kathy Hochul watches the Bills season opener with David Anderson, CEO, Highmark BlueCross BlueShield of WNY.
Knox
Buffalo Bills tight end Dawson Knox (88) pulls in a catch in front of Pittsburgh Steelers strong safety Terrell Edmunds (34) during the second quarter.
Twisted
Buffalo Bills wide receiver Gabriel Davis (13) proves tough to tackle for Pittsburgh Steelers cornerback Joe Haden (23) during the second quarter.
Rushing yards
Buffalo Bills quarterback Josh Allen (17) weaves around Pittsburgh Steelers defenders during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Tracking down the ball
Buffalo Bills wide receiver Emmanuel Sanders (1) tracks down a Josh Allen pass under pressure from Pittsburgh Steelers free safety Minkah Fitzpatrick (39) during the second quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Diggs pulls it in
Buffalo Bills wide receiver Stefon Diggs (14) makes a catch against Pittsburgh Steelers cornerback Joe Haden (23) during the second quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Full house
A full house is pumped up during the season opener at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Early fumble
Buffalo Bills quarterback Josh Allen (17) fumbles the ball as he is sacked by Pittsburgh Steelers outside linebacker T.J. Watt (90) during the second quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Knoxed out
Buffalo Bills tight end Dawson Knox (88) breaks a tackle attempt by Pittsburgh Steelers cornerback Tre Norwood (21) during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Hard to tackle
Buffalo Bills wide receiver Stefon Diggs (14) has room after making Pittsburgh Steelers cornerback Tre Norwood (21) miss a tackle during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Make me wanna shout
Bills fans are pumped up before the game at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Starting early
Buffalo Bills wide receiver Isaiah McKenzie (19) returns the opening kickoff against the Pittsburgh Steelers during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Air ball
Buffalo Bills quarterback Josh Allen (17) throws a pass during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Back to pass
Buffalo Bills quarterback Josh Allen (17) looks for a receiver during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Singletary
Buffalo Bills running back Devin Singletary (26) is wrapped up by Pittsburgh Steelers defensive tackle Demarcus Christmas (93) during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Bills Steelers first
Pittsburgh Steelers wide receiver Diontae Johnson (18) finds room to run against Buffalo Bills cornerback Tre'Davious White (27) during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Complete
Buffalo Bills wide receiver Emmanuel Sanders (1) pulls in a catch against Pittsburgh Steelers cornerback Cameron Sutton (20) during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
On the run
Buffalo Bills quarterback Josh Allen (17) looks downfield as he rushes with the ball against Pittsburgh Steelers linebacker Devin Bush (55) during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
First down
Buffalo Bills wide receiver Emmanuel Sanders (1) celebrates a first down during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Nowhere to go
Bills defensive tackle Justin Zimmer (61) is now an unrestricted free agent.
Super Mario
Buffalo Bills defensive end Mario Addison (97) knocks the ball out of the hands of Pittsburgh Steelers quarterback Ben Roethlisberger (7) during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Airing it out
Buffalo Bills quarterback Josh Allen (17) launches a pass over the Pittsburgh Steelers line during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Pittsburgh passer
Pittsburgh Steelers quarterback Ben Roethlisberger (7) fires a pass during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Coach
Buffalo Bills head coach Sean McDermott looks on during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Battle of the backs
Pittsburgh Steelers quarterback Ben Roethlisberger (7) passes the ball during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Tomlin
Pittsburgh Steelers head coach Mike Tomlin during the first quarter at Highmark Stadium in Orchard Park, Sunday, Sept. 12, 2021.
Big play
Pittsburgh Steelers outside linebacker T.J. Watt (90) celebrates his sack on Josh Allen to force a turnover during the second quarter Sunday at Highmark Stadium in Orchard Park.
Watch now: Bills defender Micah Hyde speaks after loss to Steelers
Watch now: Bills' Jordan Poyer talks about loss to Steelers
Watch now: Bills quarterback Josh Allen speaks after loss to Steelers
Watch now: Bills lineman Mitch Morse speaks after loss to Steelers
Watch now: Bills RB Devin Singletary speaks after loss to Steelers
Watch now: Bills head coach Sean McDermott discusses going for it on fourth down
Sack
Buffalo Bills free safety Jordan Poyer (21) wraps up Pittsburgh Steelers quarterback Ben Roethlisberger (7) during the second quarter.
Can't hang on to Claypool
Pittsburgh Steelers wide receiver Chase Claypool (11) makes a big catch against Buffalo Bills defensive back Levi Wallace (39) during the third quarter.
Broken play
Pittsburgh Steelers cornerback Tre Norwood (21) breaks up a pass intended for Buffalo Bills wide receiver Gabriel Davis (13) during the third quarter.
Brieda from the backfield
Buffalo Bills running back Matt Breida (22) tries to cut around Pittsburgh Steelers outside linebacker T.J. Watt (90) during the third quarter.
Trouble in the secondary
Buffalo Bills defensive back Levi Wallace (39) tackles Pittsburgh Steelers wide receiver Diontae Johnson (18) during the third quarter.
Roethlisberger fires
Pittsburgh Steelers quarterback Ben Roethlisberger (7) launches a pass during the third quarter.
Big catch
Pittsburgh Steelers wide receiver Chase Claypool (11) makes an acrobatic catch against Buffalo Bills cornerback Tre'Davious White (27) during the third quarter.
Hanging on
Pittsburgh Steelers wide receiver Chase Claypool (11) makes an acrobatic catch against Buffalo Bills cornerback Tre'Davious White (27) during the third quarter.
Johnson covers Johnson
Buffalo Bills cornerback Taron Johnson (24) tries to bring down Pittsburgh Steelers wide receiver Diontae Johnson (18) during the third quarter.
QB keeper
Bills quarterback Josh Allen evades a tackle attempt by Steelers free safety Minkah Fitzpatrick during the 2021 season-opening game.
Sideline focus
Buffalo Bills head coach Sean McDermott on the sidelines during the third quarter.
Game changer
Pittsburgh Steelers linebacker Ulysees Gilbert (54) scores a touchdown during the fourth quarter.
Pulling away
Pittsburgh Steelers running back Najee Harris (22) gashes the Bills defense during the fourth quarter.
Airborne
Buffalo Bills running back Matt Breida (22) is upended by Pittsburgh Steelers cornerback Cameron Sutton (20) during the fourth quarter.
Harris breaks out
Pittsburgh Steelers running back Najee Harris (22) finds yards against the Bills during the fourth quarter.
Unanswered points
Pittsburgh Steelers wide receiver Diontae Johnson (18) catches a pass for a touchdown against Buffalo Bills defensive back Levi Wallace (39) during the fourth quarter.
Hard feelings
A Bills fan can't bear to watch as the Pittsburgh Steelers pull ahead during the fourth quarter.
Singletary
Buffalo Bills running back Devin Singletary (26) rushes the ball against Pittsburgh Steelers strong safety Terrell Edmunds (34) during the fourth quarter.
Facing adversity
Buffalo Bills quarterback Josh Allen (17) has his pass batted down at the line of scrimmage during the fourth quarter.
Reception
Pittsburgh Steelers wide receiver Chase Claypool (11) makes a big catch against Buffalo Bills cornerback Taron Johnson (24) during the fourth quarter.
Going nowhere
Pittsburgh Steelers strong safety Terrell Edmunds (34) wraps up Buffalo Bills running back Devin Singletary (26) during the fourth quarter.
Flat tire
Buffalo Bills quarterback Josh Allen (17) puts his shoe back on between plays during the fourth quarter.
Sad ending
A disappointed Bills fan during the fourth quarter.
Motivated for next week
Buffalo Bills quarterback Josh Allen (17) runs off the field after the Bills 23-16 loss to the Pittsburgh Steelers at Highmark Stadium.

