Use Case

Finding the NBA’s most undervalued players

In 2003 Michael Lewis came out with a book called Moneyball: The Art of Winning an Unfair Game. This book talked about the story of Billy Beane and the Oakland Athletics — an organization that refused to spend as much money as other baseball clubs on players. Billy Beane and the A’s of 2002 applied analytics and salary adjusted sabermetrics to the player market to build competitive teams on a payroll 1/3 of the size of some of their competitors. In that same year, they won 103 games on a $41M payroll. This was the same number of wins as a Yankees team with $125M payroll and some of the biggest stars in baseball.

With the NBA playoffs underway and my beloved Boston Celtics in the Eastern Conference Finals at the time of this writing, I wanted to find those players that are both over-performing and underpaid relative to their peers. If I’m in the Celtics front office, I can use this list for next year to bring in some really solid bench talent.

Daryl Morey, the General Manager of the Houston Rockets, has led the application of analytics to basketball over the past 10–15 years (aka Moreyball). Daryl famously emphasizes 3 pointers and layups versus mid-range shots, and he brought James Harden to the Rockets and turned the franchise into a perennial contender.

Calculating PER – Player Efficiency Rating

There is a wealth of NBA datasets out there today. We’re going to be using 2019–2020 statistics courtesy of Basketball Reference. Importing this dataset as a CSV was easy, and we’ve got aggregated regular season stats like Field Goals Attempted, Rebounds, Steals and more that are instantly searchable with natural language. However, one thing that we are missing is Player Efficiency Rating or PER.

PER is the creation of John Hollingworth, a basketball columnist that created this all-in-one metric. PER serves to rate players on a per minute basis, taking into account both their positive and negative accomplishments on the court. Calculating PER is messy — take a look at this formula.

Unadjusted PER

Calculating PER

I’m going to use Tellius data preparation to create a new feature that is PER. One really great part about using a platform with built-in data prep is I don’t need to go somewhere else to create this new dimension. Within Tellius Indicators I can create this feature in seconds:

Creating a new feature within Tellius — note that I used linear PER

The idea behind Moneyball is that a lower income team can compete with the big teams with their larger budgets. When you look at total salaries vs PER ratings, it turns out that money doesn’t necessarily buy the best PER. So how can these lower budget teams know who to target?

This is where we introduce salary. I downloaded a salary table of NBA players again from Basketball Reference and joined that easily within Tellius. All it took was a point and click join based on playerID.

Analyzing PER

Now I can take a look at each player on a plot of salary vs PER. There’s a slight correlation between PER and salary, but it’s very slight. So which players should we be looking at?

PER vs Salary

Let’s split this into quadrants by creating another new feature within Tellius — a feature that identifies those players that are above average PER and below average salary. I do this using Tellius data prep as well, this time using a feature called Signatures:

After dropping our new features into the “Color By” area, we have our quadrant chart!

Excluded players with < 100 minutes played in the season to remove some outliers

Identifying Players to Target

Focusing on the “Underpaid High Performer” quadrant, we are now given 109 players with above average PER and below average salary that we can target:

It’s my boy Boban!

Let’s narrow this list down a little bit more. I’ll convert this to a Detail Table, drag in a few columns and take a look at some specific names. I want the most cost effective, efficient player who has demonstrated they can score some points. I’ll filter for total points > 500 and then sort by Salary divided by PER to find our most cost effective, efficient players to target for acquisition:

Our target list

Obviously, some of these players are still on their rookie deals and they’ll get paid regardless. As an NBA executive, or any executive allocating spend, wouldn’t you want to focus on those cost effective, high performing individuals in order to find those hidden gems others are overlooking?

Professional basketball is a much smaller ecosystem than professional baseball in the United States. However, there is a place for salary weighted sabermetrics in basketball, especially as the sport continues to grow and more G-League teams are added.

How can you apply this to your day-to-day?

This type of quadrant analysis can help organizations beyond sports to focus on the right prospects, clients, employees and beyond. We moved quickly from visualization to a target list by being able to iterate with Tellius data prep on new features.

If you want to create new features and visualize them as fast as I’ve done here, or if you want to explore this dataset yourself, check out

See Tellius in Action

Get a Demo

Learn More

  • Segment 125
    Use Case

    Customer Segmentation Using Machine Learning and Clustering

    Identify high value segments of customers using automated machine learning and clustering techniques on customer data.

    Read More
  • Customer Analytics Webinar

    Faster Customer Analytics with Intelligent Insights

    Data is key to driving revenue, strengthening relationships, and enhancing customer experience. Learn how intelligent analytics delivers faster insights from all your customer data.

    Watch Webinar
  • eBook

    Guide to AI-Driven Analytics for Ecommerce

    Learn how ecommerce companies imrove conversion, increase CLTV, and optimize marketing with AI-driven analytics.

    Read More