Cornerback is always one of the league’s most interesting positions to analyze. It’s a tough job, one where even the best will be beaten on occasion, sometimes badly. The difference between average and elite is how difficult a player can make life for opposing offenses in a league that is ever more pass-oriented.

One of the stories of the season has been the precipitous decline of Jets CB Darrelle Revis—once the league’s best corner—to a barely viable starter, one who doesn’t currently rank within the top 50 at the position in terms of overall grade. There have been other interesting stories, too, however.

Let’s take a look at the top 25 corners this season as we head into Thanksgiving. This list doesn’t just run according to Pro Football Focus' overall grades, but makes subjective adjustments for role, playing time, and opponent:

1. Aqib Talib, Denver Broncos, 90.8 overall grade

Aqib Talib has long possessed one of the most impressive skill-sets in the league among cornerbacks, flashing the ability to shut down any receiver, but 2016 has been a career year for him, as it’s the first season he has done it consistently week-to-week, with no real lapses to date. Talib has allowed just 9.3 yards per reception, 53.7 percent of the passes thrown his way to be caught, and opposing QBs have a passer rating of just 37.0 when throwing into his coverage. That’s 2.6 points lower than if those quarterbacks just threw the ball out of bounds every snap, thanks to three interceptions and no touchdowns surrendered this year. Aqib Talib has been the league’s best corner this season.

2. Malcolm Butler, New England Patriots, 86.4

Outside of Talib, there really hasn’t been a corner that has been consistently “shutdown,” but Malcolm Butler has had a fine season, outside of a couple of lapses. Against Miami back in Week 2, he surrendered 157 receiving yards, and he coughed up another 94 against Pittsburgh; beyond those games, he has given up 35 yards or fewer on six of his eight outings, and over the entire season, has allowed just 52.9 percent of passes into his coverage to be caught, despite occasionally being asked to track elite receivers.

3. Chris Harris Jr., Denver Broncos, 87.2

There is little doubt at this stage that Chris Harris Jr. is an excellent corner, even if he doesn’t have the same responsibilities as some other players on this list. Harris will play outside and in the slot, and does go up against legitimate No. 1 receivers when Denver elects not to track them; more often than not, he does just as well against them as anybody else. This season, Harris has allowed under 10 yards per reception, and just 53.8 percent of passes thrown into his coverage to be caught.

4. Terence Newman, Minnesota Vikings, 85.9

What Terence Newman is doing in 2016 is unprecedented in the PFF era (since the 2006 season), and doesn’t seem like it should be possible. Newman is 38 years old, and is having maybe the best season of his career. Darrelle Revis is seven years younger, and Father Time is taking a severe toll on the Jets CB. Newman has allowed just 8.6 yards per reception, one touchdown, and—the most ridiculous number of all—just 23 yards after the catch all year. He has rarely been beaten in 2016, but even when he is, the receiver isn't going much further with the ball.

5. Patrick Peterson, Arizona Cardinals, 84.4

Patrick Peterson hasn’t allowed more than 73 receiving yards in a game all season, and in six games, has surrendered just two receptions or fewer. He may not be racking up interceptions, but he has been asked to track some of the league’s best receivers, and limited the damage they have done like few other corners have been able to do. Peterson has given up a pair of touchdowns this season, but has also made some spectacular plays; QBs throwing his way have a passer rating of 72.8.

6. Janoris Jenkins, New York Giants, 84.3

Janoris Jenkins has been a success in New York, and largely eliminated the huge coverage busts that have plagued his career before this season. He has surrendered just one touchdown in 2016, having been beaten for at least five in every previous year of his career, and is allowing the lowest passer rating into his coverage (64.4) and completion percentage (53.2) of his career, also. Jenkins already has eight pass breakups and two interceptions.

7. A.J. Bouye, Houston Texans, 87.9

One of the biggest revelations of the 2016 season, A.J. Bouye has taken the opportunity afforded him by injuries in the Houston secondary, and has been exceptional. Bouye has yet to surrender a touchdown, and has been beaten for just 181 yards, despite racking up 346 snaps of playing time to this point in the season. When thrown at, he has allowed a passer rating of just 55.6, and has seen multiple additional big plays nullified by penalty over the year, notably against Denver and Demaryius Thomas.

8. Casey Hayward, San Diego Chargers, 84.2

Casey Hayward finally got the chance to prove there is more to his game than just playing the slot. For San Diego this season, he has had the chance to play outside, quickly becoming the team's No. 1 cornerback after Jason Verrett went down injured. Hayward has surrendered just one touchdown all season, intercepted five passes, and allowed a passer rating into his coverage of just 55.5 on 63 targets.

9. Morris Claiborne, Dallas Cowboys, 84.9

A year ago, the idea that Morris Claiborne could play like a top-10 corner would have seemed ridiculous, but he has turned his career around in 2016, and has been one of the biggest surprises on a Dallas team filled with them. Before this season, Claiborne had allowed an average passer rating of 106.0, and a completion percentage of 65.0; in 2016, his numbers are on a different level entirely. The Cowboy has allowed a passer rating of just 64.1 when thrown at, and only 54.2 percent of the passes thrown into his coverage have been caught. The average catch he has surrendered this year has been just an 8.2-yard gain, compared to an average of 14.4 for his career previously.

10. Dominique Rodgers-Cromartie, New York Giants, 84.1

The Giants become the second team to have more than one corner featured on this list, with Dominique Rodgers-Cromartie joining Janoris Jenkins. DRC has allowed only one touchdown and made a series of plays, despite a new role playing all over the defense—including the slot. Rodgers-Cromartie has 137 snaps from the slot in coverage this season, compared to just 32 all last season, and has proven to be a very capable corner from inside as well as out.

11. Josh Norman, Washington Redskins, 83.5

Josh Norman may not be playing quite as well as he did a season ago in Carolina, but he has still been very good for Washington, albeit prone to getting beat a little more often. Norman has been beaten for three touchdowns (having surrendered only two all of last season), and has only one pick, but he does have eight pass breakups, has allowed only 52.0 percent of the passes thrown his way to be caught, and has generally made plays even when shadowing top receivers. Norman owns a league-high 12 penalties, though, three more than any other corner, and needs to rein in his play a little.

12. Sean Smith, Oakland Raiders, 84.2

Sean Smith begins a run of players that have played very well this season, but have some bad games in their tape. In the opening game of the season, Smith was torched by Saints WR Brandin Cooks for a 98-yard touchdown and 183 yards overall by New Orleans; since then, he has given up only 282 yards in nine games. That’s an average of just 31.3. In two of those games, Smith didn’t surrender a single catch, and in two more he allowed only one reception. Smith has now gone eight straight games without surrendering a touchdown catch.

13. David Amerson, Oakland Raiders, 83.5

Like his teammate, David Amerson has made plays, but has also given up some this season. He has already allowed four touchdowns, having surrendered just one as a Raider all of last season, and two overall (one for Washington before he was cut). Amerson has countered those plays with 10 pass breakups and a pair of interceptions, and been an active player at the catch point, forcing some tough catches from receivers.

14. Xavier Rhodes, Minnesota Vikings, 81.5

Xavier Rhodes has had some signature games, and none better than this past week, where he allowed a passer rating of 0.0 against Arizona, picking off QB Carson Palmer twice and bringing one back 100-yards for a touchdown that ultimately was the difference. Over the season, Rhodes has allowed a passer rating of just 31.5, the best mark in the NFL, and allowed just one touchdown—but that score cost them the game against Detroit in overtime.

15. Brent Grimes, Tampa Bay Buccaneers, 83.5

Another CB in a run of players that has given up some big plays this season, but made plenty of big ones, too, Brent Grimes has surrendered four touchdowns so far, but also has a pair of picks—one of which was pretty spectacular—and broken up eight passes. He has allowed a completion percentage of just 55.6 percent when targeted, and has been the lone player able to hold up against legitimate receivers among Tampa Bay's cornerbacks this season.

16. Marcus Peters, Kansas City Chiefs, 81.1

Marcus Peters may play the ball better than any corner in the game, but it doesn’t come without some big plays on the other end. He has five interceptions—tied with Casey Hayward for the most among corners—and eight pass breakups, and has allowed a passer rating of just 64.4 when targeted, but the second-year CB has allowed more than 60 percent of passes thrown his way to be caught, and is surrendering an average of 14.5 yards per catch.

17. Richard Sherman, Seattle Seahawks, 78.5

I don’t think Richard Sherman has played as well this season as in years past, but he remains one of the league’s toughest corners to beat, despite being given more responsibility than most. Sherman has been asked to track some receivers this season, and overall, he has allowed a passer rating of only 59.1 when targeted, remaining the league’s toughest corner to complete a pass on, going 16.2 snaps in coverage for every reception he allows—the best mark in the league, and 1.4 snaps higher than the next-best figure.

18. Brandon Carr, Dallas Cowboys, 81.6

The Dallas Cowboys become the fourth team to have two corners land on this list, something that would have seemed unbelievable a year ago. Brandon Carr had a couple of ugly games earlier in the year, but over the past seven games, has allowed an average of just 30.7 receiving yards, and in four of those six games, has surrendered just a single catch. Against Cincinnati, Carr allowed A.J. Green to catch just one pass for 9 yards on three targets.

19. Darius Slay, Detroit Lions, 82.5

Darius Slay hasn’t been quite as good in 2016 as he was a year ago, but there is still a lot of good play in his tape. He has allowed four scores already this season, but surrendered a total of just 288 receiving yards. Slay has seven pass breakups, despite only one interception. Overall, the Lions CB has allowed 54.2 percent of passes thrown his way to be caught.

20. Tramaine Brock, San Francisco 49ers, 82.3

Playing on a Chip Kelly team means you are going to be on the field a lot, whether you play offense or defense. Tramaine Brock already has 732 snaps of game time—100 more than many players on this list—and though he has been something of a boom-or-bust player, there has been a lot of good. He has given up five touchdowns, but he has allowed fewer than 50 percent of passes thrown his way to be caught (49.2) and has played well against the run.

21. Lamarcus Joyner, Los Angeles Rams, 82.1

The first CB to play primarily in the slot to make the list, Lamarcus Joyner has been excellent for the Rams when on the field this season. After his Hard Knocks drama, Joyner’s season has seen him allow just one touchdown catch, and he has been beaten for only 8.5 yards per reception. Joyner doesn’t have an interception on his stat sheet, but he has broken up four passes and hasn’t been beaten for a catch longer than 29 yards all year.

22. James Bradberry, Carolina Panthers, 80.4

The play of rookie James Bradberry has been impressive. A second-round rookie out of Samford, Bradberry has made the leap from the FCS to being the No. 1 corner for his new NFL team in his rookie season, and has started to look very good. Bradberry has shown the ability to make plays in both man and zone coverage, breaking up passes he has no right to challenge for, and hasn’t surrendered a catch longer than 28-yards all season. The Panthers' defense has looked notably better the rookie is in the lineup.

This PD from James Bradberry on TNF was ridiculous. Exceptional read & break to bail out Coleman in quarters, could watch this all day. pic.twitter.com/mQei9giysa — Ben Stockwell (@PFF_Ben) November 20, 2016

23. Captain Munnerlyn, Minnesota Vikings, 81.0

The Vikings become the only team to find their top three corners on this list. Captain Munnerlyn hasn’t been quite as good as Rhodes and Newman, but he has been a very good third act. Munnerlyn has solid grades in every area PFF measures, and has allowed just one touchdown from 43 targets. With it being the Vikings, he also has a QB hurry to his name on the blitz, and that came beating Giants LT Ereck Flowers for the pressure.

24. Byron Maxwell, Miami Dolphins, 79.6

Byron Maxwell at one point this season was playing poorly enough to get benched by the Miami Dolphins, but since his return, he has been a different player, even making PFF’s Team of the Week, showing some of the ability he displayed in Seattle that made the Eagles pay such big money for his services not that long ago. Maxwell has an interception and seven pass breakups to his name, and six games this season in which he surrendered fewer than 35 receiving yards.

25. Prince Amukamara, Jacksonville Jaguars, 81.2

At this point in the list, we are coming across players that have been far from elite, but have made some good plays and have been solid overall. Prince Amukamara has surrendered a pair of touchdowns, and has been beaten for a 56-yard catch, but allowed only 53.7 percent of passes thrown his way to be caught overall, and has been flagged just twice—an area many corners hide bad plays statistically, trading receiving yardage for penalty yardage.