James Cook turned the latest Bills-Jets meeting into a rushing showcase. He ran for 132 yards and two touchdowns, leading Buffalo to a convincing 30-10 victory on September 14, 2025.
Buffalo controlled almost every important statistical category. The Bills gained 403 yards, while New York managed only 154.
Buffalo Bills vs New York Jets Match Summary
The AFC East rivals met at MetLife Stadium in Week 2. Buffalo entered after a dramatic opening-week victory. New York was searching for its first win.
Instead, Buffalo established control immediately. The Bills led 10-0 after one quarter. They stretched that advantage to 20-3 by halftime. The final score finished 30-10.
| Match Detail | Result |
|---|---|
| Match | Buffalo Bills vs New York Jets |
| Date | September 14, 2025 |
| Venue | MetLife Stadium |
| Final Score | Bills 30, Jets 10 |
| Halftime Score | Bills 20, Jets 3 |
| Bills Record After Game | 2-0 |
| Jets Record After Game | 0-2 |
| Leading Rusher | James Cook, 132 yards |
| Leading Jets Receiver | Garrett Wilson, 50 yards |

Sources: NFL official game summary and ESPN box score.
The Stat That Defined the Game
Passing numbers usually dominate discussions around Josh Allen. This game followed a different script.
Buffalo rushed 43 times for 224 yards. The Bills averaged 5.2 yards per rushing play. New York struggled to slow that attack consistently.
James Cook provided the biggest performance. He recorded:
- 21 rushing attempts
- 132 rushing yards
- 6.3 yards per attempt
- Two rushing touchdowns
- A 44-yard longest run
- One reception for three yards
His explosive 44-yard touchdown arrived during the second quarter. That run helped Buffalo create separation before halftime.
Cook’s production also reduced pressure on Allen. Buffalo did not need constant downfield passing. Instead, it controlled possession and kept New York’s defense working.
That formula produced a comfortable road victory.
Buffalo Bills Player Stats
Josh Allen
Allen’s passing totals were modest by his standards. However, Buffalo never needed a huge passing performance.
He completed 14 of 25 passes for 148 yards. He recorded no passing touchdowns or interceptions. His passer rating finished at 73.4.
Allen was much more damaging with his legs.
He rushed six times for 59 yards. That equals 9.8 yards per attempt. His mobility repeatedly helped Buffalo extend possessions.
| Josh Allen Stat | Total |
|---|---|
| Completions | 14 |
| Attempts | 25 |
| Passing Yards | 148 |
| Passing TDs | 0 |
| Interceptions | 0 |
| Passer Rating | 73.4 |
| Rush Attempts | 6 |
| Rushing Yards | 59 |
| Rushing Average | 9.8 |
Allen’s numbers show why box scores need context. His passing line was not spectacular. Yet Buffalo’s offense remained comfortably ahead throughout.
James Cook
Cook was Buffalo’s offensive centerpiece.
He produced 132 yards on only 21 carries. More importantly, he scored twice. His 44-yard touchdown gave Buffalo the game’s biggest rushing highlight.
His performance drove a larger team advantage. Buffalo finished with 224 rushing yards. New York had 100.
Cook alone gained more rushing yards than the Jets team.
That comparison explains Buffalo’s control better than most statistics.
Mitchell Trubisky
Buffalo eventually gave Mitchell Trubisky limited action.
He completed one of two passes for 32 yards. Buffalo therefore finished with 15 completions from 27 attempts.
His role was small. Still, the appearance reflected Buffalo’s comfortable position.
New York Jets Player Stats
New York’s offense faced a completely different afternoon.
The Jets generated only 154 total net yards. Their passing game produced just 54 net yards after sacks. They also failed on all 11 third-down attempts.
That combination prevented sustained drives.
Justin Fields
Justin Fields struggled against Buffalo’s defense.
He completed three of 11 passes for 27 yards. He threw no touchdowns or interceptions. His passer rating was 39.6.
Fields contributed more as a runner. He gained 49 yards on five carries. His longest run covered 27 yards.
His complete line included:
| Justin Fields Stat | Total |
|---|---|
| Completions | 3 |
| Attempts | 11 |
| Passing Yards | 27 |
| Passing TDs | 0 |
| Interceptions | 0 |
| Passer Rating | 39.6 |
| Rush Attempts | 5 |
| Rushing Yards | 49 |
| Longest Rush | 27 yards |
Fields later left during the fourth quarter. The Jets reported that he entered concussion evaluation after a Joey Bosa sack.
Tyrod Taylor replaced him.
Tyrod Taylor
Taylor provided New York’s only touchdown pass.
He completed seven of 11 attempts for 56 yards. He threw one touchdown without an interception. His passer rating reached 106.6.
Taylor also rushed three times for 21 yards. His late touchdown pass went to tight end Jeremy Ruckert.
Those numbers improved New York’s final totals. However, the game was already firmly controlled by Buffalo.
Garrett Wilson
Garrett Wilson remained New York’s leading receiving option.
He finished with four receptions and 50 receiving yards. No other Jets receiver created comparable production.
Wilson’s numbers represented a large portion of New York’s passing output. However, the Jets rarely established offensive rhythm.
That problem extended across the entire unit.
Bills vs Jets Team Stats Comparison
The team numbers reveal how one-sided the matchup became.
| Category | Buffalo Bills | New York Jets |
|---|---|---|
| Final Score | 30 | 10 |
| First Downs | 25 | 11 |
| Total Net Yards | 403 | 154 |
| Rushing Yards | 224 | 100 |
| Net Passing Yards | 179 | 54 |
| Offensive Plays | 71 | 47 |
| Third Downs | 5/14 | 0/11 |
| Fourth Downs | 2/2 | 3/3 |
| Turnovers Lost | 0 | 1 |
| Time of Possession | 38:21 | 21:39 |
Source: NFL Game Summary.
Three differences stand out immediately.
First, Buffalo gained 249 more total yards. Second, Buffalo held possession nearly 17 minutes longer. Third, New York converted zero third downs.
Those gaps created Buffalo’s comfortable margin.
How the Game Changed: A Short Timeline
Rather than focusing only on the final box score, the scoring timeline shows how Buffalo built control.
First Quarter: Buffalo Establishes the Lead
Buffalo scored 10 unanswered points.
That early advantage changed New York’s offensive requirements. The Jets could not simply remain patient throughout the afternoon.
Buffalo already had control of the scoreboard.
Second Quarter: Cook Creates Separation
The Bills added another 10 points before halftime. New York managed only three.
Cook’s 44-yard touchdown run became the defining offensive play. His speed turned a rushing opportunity into an immediate score.
Buffalo entered halftime leading 20-3.
Third Quarter: Jets Stay Scoreless
New York needed a strong third quarter.
Instead, Buffalo’s defense maintained control. The Jets scored no points during the period.
Buffalo added another field goal. The lead therefore reached 23-3 entering the fourth.
Fourth Quarter: Buffalo Finishes the Job
Buffalo added seven more points.
New York finally produced a touchdown after Taylor replaced Fields. The score reduced the margin but never threatened Buffalo’s victory.
The final result stood at 30-10.
Why Buffalo Won So Comfortably
1. James Cook Controlled the Ground Game
Cook was the biggest individual difference.
His 132 rushing yards exceeded New York’s entire team rushing total. His two touchdowns provided Buffalo’s most important scoring production.
Buffalo could therefore avoid forcing difficult passes.
2. Josh Allen Added Another Rushing Threat
Defenses cannot focus exclusively on Buffalo’s running backs.
Allen gained 59 rushing yards himself. His six attempts averaged 9.8 yards each.
Cook and Allen combined for 191 rushing yards.
That was 91 more than New York’s entire team.
3. Buffalo Dominated Possession
The Bills held the football for 38:21.
New York possessed it for only 21:39.
That difference affected both sides. Buffalo’s offense gained more opportunities. Its defense also received longer recovery periods.
4. The Jets Could Not Convert Third Downs
New York finished 0-for-11 on third down.
Buffalo converted five of 14 attempts.
The Jets therefore struggled to extend drives. Their 47 offensive plays were 24 fewer than Buffalo’s 71.
5. Buffalo Prevented Explosive Passing Plays
Fields produced only 27 passing yards.
Taylor increased New York’s numbers late. Yet the Jets still finished with only 83 gross passing yards. After sacks, that became 54 net passing yards.
Garrett Wilson managed 50 receiving yards. However, Buffalo prevented New York from building a consistent passing attack.
Player Performance Scorecard
This scorecard provides another way to read the matchup.
| Player | Key Production | Match Impact |
|---|---|---|
| James Cook | 132 rush yards, 2 TDs | Game-changing |
| Josh Allen | 148 pass yards, 59 rush yards | Strong |
| Garrett Wilson | 4 catches, 50 yards | Best Jets receiver |
| Justin Fields | 27 pass yards, 49 rush yards | Limited |
| Tyrod Taylor | 56 pass yards, 1 TD | Late contribution |
Cook clearly owns the top performance.
Allen did not need elite passing statistics. His rushing ability added another problem for New York.
For the Jets, Wilson provided their strongest receiving numbers. Taylor supplied the team’s only passing touchdown.
What the Stats Say Beyond the Final Score
A 20-point victory already looks convincing.

The deeper statistics make Buffalo’s dominance clearer. The Bills more than doubled New York’s total yardage. They also produced over three times as many net passing yards.
Buffalo did not rely on turnovers either.
New York lost one fumble. Buffalo lost none. Yet the 30-10 margin mainly came through sustained offensive control.
The Bills recorded 25 first downs. New York recorded only 11. Buffalo also ran 71 offensive plays compared with 47.
That means the result was not built around one lucky play.
Buffalo consistently won possessions.
Where This Result Fits in the Bills-Jets Rivalry
Buffalo and New York have one of the AFC East’s oldest rivalries.
Through their first 131 meetings, including postseason play, Buffalo held a 73-58 overall advantage. That record includes a 72-58 regular-season mark and a 1-0 postseason record.
The franchises first met in 1960. New York was then known as the Titans.
The September 2025 result continued Buffalo’s recent advantage. Reuters reported that the 30-10 victory was Buffalo’s fourth consecutive win against New York.
That history adds context to the result.
This was more than another Week 2 victory. Buffalo again controlled a familiar divisional opponent.
Key Takeaways From Bills vs Jets Player Stats
James Cook produced the game’s strongest individual performance. His 132 rushing yards and two touchdowns drove Buffalo’s offense. Josh Allen added 59 rushing yards despite a quiet passing day.
New York had few offensive answers. Fields passed for only 27 yards. Wilson led Jets receivers with 50 yards. Taylor supplied their only touchdown pass.
The biggest difference came from overall offensive control. Buffalo won total yardage 403-154. It won first downs 25-11. It also held possession for 38:21.
Those numbers explain the 30-10 score.
Buffalo did not require a huge Allen passing performance. Instead, Cook powered the rushing attack. The defense shut down New York’s passing game. Together, those advantages created a decisive AFC East victory.
Frequently Asked Questions
Who won the latest Buffalo Bills vs New York Jets matchup?
Buffalo won 30-10 on September 14, 2025. The game was played at MetLife Stadium.
Who had the most rushing yards?
James Cook led everyone with 132 rushing yards. He also scored two touchdowns.
How many passing yards did Josh Allen have?
Allen completed 14 of 25 passes for 148 yards. He threw no touchdowns or interceptions.
How did Justin Fields perform against Buffalo?
Fields completed three of 11 passes for 27 yards. He also rushed for 49 yards before leaving for concussion evaluation.
How many total yards did the Bills gain?
Buffalo recorded 403 total net yards. New York finished with 154.
What was the biggest statistical difference?
Buffalo’s ground game was especially decisive. The Bills rushed for 224 yards, compared with New York’s 100.
