Buffalo, N.Y. (WGR 550) - The Buffalo Bills got back into the win column this past Thursday night, holding off the Tampa Bay Buccaneers with a 24-18 victory at Highmark Stadium in Orchard Park.
It looked to be all Bills early, despite the short week, but the Buccaneers got back into it late to make the finish an interesting one.
Let’s break down the win, and also grade Buffalo's performance in all facets of the game:

Passing offense: B+
Oh, how we all missed this.
The passing offense, inconsistent and even seemingly held back over the past few games, was back to familiar form in the first half. Josh Allen was scrambling again, the team was up-tempo, and the Bills used the passing game with more depth, as Allen’s yards per-completion was back up over eight yards (8.1 on the game) after being only at 5.6 and 6.5 in the past two weeks.
Now, where the heck has this been and why can’t we watch more of it?
If there was a struggling aspect of the passing attack, it was fixed in this game a bit.
No secondary options after Stefon Diggs? Khalil Shakir and Gabe Davis turned it on in this game. Meanwhile, Dalton Kincaid is becoming a featured piece of the offense.
Davis, in particular, needed to have a big game after questions of his long-term status started coming into question. Davis bounced back from the past two games with nine catches for 87 yards and a touchdown against Tampa Bay.
Shakir had his best day as a pro, reeling in six catches for 96 yards and continues to improve, taking advantage of his snap counts.
Allen looking out of sorts? He was allowed to let loose, use his legs more and create in the ways we all expect from him. Allen was 31-of-40 with 324 yards, two touchdowns and, more importantly, was able to add again on the ground with 47 yards and another score.
The offensive line continues to shine, allowing only two sacks, with one where the Bills thought they had Tampa Bay offsides for a free play.
However, not all was pretty.
The Bills ultimately let their foot off the gas, which seemed to go against the up-tempo style that let them take control of the game.
But that has more to do with another aspect of our grades…

Rushing offense: B+
James Cook was efficient for most of this game, while Allen was able to add to their rushing totals.
Buffalo quietly ran for 115 yards on the day, while being in control of the game after getting off to their fast start. Cook averaged another solid 4.8 yards per-carry in this game, which is his exact yards per-carry for this season.
Allen adding his running totals helped this offense move the chains and got the fans excited. His added dimension on the ground always needs to be respected.
The difference this year is that Cook is, more times than not, is putting up good complementary numbers when he gets the rock.
The run blocking continues to be impressive overall, highlighted by some great seal blocks on pulls by Dion Dawkins. Very rarely are the linemen losing at the point of attack.
Sadly, it was not a good game for Latavius Murray, who only had seven yards on five carries. The shotgun run on 3rd-and-goal was another flash of overthinking, especially when they have a master at the quarterback sneak like Allen.

Passing defense: B
The pass rush bounced back from an awful week in New England, registering three sacks on the day, along with 10 hits on Baker Mayfield.
Ed Oliver and A.J. Epenesa notched sacks on the defensive line, while Taron Johnson added one on a blitz.
Johnson did get beat on a similar play as last week when he surrendered the game-winning touchdown against New England. The usually reliable Johnson being picked on successfully is not a very common sight, let alone for two weeks in-a-row.
Jordan Poyer got swapped around to a linebacker spot on obvious passing situations, and it seemed to pay off. Poyer had two deflections that should have been picked off, but couldn’t reel them in.
Jordan Phillips helped keep Tampa Bay in it with an unnecessary face mask penalty on, what was going to be, the nail in the coffin on a fourth down. That sort of play cannot happen. Teams better than Tampa Bay will make Buffalo pay for that kind of mistake.
Finally, there is the Kaiir Elam issue.
It has become quite the concern that Elam is, once again, a healthy scratch for a team whose depth has been tested again with the injury to Tre’Davious White.
Buffalo might look to move their 2022 first-round selection before he gets through his second season, which is unfortunate, to say the least.

Rushing defense: B
The Buccaneers are one of the worst teams, in terms of running the ball, and this night was no different. While Tampa Bay had some nice runs, with broken tackles and a well-timed jet sweep, there was not much the Buccaneers could do on the ground.
Buffalo held serve against the run, having Oliver back in the lineup undoubtedly helped on that front. Terrel Bernard made good plays at the second level, and had some help from the likes of Johnson and Poyer in run support.
While Buffalo was solid overall against the run, Tampa Bay’s inability to succeed on the ground and Buffalo’s early lead led to more of the same for the Buccaneers – a lack of success running the ball.

Special teams: A-
Deonte Harty had his best game as a return man. Sam Martin was almost perfect when called upon for punting. Tyler Bass was back to a perfect day kicking the ball.
Heck, even Shaq Lawson blocked a Tampa Bay field goal attempt.
Special teams made their presence felt on every level in this game. The only reason this is not a perfect grade is there were a couple of penalties that took away about 60 yards from Harty’s punt returns.
That said, a fantastic game from the special teams unit as a whole.

Coaching: C+
Offensive coordinator Ken Dorsey called a good game here, overall.
The offense brought back some up-tempo, utilized motion in the offense, let Allen loose running the ball and letting him create on the fly, and schemed up some very good passing concepts.
While there was the baffling turnover on downs from a shotgun run on 3rd-and-goal and a pass design that was quickly snuffed out on fourth down, the offensive game plan was markedly improved from the past three games. The offense took control early, instead of draining the clock on themselves like the past few games.
While some advanced stats don’t back this up (looking at you, EPA), Buffalo was more in control of this game thanks to their offense going up-tempo in the first half. The second half saw the offense slow down, but that has more to do with decisions not made by Dorsey.
Head coach Sean McDermott made some decisions on Thursday night that many will question, despite the win.
Buffalo punted four times within midfield in the second half, with two of them being after taking delay of game penalties on 4th-and-2. The final one was a 4th-and-1 at midfield up by six points.
That one is a bit more dangerous, but also still another chance to put the game away with an Allen sneak. Usually a progressive coach on fourth down, McDermott went into a shell in the second half, which helped Tampa Bay claw back into the game (thanks to some bad defensive penalties as well).
While failing on a 4th-and-short at midfield can often flip a game, Tampa Bay was not in any sort of rhythm offensively, and the chances of putting the game away seemed more favorable.
McDermott also called a timeout late, allowing a scrambling Tampa Bay offense a chance to compose themselves before a fourth down on their second-last drive. The timeout backfired on the defense, as Tampa Bay scored their final touchdown and closed to within striking distance.
Over the past three games now, Buffalo has had trouble closing games out and putting bad-to-mediocre teams to bed. At some point, that ultimately falls on the decisions of the head coach and an overall lack of finish.
What's next:
The Bills get an extended break to prepare for their next opponent, the Cincinnati Bengals, in another "Sunday Night Football" showdown in Week 9.
Kickoff is slated for 8:20 p.m. EST with pregame coverage on Sunday starting at 3 p.m. ET on the official voice of the Bills - WGR Sports Radio 550.