The drought is over.
With help from the Cincinnati Bengals and a 22-16 win Sunday over the Miami Dolphins, the Buffalo Bills snapped their 17-year playoff drought. The Bills are the No. 6 seed in the AFC playoffs and will play at 1 p.m. Sunday against the Jacksonville Jaguars.
Tyrod Taylor threw for 204 yards and a touchdown. Defensive tackle Kyle Williams had a 1-yard touchdown that was the difference in the game.
The Dolphins mounted a comeback late in the fourth quarter. But the drive was stopped when Bills safety Jordan Poyer intercepted a David Fales pass to seal the win.
The Bills finish the regular season with a 9-7 record. The Dolphins' 2017 season ends with a 6-10 record.
Here is the Buffalo Bills Week 17 report card:
GRADING THE UNITS
Quarterbacks - B-
Once again, Tyrod Taylor did enough. He made some great throws, especially early in the game, and led the Bills on five scoring drives. He had 239 total yards — 204 passing, 35 rushing — against the Dolphins. Taylor has some flaws, but he's a playmaker. Having healthy wide receivers helps, too. He is a big reason why the Bills ended the playoff drought.
Running backs - C
LeSean McCoy struggled and then left the game with an ankle injury. Early reports indicate the injury is a sprain. It would be a big blow to the Bills' offensive if McCoy can't play against the Jaguars. He has been a large part of their offense this season. He is the team's leading rusher and one of its top receivers. The Bills need him to upset the Jaguars. As for the game against the Dolphins, with McCoy out other players stepped up. Kudos to Marcus Murphy, who had seven carries for 41 yards in relief. And Mike Tolbert, who has been slammed by Bills fans this season, rushed seven times for 39 yards, including a bruising 16-yard run that was highlighted by him running over a Miami defender.
Receivers - C+
Nick O'Leary's 26-yard touchdown catch in the first quarter was a highlight. He almost had a second touchdown catch in the second quarter, but the throw was too far over his head. Fellow tight end Charles Clay caught six passes for 64 yards against his former team. The Bills' other receivers didn't have much of a role in this one. Zay Jones had a nice 18-yard catch late in the game. Kelvin Benjamin had two catches for 27 yards in limited action.
Offensive line - B-
The Bills' offensive line was solid against one of the best defensive lines in the league. The Bills' rushing attack made some plays against the Dolphins' front and while Taylor was sacked four times, he was able to make plays with his arm or legs most of the time. Seantrel Henderson deserves praise for filling in when starting right tackle Jordan Mills left the game with an injury. Mills reentered the game in the second half.
Defensive line - B
Kyle Williams made his biggest play on offense. What a moment for the longtime Bill. He has been with this team through some rough times. He scored on a 1-yard touchdown run that proved to be the difference in the game. The Bills went on to win the game and clinch a playoff berth. Who isn't happy for Kyle? He deserves this. The rest of the defensive line played well. Jerry Hughes had two sacks slip out of his grasp. The Bills applied more pressure in this game than they have in most contests this season.
Linebackers - B
The Bills' linebackers stepped up again. Preston Brown had a team-leading 12 tackles (seven solo) in the win. He had a 99-yard fumble recovery for a touchdown reversed on replay. It was a close play and the replay officials determined that Jarvis Landry stepped out of bounds before the ball came loose. Regardless of the final decision, it was a smart play by Brown to pick up the ball and run it back. He didn't give up on the play. You never know in this league. Ramon Humber had a great game against the Dolphins. He finished with seven tackles (six solo), a sack and two tackles for a loss. Matt Milano had seven tackles (four solo) and a tackle for a loss in the win.
Defensive backs - B+
Tre'Davious White. E.J. Gaines. Jordan Poyer. Micah Hyde. The secondary has been the driving force behind the Bills' defense this season. While other aspects of the unit have struggled, this group of defensive backs was consistently good all season. Sunday was no exception. Poyer sealed the win with a late interception. Gaines, who had eight tackles (seven solo) and two passes defensed, nearly had two interceptions in this game. Hyde and White also made big plays at various points of the game to help lead the Bills to victory. If the Bills are going to upset the Jaguars, they need this unit to force some turnovers and shut down Jacksonville's passing attack.
Kicking and punting - A
The special teams unit is important and the Bills' kicking game has been great all season. Steven Hauschka kicked three field goals, including a 49-yarder, and converted his lone extra point attempt in the win. Hauschka finished the regular season with 29 field goals, including seven from 50-plus yards. He has made some clutch kicks this season and hasn't missed an extra point.
Punter Colton Schmidt was great against the Dolphins. He averaged 46.5 yards per punt and pinned the Dolphins at the 2-yard-line on one kick. He finished in the middle of the pack among NFL punters, but it was an improvement over his 2016 season. He showed growth this season. He should have a lock on the job heading into 2018.
Returns and coverage - B-
There are more than a few critiques of this coaching staff, but that can wait until after the season. Sean McDermott and his staff led the Bills to their first playoff berth in 17 years. That deserves an "A" grade. It wasn't an easy road to get here, but they did it. Congratulations to McDermott and his assistants.
OVERALL TEAM PERFORMANCE
The Bills won the game, clinched a playoff spot and now the real work begins. This team showed heart to persevere and remain in contention. They did it. They ended the playoff drought. What a moment.
PLAYERS OF THE GAME
OFFENSE: Kyle Williams. Williams scored on a 1-yard touchdown run in a game the Bills needed to win to clinch a playoff spot. That's the stuff storybooks are made of. Williams looked like a veteran fullback on the play. His celebration was just as great.
DEFENSE: Ramon Humber. Humber had eight tackles (seven solo), a sack and two tackles for a loss. He was bumped from the starting lineup by Matt Milano, but Humber still has a role. He contributed against the Dolphins. The Bills will need him to come up big again if they are going to beat the Jaguars.
Pass rush. While the Bills applied some pressure, it's clear they need someone else on the outside. Jerry Hughes and Lorenzo Alexander aren't going to cut it by themselves. Shaq Lawson's injury is certainly a blow to the pass rush, but even with him in the lineup they didn't produce much. A big-time pass rusher should be one of the Bills' targets in the 2018 draft or free agency.
STAT OF THE GAME
17. The number of years Bills fans have waited for this moment. It's time to celebrate.
STAT OF THE GAME II
1. Kyle Williams only needed one carry to score a 1-yard touchdown on a goal-to-go play. It was easily the play of the game.
The NFL needs to dump Jeff Triplette. He is one of the worst officials in the game. It's time to move on from him. Bring in some new blood. There has to be a veteran umpire or back judge that can do a better job than this guy.
The Bills finish the regular season 9-7. They will be the No. 6 seed in the AFC playoffs. Their AFC wild card game is at 1 p.m. Sunday against the Jacksonville Jaguars.