Whether NBA front offices have actually started to learn from their past sins or are merely being saved by the built-in safeguards of the current collective bargaining agreement, there appear to be fewer awful contracts these days.
Still, as we work through the third edition of this annual roundup, it's clear that teams are still finding ways to overpay for veteran talent.
As with the 2018 and 2019 editions of these rankings, the main rule is that I'm only looking at the remaining terms of a player's contract. Also, anyone in the final year of their deal is exempt from inclusion; in today's NBA, even the most onerous contracts can become valuable once they're expiring.
After showing modest improvement on his outside scoring from 2017-19, Aaron Gordon hit just 30.8% of his threes this season, and he still hasn't put together his physical tools on the defensive end. Dunk contests aside, the bloom is off the rose for the Orlando Magic tweener.
Clint Capela averaged 14.9 points, 12.2 rebounds, and 1.7 blocks per game over his final three seasons with the Houston Rockets - but the team ultimately thought it had a better chance of winning by swapping out his interior size for the versatility of forward Robert Covington. That move said a lot about how traditional centers are valued in 2020.
It's unclear what happened to the Denver Nuggets' budding core piece over the past two years, but Gary Harris' scoring average has dipped to just 11.7 points per game with a 48.8% eFG since his four-year, $84-million extension began in 2018.
* Player option
The historically great floor general returned to All-Star status after three seasons without it, but he's now 35 and will have the second-highest cap hit in the league next season, trailing only Stephen Curry.
It's a classic bind: Chris Paul's presence prevents the retooling Oklahoma City Thunder from bottoming out, but his remaining salary is too great to easily reroute him to a club where he can contend for a ring. Any team trading for him would have to be a little desperate - say, the Milwaukee Bucks trying to convince Giannis Antetokounmpo to sign an extension.
The rap against Draymond Green is that although he's proven immensely valuable as a tertiary piece alongside more traditional stars like Curry and Klay Thompson, he's not built to be "The Guy."
That showed in 2019-20, with Kevin Durant gone and Curry and Thompson facing significant injury-related absences. Green put up numbers similar to his 2018-19 campaign, but the Warriors stumbled to a league-worst 15-50 record through March 11.
* Player option
We know Blake Griffin's upside when he's healthy. The downside looks like 2019-20. The six-time All-Star started the season hurt, was limited when he could take the floor, and was effectively done for the year by late December. After so many injuries, that kind of outcome seems far likelier than playing up to his potential at this point.
Though Harrison Barnes made the Sacramento Kings' offense marginally better last season, that lift was largely negated by porous defense: The Kings gave up 111.4 points per 100 possessions with Barnes on the floor, but 106.4 per 100 when he sat.
DeAndre Jordan's cap hit isn't too unpalatable when you consider it as part of the cost of the Brooklyn Nets acquiring both Durant and Kyrie Irving last summer. Still, a traditional, interior-oriented center whose production relies on athleticism doesn't have time on his side.
It's partly a result of playing five-and-a-half seasons for a turbulent Minnesota Timberwolves organization, but it's a little hard to tell which parts of Andrew Wiggins' game are salvageable. He takes far too many long midrange shots, doesn't connect on enough threes, and often looks disengaged on the defensive end. At least he'll only be 25 to start next season.
The fourth season of Eric Gordon's extension is only guaranteed if he makes an All-Star team or meets fairly unlikely performance criteria. Based on his 2019-20 performance, this is effectively a three-year, $54.7-million contract.
The soon-to-be 32-year-old shot 31.7% on over eight threes per game last season, and injuries held him to 36 of a possible 72 appearances. The Rockets desperately need Gordon to live up to his salary for the team to have a real shot at winning a title during the James Harden era.
Kevin Love put up virtually the same averages in 2019-20 (17.6 points, 9.8 rebounds) as he did at age 29 in 2017-18, but as was the case for the Timberwolves during his time in Minnesota, his presence alone is not enough to put the Cleveland Cavaliers in the playoff hunt. His cap hit for 2020-21 ranks 20th in the league.
*Guaranteed for $14.5 million; final year becomes guaranteed for $19.5 million if 76ers reach The Finals and fully guaranteed if they win the title
Al Horford averaged 11.9 points, 6.8 rebounds, and four assists with 35% shooting from the arc in his first year with the Philadelphia 76ers - not far off from the production we've come to expect from the understated five-time All-Star.
Unfortunately, even the typically versatile Horford struggled to fit in on a roster big on size but short on perimeter scoring. In 420 minutes in which Horford shared the floor with Joel Embiid, Ben Simmons, and Tobias Harris, the 76ers' offense became anemic, scoring just 99.6 points per 100 for a net rating of 0.4.
Finding another team open to bringing in Horford via trade seems like a tough task. The 76ers might have to ride this one out - or attach draft assets to shed his salary.
The 76ers aren't off the hook yet. Though he's six years younger than Horford, Harris' deal is even more punishing to the team's cap sheet, thanks to a higher average annual value and a fourth year.
Harris is just fine, but he's not a special player, and he's paid like one. He hit 39.3% of his threes over the past three seasons, though just 35.6% in a 76ers jersey. He's a reasonably good passer and takes care of the ball. A solid defensive rebounder, he's an average-to-mediocre defender overall.
Making matters worse, Harris has a trade kicker, entitling him to the lesser of either a 5% raise or $5 million if Philadelphia does find a willing trade partner.
Russell Westbrook remains as prolific as he is inefficient. According to Cleaning the Glass, the former MVP's 36.3% usage rate placed him in the 98th percentile among point guards, but his points per 100 shot attempts (107.7) and effective field-goal percentage (49.3%) ranked below league average for his position.
It's a minor miracle that his contract has already been traded once, though it required Paul's megadeal to balance the books (a trade Houston lost).
But new Rockets general manager Rafael Stone must consider trading Westbrook, regardless of the cost of shedding his cap hit. There's little indication that Harden and Westbrook can cohabitate on a title contender at this stage of their careers.
Another season has come off the books, but John Wall once again reigns supreme as the owner of the NBA's worst contract.
Whether Wall could have lived up to the deal before he was beset by a series of significant lower-body injuries - including his most recent malady, a ruptured Achilles tendon - we'll never know. The former No. 1 pick has played just 73 regular-season games since October 2017, and none during the 2019-20 season.
The question now is not whether Wall can return to All-Star status but whether he can stay healthy as a net-positive contributor over a full season. Despite boasts that he'll return better than before, Wall's game was always predicated on dynamic athleticism; if he now lacks the foot speed to break down half-court defenses and lead fast-break charges, the decline will be steep for one of the top point guard talents of the 2010s.