Is there something not quite right with the max salary in the NBA?

Is it normal that someone like Harrison Barnes and Lebron James get the same salary?

Actually, Harrison Barnes and LeBron James don’t get the same salary. Barnes is slated to make roughly $22 million for the 2016–2017 NBA season, while LeBron is slated to make roughly $31 million.

While both Barnes and LeBron are “max salary” players, there are actually three different tiers of max salaries, determined by how many years of service a player has in the NBA.[1] Barnes, being a player with less than 7 years in the NBA before his most current contract, was eligible for the lowest tranche of maximum salaries; a salary that takes up roughly 25% of the salary cap. LeBron, being a player with 10 or more years in the NBA before his most recent contract, was eligible for the highest tranche of maximum salaries: a salary that takes up roughly 35% of the salary cap.

Why is it this way? I am sure the cap was installed to make sure the best players don’t get exorbitant salaries….

This is generally correct. The NBA owners and the NBA Players Association collectively bargain how the core financials of the NBA work. As part of that, the whole structure of the NBA’s salary cap system is instituted. The salary cap was instituted to protect owners, while the minimum/maximum salary system was instituted to protect the majority of players.

The maximum-salary system, however, wasn’t as much intended to prevent the best players from getting exorbitant salaries (the salary cap does that already), as much as it was to prevent a few players getting most of the already capped money. In a salary-capped system, having a maximum salary hurts a player like LeBron James, but helps a player like Kyle Korver by ensuring that a large percentage of the money spent on player salaries isn’t devoted to a small number of players.

…but couldn’t they have thought of a way of smoothing out the salary distribution for the rest?

Not really?[2]

The issue here is that a player’s skills are quantifiable: a player does things that lead to wins and a win is worth “X” in salary. Let’s, for the moment, say that a win is worth $2.4 million; if Harrison Barnes does things that are worth about 9 wins, he’s worth the $22 million that is his maximum salary. That LeBron James does things that are worth more than the 13 wins his salary suggest he should be providing is simply a consequence of a capped system; players at the top don’t get adequately compensated for what they do, while players at the bottom might make more than they should.[3] It is also important to note that sometimes NBA teams make bad decisions; that Harrison Barnes makes $22 million is not to say that he is worth $22 million, just that he was believed to be worth $22 million to the Mavericks under those particular circumstances.

[1] There are, of course, some addenda to this that make it more complex (e.g. the “Rose Rule” and the mandated 105% maximum increase for a new contract), but this simple version will suffice.

[2] I mean, I’m sure there are “better” ways, but they would be needlessly more complex and decidedly player-unfriendly.

[3] Though, in a system that is, in effect, doubly capped (first by what players, overall, can earn, and then by what a single player can earn), this has the effect of allowing most players to be compensated in a “more correct” fashion.

The NBA salary structure is complex as it is so I doubt that they never consider it. We already have veteran minimum, rookie scale, mid-level exceptions and bird’s right. So they have considered “somehow” the distribution of salary with the rest. Harrison Barnes got the maximum allowable but team does’t have to pay him that much. But why do they? Simple economics. Law of supply and demand. If Dallas did not pay Harrison Barnes that much, another team will. There’s just not many great players available.

The fact that there is a max salary at all is the reason for it. It sets an artificial ceiling on how much a given player can make, designed to protect teams from devoting too much money to a single player. In a truly free market, a team could rationally decide to allocate nearly all of its budget towards LeBron James and fill out the rest of the roster with minimum salary players.

A note: the new “designated veteran” extension that was added in the new CBA actually attempts to address this by letting teams offer players with a certain number of years in the league, with the same team, and with a certain number of All-NBA appearances a substantially larger contract than they’d otherwise be able to. However, so long as there is a max salary that is artificially kept lower than the amount that the best players could command in its absence, these situations will occur.

One other note: LeBron and Barnes actually don’t make the same amount of money, LeBron makes ~$31M, while Barnes makes ~$25M, but that’s related to their years of experience. You’re correct that both make the maximum annual salary the team that signed them could offer them at the time.

There are many ways to think about it, which I’m sure the other answers will get to.

One unconventional way to think about it is this: You only know Lebron is good because he beats up on Harrison Barnes. If he just dunked on high school players, it wouldn’t be the same product.

People at the level of Harrison Barnes is inherently a part of the overall “product” as much as Lebron. The product is a game, a competition – you need both winners and losers to perform it. The quality of the whole league is important.

The cap has changed but the fact they put a limit on individual salary is where it comes in that so many players make similar money even if they aren’t as good as say LeBron James , but his salary and Barnes aren’t the same. The fact is the max is the max so your not going to be able to get LeBron but a team has to decide if they want to give certain guys max deals if they believe in them enough to because if they don’t the next team might and steal them away. It’s a need based league, some guys are getting extremely overpaid on max salaries.