If you just look at the contracts on the books next season, there is an ungodly amount of money for teams to throw around this offseason. We’re looking at over $45,000,000 of open “space” for some teams to fill with multiple max players that will undoubtedly bring their franchise to the promise land. Unfortunately, calculating a team’s cap space is not that simple. And while this next salary cap spike will give teams the ability to spend big on free agents, there are a lot of variables influencing how much money any given team has to spend. And for many teams, that means their options are far more limited than it appears. Or, at the very least, it means that teams might have to give up something they have in order to have a shot at something they want.
This post will explain the variables that go into calculating cap space and the steps it takes to calculate that cap space. In addition, it will show the steps that teams can take to maximize their cap space.
II. Cap Holds
Cap holds are a tool that the NBA uses to ensure the free agent playing field is fair and prevents teams from manipulating their cap sheet to act like they have more cap space than they do. There are three basic kinds of cap holds: free agent cap holds, rookie cap holds, and incomplete roster cap holds. Most cap holds add money to a team’s cap sheet for players who are not under contract but are expected to be signed by the team in question due to an advantage it holds. This advantage is in the form of salary cap exceptions. Free agent exceptions (specifically the Bird, Early Bird, and Non-Bird Exceptions) and rookie exceptions give teams unique and unrivaled privileges to re-sign their own free agents or sign a draft pick. As such, free agent and rookie cap holds force teams to put “salaries” on their books as placeholders for expected deals.
a. Free Agent Cap Holds
For every player on a team that will be a free agent in the upcoming offseason, there is a free agent cap hold applied to the team’s salary cap. This applies to any free agent of the team, even if he has not played with the team during the most recent season as long as he hasn’t signed with any other NBA team or been renounced. While the idea is uniform for each one of a team’s free agents, there are factors determining what the cap hold looks like depending on the number of years the player was under contract and whether he is an unrestricted or restricted free agent.
i. Unrestricted Free Agents
Veteran unrestricted free agents have four types of cap holds (Bird, Early Bird, Non-Bird, and Minimum Player) and they depend on the nature of the player’s most recent contract. Many of these cap holds are intrinsically linked to their corresponding exceptions. Rookie unrestricted free agents follow similar rules with slightly different results. Both categories of unrestricted free agents and their cap holds are described below.
Veteran Free Agents
The Bird Exception is for players who have been under contract with the same team for at least 3 seasons or are under such contract and have been acquired via trade and it allows teams to sign players up to the max. The cap hold for Bird Free Agents is (i) 190% of the player’s prior salary if such salary was below the average NBA salary, or (ii) the lower of 150% of the player’s prior salary and the max salary that player can sign if the players prior salary was above the average NBA salary. Kevin Durant, for example, is a Bird Free Agent and his cap hold is $25,852,000 (the 2016-17 max) because his current salary is above the average NBA salary and 150% of his current salary exceeds his max.
The Early Bird Exception is for players who have been under contract with the same team for 2 seasons or are under such contract and acquire via trade and it allows teams to sign players up to 175% of the prior salary or 104.5% of the average NBA salary, whichever is higher. The cap hold for Early Bird Free Agents is 130% of the player’s prior salary.
The Non-Bird Exception is for players who have been under contract with the same team for 1 season or are under such contract and acquired via trade and it allows teams to sign players up to 120% of their prior salary. The cap hold for Non-Bird Free Agents is 120% of their prior salary.
Regardless of how many years they have been with a team or under contract, players who are playing under minimum contracts have a cap hold that does not correspond with the free agent cap holds above. Free agents who are coming off of a year in which they are paid the minimum have a cap hold equal to the minimum salary applicable to that player for the upcoming salary cap year that will not be reimbursed by the league. For most unrestricted free agents, this means the minimum contract for a third year player or $980,431 for the 2016-17 season. It should be noted, however, that the relevant free agent exception will still apply to this player. Hassan Whiteside, for example, has a cap hold for the minimum but he is still an Early Bird Free Agent and the Heat can hypothetically sign him using the Early Bird Exception.
Rookie Scale Free Agents
A separate category of free agents are rookies on their rookie scale contract who do not have their team options picked up for the third or fourth year (otherwise known as the first or second option years). These players become restricted free agents the summer after their team options are declined.
If a player’s first year option is declined by his team, then he is technically an Early Bird Free Agent. His cap hold, however, is not the same cap hold as veteran Early Bird Free Agents but instead is the maximum amount his team can pay him using the Early Bird Exception. That maximum does not correspond to the Early Bird Exception described above but instead is the amount the player would have received under his rookie scale contract if his first year option would have been picked up .
For players who have their second year option declined by their team, they become Bird Free Agents. The cap hold for these players is the maximum amount the team can pay the player under the Bird Exception. Similar to the rookie scale free agents described above, the maximum amount teams can pay these players is the amount the player would have received under his rookie scale contract if his second year option would have been picked up.
Eliminating Unrestricted Free Agent Cap Holds
While free agent cap holds can severely limit or perhaps entirely eliminate money teams have to spend in free agency, teams can get around most cap holds by renouncing a player.
When a player is renounced, his cap hold is eliminated because teams no longer have an advantage in signing the renounced player. If teams want to re-sign the renounced player, they can only do so by using their cap space, or another exception such as the Minimum, Mid-level (or Taxpayer Mid-Level), or Bi-Annual Exceptions. But free agent exceptions become unavailable and the player is technically treated like any other free agent.
Let’s use Dwight Howard and the Rockets for a brief (and simplified) example. Dwight Howard has a player option this summer that he can decline by June 30th. If Howard elects to opt out, he will be one of the Rockets’ Bird Free Agents and his cap hold will be $30,084,000 (or the estimated max salary for 2016-17). That basically eliminates any cap space the Rockets might have. However, if Houston renounces Howard, his cap hold comes off the books, their cap sheet opens up and they have some money to spend. If they wanted to re-sign Howard, the Rockets would need to use some of that cap space or another exception.
ii. Restricted Free Agents
First Round Picks
Restricted free agents also have cap holds, but their value is determined by multiple factors. For first round picks that play through their rookie scale contract, their cap holds are: (i) 250% of their prior salary for players who make less than the average NBA salary or (ii) 200% of their prior salary for players who make more than the average NBA salary. If, however, the player signs an offer sheet with another team, their cap hold will increase to the first year salary provided for in that offer sheet.
It should be stressed that this only applies to first round picks who are on rookie scale contracts. First round picks like Nikola Mirotic who did not sign a rookie scale contract  will not be restricted free agents and thus will have their cap holds determined as described in the “Unrestricted Free Agents” section above.
Second Round Picks
For restricted free agents who were second round picks, cap holds are the higher of their (i) free agent value, (ii) the value of their qualifying offer, or (iii) the amount of a signed offer sheet. Because most second round picks are on minimum contracts and are signed for two or three years, most cap holds for second round picks are equal to the player’s qualifying offer, at least initially. If the player signs an offer sheet with another team, the amount of salary provided in the first year of that offer sheet becomes the player’s new cap hold. Langston Galloway, for example, will be a restricted free agent with the New York Knicks this summer and his cap hold will initially be his qualifying offer of $1,180,431. If the Orlando Magic, for example, sign Galloway to an offer sheet with a first year salary of $5,628,000 (the max allowed due to the Gilbert Arenas Rule ), Galloway’s cap hold would increase to that amount until the Knicks decide to match or let him walk.
b. Rookie Scale Cap Holds
Current Year’s Picks
Teams also have cap holds if they hold a first round pick in the upcoming draft. First round picks have salaries that are already set under the NBA’s rookie scale. All NBA teams with a first round pick have a cap hold for 100% of the rookie scale value of their pick.  For example, the Minnesota Timberwolves are projected to get the number 5 pick in the 2016 NBA Draft. As such, if they get that pick they will have a cap hold for $3,227,100. If the Lakers’ pick falls out of the top 3 and the Philadelphia 76ers have the Lakers’ pick and their own pick, then, assuming the picks are #1 and #4, they would have a two cap holds worth $4,919,300 and $3,952,500, respectively. A team like the New York Knicks, that does not have a first round pick in the 2016 draft, would not have any rookie scale cap holds.
Again, this is a tool that prevents teams from pretending they have cap space when they ultimately do not. If a team has a first round pick, they are likely going to sign him and they generally know how much money will be given to him because of the rookie scale. So a cap hold is necessary because first round picks are not signed immediately and teams can wait until July 15th to make a contract offer.
Past Year’s Picks
In addition to picks made in the most recent draft, teams must also add a cap hold for prior year’s first round picks who they have yet to sign. The cap hold for these players is 100% of the rookie scale value that corresponds to their pick in the year they were drafted. A good example of this is Dario Saric and the Philadelphia 76ers. Saric was drafted #12 in the 2014 NBA with a rookie scale value of $1,803,400. Because he was a Eurostash pick, his cap hold was excluded from Philadelphia’s team salary at the start of the regular season. But because the 76ers still hold his rights, the cap hold is applied to their cap sheet the following July 1st and this pattern continues until Saric is signed or has his draft rights traded or renounced by the 76ers.
c. Incomplete Roster Cap Holds
In addition to cap holds for free agents and first round picks, there is a cap hold for having too few players on your roster. For every open roster spot below 12, a cap hold of the minimum salary for that salary cap year is added. The incomplete roster cap hold for 2016-17, for example, is $541,473. To add up how many players are on a roster, teams use the players who are under contract as well as non-renounced free agents, and first round pick cap holds. These cap holds are mostly used for teams who are clearing their free agent roster for cap space in hopes of landing one big free agent.
II. Salary Cap Exceptions
Cap space is not just about cap holds. In addition to adding cap holds onto current guaranteed contracts, teams must also add all of their exceptions to their cap sheet. This means the Mid-Level Exception, the Bi-Annual Exception, the Disabled Player Exception , and all trade exceptions. Though much like renouncing players, teams also have the option to renounce any or all of their exceptions in order to create cap space. If a team elects to do this, it loses all of those exceptions for the remainder of that season/salary cap year (though such teams would acquire the Room Exception). It is also important to note that a team can lose its exceptions. If a team is below the salary cap even after adding their exceptions to their cap sheet, those exceptions are lost and cannot be regained.
III. Calculating a Team’s Offseason Cap Space
Step 1: Add all guaranteed and non-guaranteed contracts not including qualifying offers.
Step 2: Calculate the free agent cap holds for all of the team’s free agents, including restricted free agents and any non-renounced free agents from prior years, and add to the value of Step 1.
Step 3: Determine what, if any, first round pick the team is projected to receive in the NBA draft and add the rookie scale amount for the upcoming season. Add this to the value calculated after Step 2.
Step 4: Determine whether the team has any unsigned first round picks from previous years. If they do, add the rookie cap holds that correspond to the year they were drafted and their draft position to the amount calculated in Step 3. If they do not, ignore this step.
Step 5: Add any and all trade exceptions, the Mid-Level Exception, the Bi-Annual Exception (if applicable), and Disabled Player Exception (if applicable) to the amount calculated in Step 4.
Step 6: Subtract the amount calculated in Step 5 from the projected salary cap. If a positive number remains, the team’s exceptions are lost and the remaining amount minus those exceptions is the team’s cap space. If the number is negative, the team technically does not have any cap space and must use exceptions to sign free agents
After going through all six steps you should have the amount of cap space (or lack thereof) for that team. Now, if you want to calculate how much cap space that team can clear, follow the steps below:
Step 1: “Waive and renounce” any players with non-guaranteed deals for the next season.
Step 2: “Waive and renounce” all of the team’s unrestricted free agents. To create maximum cap space a team can decline to give any restricted free agents a qualifying offer, making them an unrestricted free agent. These players can be “waived an renounced” as well.
Step 3: “Renounce” all of the team’s exceptions.
Step 4: Determine how many players are left on the roster and subtract that number from 12. If it is a positive number, then you need to multiple that number by the minimum salary for the upcoming season and add it to the guaranteed contracts. If it is zero or below, you don’t need to do anything.
After step four, you should have the maximum cap space a team can create without trading or buying out a player. You can play around with this number by taking some but not all of the clearing steps, keeping in mind that Step 4 cannot be avoided if there are less than 12 players and free agents on a roster.
 A good example of this is Robbie Hummel who did not play with the Timberwolves during the 2015-16 season but has a left over cap hold after becoming a free agent last summer.
 Note: Teams must decide on whether to pick up their option by October 31.
 Eurostash players (or any first round pick) whose draft rights are held for 3 years but have not signed are able to sign a non-Rookie scale contract for any amount of money provided the team has the requisite space or exceptions and the contract does not exceed the players max contract.
 The Gilbert Arenas Rule protects teams who have restricted free agents who are also Early Bird free agents by limiting the first year in an offer sheet to a maximum amount of the Mid-Level Exception.
 The rookie scale listed in the CBA is considered to be 100% of the rookie salary, though teams and agents can negotiate any rookie contract to an amount up to 20% higher or lower.
 Note: Disabled Player Exceptions expire on January 15th of a season so any Disabled Player Exception added to a team’s cap sheet for a summer must have been generated on or after July 1st.