2020 NBA free agency has largely come and gone, and what a whirlwind it was. Starting less than two days after the 2020 NBA draft, free agency saw the vast majority of impact players come off the board by the end of the weekend. All told, over 100 players have changed teams via free agency or trade.
There were only four teams that had cap space to be major players in free agency. Of those teams, Atlanta and Charlotte chose to be spenders. Detroit did most of their work via trade, as they shuffled players on and off the roster while adding some new players and accumulating future assets. Perhaps most shocking of all was the New York Knicks showing a newfound restraint this offseason. New York signed a small number of players to short-term, highly reasonable contacts and made a couple of small trades.
As with any free agency period, there were great values to be found by teams and there were some contracts that left you wondering what the thought process was. Here are five of the best and worst values of 2020 NBA free agency:
1. Christian Wood | Houston Rockets (via sign & trade) | 3 years, $41 million
Wood was one of the top-rated free agents available. It was assumed he would re-sign with the Detroit Pistons, but as his former team added big man after big man, it was clear Wood was on his way out. The Rockets pounced and got the best value in all of free agency. Under $15 million annual value is a relative steal, as Houston migrates away from micro-ball to a more balanced roster. Wood will likely start at the five for the Rockets and will provide inside/outside scoring and rebounding. He can also play some four when the team goes to bigger lineups.
VanVleet was the best point guard on the free-agent market and it wasn’t particularly close. He had some suitors, but ultimately the Raptors are bringing back their former undrafted free agent. The total value for VanVleet’s deal is more than fair. $21 million for a good starting point guard is the going rate, and now VanVleet is locked up as Kyle Lowry eventually ages out. What makes this deal an especially good value is that the Raptors started the contract out high, then it takes an 8% dip in year two, before rising back up by 8% in year three. That allows Toronto to maximize cap space in the summer of 2021, when the free-agent class will be loaded with stars.
When the rumor mill started churning, reports came out that Bogdanovic was headed to the Milwaukee Bucks via sign-and-trade. The challenge? Those rumors circulated days ahead of the negotiating period opening. That sent up red flags for the NBA league office as to possible tampering. Any chance of a deal to Milwaukee fell apart, and the Hawks swooped in with an offer sheet. The Kings ultimately chose not to match, and let Bogdanovic go. Now, Atlanta has a tough-minded, scoring wing to go along with Trae Young in their backcourt for the next four years. And, should the partnership not work as hoped, Bogdanovic’s contract is easily tradable.
While everyone else was making big trades and handing out huge contracts, the Spurs quietly went about their business, as per usual. Locking up Poeltl for $9 million a year is a relative steal, especially when you look at what some of the other free-agent big men got for contracts. This is probably going to be LaMarcus Aldridge’s last year in San Antonio. That will free up the pivot for Poeltl to hold down. With a bigger role, Poeltl will be a nightly double-double threat and one of the league’s better shot-blockers.
The Miami Heat prioritized flexibility for the summer of 2021. They didn’t give out any contracts, minus Bam Adebayo’s extension, that added guaranteed money to the 2021-22 cap sheet. That left Crowder in a tough spot. He could have taken more money from Miami, but only for one season guaranteed, or he could leave for more stability elsewhere. After playing for five different teams on his last contract, Crowder chose stability, and Phoenix won for it. Crowder will slide in as a starting forward, and if he’s passed in ability by one of the Suns’ younger players, he’ll become a top backup. For $10 million per season, that’s a tremendous value.
When Hayward opted out of his $34.2 million contract with Boston for 2020-21, it was assumed he wanted to be elsewhere and would take a cut in pay to get there. Instead, Hayward landed the richest contract of the offseason. Charlotte has to overpay to get prime free agents, and Hayward tried to sign there in 2014 before Utah matched his offer sheet. But for a player who said before the restart that he still has pain in his surgically repaired left leg, this is a scary contract. Hayward’s raw stats are quite good, and project to be even better with a bigger role. The worry is that he’ll continually miss time on this deal. It brings back bad memories of Grant Hill signing with the Orlando Magic and then never being healthy throughout the life of the contract.
The contract Minnesota gave Beasley is fine on its face. $15 million for a shooting guard who played well following the Wolves acquiring him is fair. But the circumstances are what make it a bad value. Minnesota just drafted Anthony Edwards, who projects to play the same position as Beasley. They also traded for Ricky Rubio, in a move that signals a desire to play D’Angelo Russell off the ball a good amount. Where does this leave Beasley? Certainly, playing less than a player with that contract should. The lone silver lining is it is tradable down the line, should that be the Wolves’ direction.
This one may be too heavily influenced by seeing Favors struggle to keep up while playing in the bubble. If he can get back to the solid player he was with the Jazz for many years, this contract is fine. Utah certainly needed a quality big to play with and behind Rudy Gobert and Favors has plenty of experience doing that. The worry is that Favors looked like he was cooked during the restart. If that holds true, the Jazz added some long-term money that they really don’t need to have on the books.
This one isn’t really about the money. $5 million or so a year for a solid, backup wing is fine. It’s about the process and circumstance. When the rumored sign-and-trade for Bogdan Bogdanovic fell apart, the Bucks had to pivot. That meant re-signing Connaughton, but for the second year in a row, Milwaukee blundered. Last year, they could have created a large, helpful trade exception when they sent Malcolm Brogdon to the Indiana Pacers, but didn’t order their signings in a way to do so. With Connaughton, the team’s initial offer wasn’t a legal contract. That meant going back to Connaughton and his agent with a mea culpa and an amended deal. This time around, Connaughton was able to extract a player option for the final season, making it the second year in a row that the Bucks had a minor fumble cost them.
This one isn’t confined to a single deal, but general confusion about what the Pistons did instead. It looked as if Detroit was entering a rebuilding phase, but their moves over the last week sent a mixed message. At the draft, the Pistons went young and added three players to aid in their rebuilding efforts. They started free agency by taking on some questionable contracts in exchange for future assets. That was all good. Then Detroit handed out bigger than expected contracts to Jerami Grant and Mason Plumlee. It’s not that either Grant or Plumlee is wildly overpaid, they are just overpaid for where the Pistons are. That lack of setting a course, and staying on it, now has Detroit in a bit of an odd place. They are neither good enough to be a playoff team, nor have they fully committed to a youth movement. That’s something that could linger for a year or two more.
More from Yahoo Sports: