*Last updated 1/6/2013
What is Expected Points Per Shot?
Expected Points Per Shot (XPPS) is a statistic that measures the quality of a player’s shot selection.
How is it calculated?
Not all shots are created equal. A layup is much more likely to go in than a long jump shot. A three-pointer is also less likely to go in than a layup, but if it does go in it earns an extra point. All these trade-offs can be measured numerically. I used statistics from NBA.com and looked at every shot, made and missed, going back to the 2000-2001 season. The NBA groups those shots into five locations – Restricted Area, In The Paint (Non-RA), Mid-Range, Corner 3, Above The Break 3. By calculating the total number of points scored on shots from each location and dividing it by the number of attempts we arrive at an expected value for shots from each location. Here are those averages:
- Restricted Area – 1.183
- In The Paint (Non-RA) – 0.793
- Mid-Range – 0.788
- Corner 3 – 1.157
- Above The Break 3 – 1.048
For my evaluation I also included free throws. The basketball stats community has agreed on 0.44 as the standard modifier for calculating shooting fouls from total free throw attempts. That means that multiplying 0.44 by a player’s total free throw attempts will give you a very close approximation of the number of times they went to the free throw line for two shots. I also calculated the average value of a trip to the free throw line for two shots as 1.511.
With those expected values we can calculate a player’s Expected Points Per Shot. We multiple their total attempts from each area by the expected value of shots from that area. We add that total to the totals from all other areas. We then divide that total by all of a player’s shot attempts, including the calculated trips to the free throw line. The result is Expected Points Per Shot.
It’s important to remember that this is a measure of the quality of a player’s shot selection. Players who take a lot of easy shots like layups or corner three-pointers will have a higher value. However, players under and over-perform league averages all the time. For that reason I compare Expected Points Per Shot to Actual Points Per Shot. Calculating the difference between the two lets us see who’s shooting accuracy is better or worse than we would expect.
How do I read and use the visualization?
The graph across the top shows all the players in the league, grouped by team. Players are marked above or below the horizontal axis by the difference between their Actual Points Per Shot and their Expected Points Per Shot. A positive difference places a player above the axis, a negative difference places them below. The size of each mark represents each player’s minutes per game.
The central graph marks each player by both their Actual Points Per Shot and their Expected Points Per Shot. Players marked in green are outperforming the expected value of their shot selection. Players in red are underperforming the expected value of their shot selection. Again, the size of each mark represents each player’s minutes per game.
Below the central graph are set of filters. This will let you control the display of both graphs and the bottom table. You can filter by team, focus on a specific player or players, or narrow the results by total minutes, minutes per game, Usage, XPPS, Actual Points Per Shot, or the difference between the two. If at any point you want to reset all the filters, click the button at the bottom of the page that looks like a circle with an arrow.
The table at the bottom shows many of the raw numbers used to create the visualization. For each player you can view their team, age, minutes, minutes per game, Usage, XPPS, Actual Points Per Shot, Difference. You can also view the percentage of a player’s field goal attempts that come from each area of the floor, as well as their FG% from each area. For free throws you can see each player’s FTA/FGA and their FT%.








