Buffalo Bills 32, New York Jets 6: Final score, recap, highlights

ORCHARD PARK - We sometimes throw around the term “must win game” a little too freely, and by the definition of what a must win game truly is - that you either win or your season is done - the Buffalo Bills’ aren’t in that situation Sunday afternoon when they host the New York Jets.

Semantics aside, this is a must win for the simple reason that with seven games remaining, four of which are against teams who are almost assuredly going to make the postseason, the Bills cannot stub their toes against the Jets.

Yes, the Jets are still alive in the playoff chase, and they already own a damaging victory over the Bills this season, but of the teams that Buffalo still has to play, there are only three remaining with below .500 records and the 4-5 Jets are first up at Highmark Stadium.

“We’re 5-5 and our backs against the wall,” quarterback Josh Allen said. “The clock’s ticking on what we can do this season and it starts this Sunday to try to turn this thing around.”

This story will be updated throughout the day Sunday.

Final score: Buffalo Bills 32, New York Jets 6

That was a get right game for the Bills. Buffalo's defense overpowered the atrocious New York offense and Joe Brady got comfortable in his first game as offense coordinator. Josh Allen completed 20 of 32 passes for 275 yards with three touchdowns and one interception. Buffalo cornerback Rasul Douglas had two interceptions and a fumble recover and the Bills sacked the Jets quarterbacks six times. New York had 92 yards passing between Zach Wilson and Tim Boyle. The Bills outgained the Jets 393 to 155 and possessed the ball for 36 minutes, 51 seconds. Buffalo improves to 6-5 and is very much in the playoff hunt.

Rasul Douglas records second interception of game - 2:29 4th quarter

Rasul Douglas, Defensive Player of the Week? Douglas picked off Tim Boyle for his seconds interception of the game. Douglas also has a fumble recovery.

Bills 32, Jets 9: Tyler Bass makes 50-yard field goal

Buffalo kept the ball on the ground on a seven-play, 22-yard drive and Tyler Bass made his fourth field goal of the game.

Garrett Wilson loses fumble - 14:09 4th quarter

Tim Boyle's first drive ended in a turnover. But it wasn't by him. Boyle completed a short pass to Garrett Wilson. Linebacker Tyrel Dodson ripped the ball out and it was recovered by cornerback Rasul Douglas.

Zach Wilson benched for Tim Boyle

Zach Wilson is out. Jets head coach Robert Saleh took Wilson out for Tim Boyle with 2:16 left in the third quarter. Boyle went undrafted in 2018 after three years at the University of Connecticut and two years with Eastern Kentucky. It's his first season with the Jets. Boyle completed his first two passes for a total of 9 yards.

Wilson completed 7 of 15 passes for 81 yards with a touchdown and interception. He was sacked five times.

Bills 29, Jets 6: Josh Allen tosses 81-yard TD pass to Khalil Shakir

New offensive coordinator Joe Brady is showing off. He called the Bills longest play of the season in his first game. Josh Allen connected with Khalil Shakir for an 81-yard touchdown. Allen fired the ball into a tight window and Shakir did the rest, outrunning the Jets defense into the end zone. It's also the longest play the Jets defense has allowed this year.

Bills 22, Jets 6: Josh Allen throws TD pass to Ty Johnson to start second half

Buffalo opened the second half with an eight-play, 75-yard touchdown drive. New York cornerback Sauce Gardner was flagged for unnecessary roughness after a 10-yard reception by Stefon Diggs to get the Bills near midfield. Josh Allen completed to James Cook for 15 yards and four plays later on fourth-and-1, Ty Johnson took a short catch down the right sideline for a 28-yard touchdown. All now has the most total touchdowns all-time in his first six seasons with 205 (159 passing, 45 rushing, 1 receiving.)

Halftime score: Bills 16, Jets 6

Bills 16, Jets 6: Zach Wilson throws TD pass to Breece Hall, Taylor Rapp taken off field in ambulance

The Jets were dead in the water. They had fourth-and-2 at their own 24 were about to punt the ball yet again. Instead, punter Thomas Morstead executed a fake punt and completed for 18 yards to Brandin Echols to the 42, and off they went.

The wound up driving 84 yards in 11 plays before Zach Wilson threw a TD pass to Breece Hall. It was the Jets’ first TD in 42 offensive possessions.

They caught a break on a roughing the passer penalty on Ed Oliver, and the fact that two Bills’ DBs - Taron Johnson and Taylor Rapp - were injured on the same play, with Rapp having to leave the field in an ambulance.

Jets best offense is a fake punt

New York called a fake punt on fourth-and-2 from its 42-yard line. Punter Thomas Morestead completed a pass to Brandin Echols for 18 yards. It was initially ruled a 44-yard pass to the Bills' 32 but after review, Echols was ruled out of bounds shortly after the completion. The Jets converted another fourth down two plays later from midfield. Breece Hall took a short catch 15 yards to the Bills' 35. Cornerback Taron Johnson and safety Taylor Rapp were injured on the play. Johnson was able to get up and jog into the locker room. Trainers brought a backboard onto the field for Rapp.

Bills 16, Jets 0: Josh Allen throws 5-yard touchdown to James Cook

Finally, the Bills found the end zone with 3:03 left in the first half as Josh Allen threw a five-yard TD pass to James Cook who was wide open in the right flat to give the Bills a 16-0 lead.

Rasul Douglas set the Bills up at the New York 23 as he stepped in front of a Zach Wilson pass intended for Garrett Wilson which, incredibly, was Buffalo’s first since Week 4 against Miami.

Cook, who is having a nice night running, ripped off a 12-yard run to get the ball to the 11, and then a Jets penalty gave the Bills a first-and-goal at the 5 before Cook found himself all alone when the Jets defense apparently lost him in coverage.

Zach Wilson intercepted by Rasul Douglas - 5:19 2nd quarter

Cornerback Rasul Douglas has his first interception with the Bills. Douglas stepped in front of Zach Wilson's pass intended for Garrett Wilson on the left sideline. He returned the pick 7 yards to the Jets' 23. Wilson is 2 of 6 for 32 yards and an interception and he's been sacked three times.

Bills cornerback Dane Jackson injured tackling Jeremy Ruckert

Buffalo cornerback Dane Jackson headed to the blue medical tent. Jackson lowered his shoulder into tight end Jeremy Ruckert after an 18-yard completion and came up wobbly. Jackson headed to the locker room and was replaced by Christian Benford.

Buffalo ends run of field goals - 6:02 2nd quarter

The Bills finally had a drive end in something other than a field goal. Buffalo picked up two first downs to reach the Jets' 38 yard-line but Josh Allen threw incompletions on second and third downs. Sam Martin punted 34 yards to the Jets' 9.

Jets offense continues pathetic performance - 9:55 2nd quarter

New York went three-and-out. Zach Wilson threw the ball into the ground after a foiled screen play. Breece Hall ran up the middle for no gain on third down and Leonard Floyd sacked Wilson for a loss of 7 yards on third down. Thomas Morstead punted 56 yards and Deonte Harty returned it 8 yards to the Bills' 34.

Bills 9, Jets 0 - Buffalo tacks on another field goal

Hey, another field goal for the Bills.

Tyler Bass is getting a workout tonight, and it might not be over for him. A third straight Bills’ possession ended with a Bass field goal, this one from 33 yards to bump the Bills’ lead to 9-0.

Buffalo’s offense is doing nice work between the 20s, but when it gets in, or close to the red zone, the Jets have been impenetrable. This drive was a nine-play, 65-yarder after the Buffalo defense forced a second Jets punt. It ate up another 5:52 off the clock, so the Bills now have had the ball eight minutes longer than New York.

Jets offense is predictable and bad - 2:18 1st quarter

New York's offense is bad. Breece Hall took a short reception 14 yards to the Jets' 48-yard line but then things went backward. Hall was dropped for a 3-yard loss by Terrel Bernard, and Bernard and Leonard Floyd sacked Zach Wilson for a 6-yard loss. Offensive tackle Mekhi Becton was injured on the play but walked off under his own power, but was later transported to the locker room. On third-and-19, Dalvin Cook took a draw 10 yards. Thomas Morstead punted 51 yards into the end zone.

Bills 6, Jets 0: Tyler Bass makes 30-yard field goal

The Buffalo offense got things rolling on its second possession, but once again when it reached the red zone it petered out and Tyler Bass had to come to the rescue with a 30-yard field goal.

The Bills marched 58 yards in 14 plays and chewed up 6:05 off the clock, but at the end of the possession, their receivers could not get open on the final two plays and Josh Allen had nowhere to throw the ball.

Early in the drive, the Bills converted a pair of third downs with a nine-yard pass to Dalton Kincaid and a designed QB keeper by Allen.

Jets offense struggles - 12:01 1st quarter

New York was able to trot its offense onto the field on this possession after the opening kickoff punt but it wasn't worth the wait. Buffalo defensive tackle Jordan Phillips was flagged for unnecessary roughness on the first snap. Zach Wilson threw incomplete for Breece Hall, was sacked for a 10-yard loss by former Jet Shaq Lawson, and couldn't connect with Garrett Wilson on third down. Thomas Morstead punted 40 yards and Deonte Harty returned it 2 yards to the Bills' 30.

Bills 3, Jets 0: Xavier Gipson fumbles opening kickoff, Buffalo gets field goal

Reggie Gilliam gave the sellout crowd a jolt by nailing Jets return man Xavier Gipson on the opening kickoff and forcing a fumble that Quintin Morris recovered at the New York 21.

With a great opportunity to make an early statement, the Bills offense went nine yards backward and had to settle for a 48-yard Tyler Bass field goal.

The Jets defense continues to dominate the Bills offense. Josh Allen scrambled for three yards, Stefon Diggs dropped a wide open short pass, and then Allen was sacked for 12 yards by Quinnen Williams.

No surprises on the Bills inactive list

As expected, Micah Hyde and Christian Benford are back, and defensive tackle Jordan Phillips and wide receiver Trent Sherfield - both listed as questionable - are also playing against the Jets.

The inactive list includes safety Damar Hamlin, linebacker A.J. Klein, defensive tackle Poona Ford, and offensive linemen Alec Anderson and Germain Ifedi.

The Jets inactives includes four players who generally play varying roles for them on game day. They are wide receiver Randal Cobb, defensive lineman Carl Lawson, offensive guard Billy Turner, and linebacker Michael Carter.

No Leonard Fournette for the Bills

Fans continue to be intrigued by the signing of the veteran running back, but for the third time since he joined the Bills, Fournette remains on the practice squad and was not elevated for the game.

I said this from the start, I didn’t think we’d see Fournette for a few weeks and that is proving to be correct. He needed to get back into football shape after not being with a team since the end of 2022, and he had to learn the playbook. Plus, the Bills are perfectly comfortable with Latavius Murray as the backup to starter James Cook.

The Bills did not elevate anyone from the practice squad this week, an indication that both Micah Hyde and Christian Benford will be starting.

We’ll have to wait and see on wide receiver Trent Sherfield (ankle) and defensive tackle Jordan Phillips (knee) are both listed as questionable.

Joe Brady has a tough first assignment

The Bills elevated Brady from QB coach to offensive coordinator when Sean McDermott fired Ken Dorsey Tuesday morning.

Rather than wait for the bye which comes after the Bills’ Week 12 game at Philadelphia, McDermott felt the change had to be made because with seven games remaining, the Bills need an immediate spark and he’s hoping Brady can provide that.

So, Brady took over on a short week because the Bills played Monday night, and he’s doing so against one of the best defenses in the NFL, one that has given Allen and the Buffalo offense tremendous problems over the past two years.

“It’s been a short week, but I’m excited for the opportunity,” Brady said Thursday. “We’ve got a lot of games left, right? Just finding a way to get this one.”

One of the criticisms of Dorsey, and what probably played a part in McDermott making the change, is that the Bills’ once dynamic offense has become stagnant and predictable. What exactly Brady can do to fix that remains to be seen because he can’t just rip up the playbook and start anew but what way he can make a difference is getting Allen’s confidence back.

“I got to make sure that I bring the energy and I bring the juice and the guys are gonna feed off me,” Brady said, speaking of Allen but also the entire offense. “I think that’ll trickle down to Josh and to the players. Without worrying about how the energy was or whatnot, it’s about ‘hey, what can we do moving forward’ and that all starts with me.”

What time is the Bills vs. Jets game?

Date: Sunday, Nov. 19

Time: 4:25 p.m.

Place: Highmark Stadium

How to watch, stream, listen to Bills vs. Jets

Cable/Network TV: CBS. The game will be available locally via the following stations: WROC (Channel 8, Rochester), WIVB (Buffalo area), WTVH (Syracuse area), WKTV (Utica area), WENY (Elmira area), WRGB (Albany area), and WBNG (Binghamton area).

Online streaming services: You can watch games on and the NFL mobile app, and you can subscribe to NFL+, the league’s own streaming service, though you can’t cast the games to your TV - you must watch on your phone or tablet.

TV streaming: You can also stream games if you have subscriptions to Spectrum, DirecTV, fuboTV, Sling, Vidgo, Hulu + Live TV, YouTube TV, and Paramount+.

Radio: You can listen on SiriusXM satellite radio on Sirius channel 82 and XM channel 228 (Bills feed) and Sirius channel 138 and XM channel 382 (Jets feed). On traditional radio, the Bills Radio Network has stations all across the state. Chris Brown has the play-by-play, Eric Wood is the analyst, and Sal Capaccio is the sideline reporter. The network includes:

  • Rochester (WCMF 96.5 and WROC 950 AM)

  • Buffalo (WGR550, 550 AM)

  • Syracuse (WTKW 99.5/WTKV 105.5)

  • Binghamton (WDRE 100.5FM)

  • Ithaca (WIII 99.9/100.3 FM)

  • Bath (WVIN 98.3 FM)

  • Newark (WACK 1420 AM)

  • Dansville (WDNY 93.9 FM)

  • Elmira (WNGZ 1490 AM)

  • Auburn (WAUB 98.1 FM/1590 AM)

  • Geneva (WGVA 95.9 FM, 1240 AM)

Who is announcing the Bills vs. Jets game?

Play-by-play: Jim Nantz

Analyst: Tony Romo

Sideline reporter: Tracy Wolfson

Bills vs. Jets prediction

Sal Maiorana: Bills 16, Jets 10

I really don’t have much faith in the Buffalo offense getting much of anything done against this Jets defense which has driven Allen batty. Brady replacing Dorsey isn’t going to make much of a difference if the Bills’ wide receivers can’t get open against New York’s outstanding secondary, and the offensive line can’t handle the Jets’ ferocious front four.

On the flip side, though, Zach Wilson stinks, and even though he has two terrific weapons in Garrett Wilson (if he plays) and Hall, I think the Bills’ defense at home will avoid the indignity of having this QB record a third victory against them in his disappointing three-year career.

2023 Buffalo Bills schedule

  • Mon. Sept . 11: Jets 22, Bills 16, OT

  • Sun., Sept. 17: Bills 38, Raiders 10

  • Sun. Sept. 24: Bills 37, Commanders 3

  • Sun. Oct. 1: Bills 48, Dolphins 20

  • Sun. Oct. 8: Jaguars 25, Bills 20

  • Sun. Oct. 15: Bills 14, Giants 9

  • Sun. Oct. 22: Patriots 29, Bills 25

  • Thur. Oct. 26: Bills 24, Buccaneers 18

  • Sun. Nov. 5: Bengals 24, Bills 18

  • Mon. Nov. 13: Broncos 24, Bills 22

  • Sun. Nov. 19, vs. Jets, 4:25 p.m.

  • Sun. Nov. 26, at Eagles, 4:25 p.m.

  • Sun. Dec. 3, Bye week

  • Sun. Dec. 10, at Chiefs, 4:25 p.m.

  • Sun. Dec. 17, vs. Cowboys, 4:25 p.m.

  • Sat. Dec. 23, at Chargers, 8 p.m.

  • Sun. Dec. 31, vs. Patriots, 1 p.m.

  • Sun. Jan. 7, at Dolphins, TBD

This article originally appeared on Rochester Democrat and Chronicle: Buffalo Bills 32, New York Jets 6: Final score, recap, highlights