Putting It All Together
How do we put it all together to arrive at a valid answer? There are different levels, and different data sources; how should we stitch them together? What I’ve done is to view a player’s credentials through eleven “windows” side by side, with players receiving a “grade” for each window. Here are the grades on every player’s Report Card:
Career O: This category averages the player’s rank in Points Created per season, total Points Created, career O_Score per Possession, and career Points Created relative to average to provide a look at the player’s total offensive contribution
Prime O: This category includes the player’s rank in Points Created, O_Score per Possession, and O_Score by Volume during only his six most high-volume season (ordered by True Points Created). The purpose of the Prime O grade is to show the impact of a player’s volume and production rate at his best.
Career O Eff: Short for Career Offensive Efficiency. The methodology used to derived weighted career values for Offensive Efficiency is described above, so let’s keep moving.
Prime O Eff: A player’s weighted Relative Offensive Efficiency for his six highest-volume seasons. The purpose of Prime O Eff is to show how efficient a player was at his peak.
Career D: Here we use the player’s historical rank in career D_Score, total Opponent Points Created Impact, Opp Points Created Impact per season, and the sum of the weighted D_Score totals. We do not divide the last number by total minutes like the career D_Score (the first value in the list). My reason for including this value is to represent the total value of players who had a large number of good defensive seasons, but whose Career D_Score may have been mediocre for one reason or another.

The fascinating aspect of Career D values is that they tend to pull apart different tiers of defenders rather nicely. Almost every player enters the league as a poor defender (aside from Bill Russell and Nate Thurmond). However, most players gain defensive value on the back end of their careers. In fact, there are probably hundreds of players who had medium-length careers that were better defenders between 26-30 than between 21-25. Players who survive beyond 30 often keep getting minutes because of their defensive aptitude. So good defenders start to lap the field later in their careers.
Offensively-minded stars, however, may keep getting minutes and keep getting buckets despite being an enormous detriment to their teams on the defensive end. As a result, the positive defensive value they may have accrued during their physical prime gets washed away by this late-career slide.
Prime D: This window is the player’s D_Score in their six best seasons. By way of contrast with Career D, Prime D can mask differences in two player’s overall defensive value simply because they were similar during their peaks.
Career Total: The seventh window uses a player’s career Total_Score per Possession (O_Score PP + D_Score) and his career Total_Score (O_Score by Volume + D_Score)
Prime Total: Identical in form to career total, except that the values are for only a player’s top six seasons.
ON_O Grade: A player’s career ON_O rank – in essence, his per-game offensive impact
ON_D Grade: A player’s career per-game defensive impact
ON_GOD Grade: A player’s career per-game impact on both ends of the floor
Player Grades
These windows, when taken together, shed some revealing light upon the careers of a number of players. The report card below contains players I selected subjectively, but is nonetheless illuminating in that it compares some of the most popular players in the history of the game strictly in terms of impact on winning … and the results do not always match up with common popularity contests like social media polls over the NBA’s own Top 50 list.

As a compliment to these “windows” into a player’s value, I also considered “snapshots” of a player’s value. Using all available data (though relying most heavily on O_Score by Volume, D_Score, and Offensive Efficiency), I selected All-NBA Teams, All-Defensive Teams, MVP, DPOY, and ROY of the year for every season in NBA history beginning in 1952-53. (the data at stats.nba.com for seasons prior to this is spotty, and game logs do not always match the season totals presented by bball-reference). Although players play in more than one season, their career value is not a single monolithic number. Each season is its own unique entity, and I feel it necessary to recognize a player’s superiority within that snapshot. If a player was the best in the league for five different seasons, he probably deserves to be a part of the GOAT debate, even if his career numbers don’t fit the profile.

Cleaning My Glasses
Now that our views into a player’s career value are arranged beside our snapshots of his value at distinct moments in time, the only other thing we need is to clean our glasses. Forgive me if you have 20/20 vision and don’t get the metaphor, but corrective lenses make the object of our vision clearer. In my previous explanation, I have shown why the measurements used are trustworthy and do the best job of representing a player’s value. Unfortunately, I am still a biased observer because I am still the one view the data. By “cleaning my glasses”, I mean that I need to identify any biases that may prevent me from seeing the data clearly. It is only fair for me to share those influences with you, the reader, before beginning our climb up the GOAT ladder.

D_Score measures a player’s effect on his positional opponent’s performance. Though I remain convinced that this insight is valuable and a good estimation of defensive value for the majority of NBA players, it does shortchange elite help defenders. Teams like the early 2000’s Pistons, both the Bucks and the Lakers during the early part of Kareem Abdul-Jabbar’s career, the Philadelphia 76ers with Wilt Chamberlain, the Rockets of the late 80’s, Bill Walton’s Blazers teams, and several others present an unusual case where the value the big man generated shows up in his teammates’ D_Scores, as it was their opponents whom the shot-blocker kept from scoring. These young centers may have well been a defensive boon to their teams, despite being below average at preventing opposing centers from scoring.
For those who think this is ancient history consider how we describe Giannis Antetokounmpo’s and Draymond Green’s defensive value. It’s not so much that they prevent their man from scoring, it’s that they disrupt the opposing team’s scheme by helping and recovering. They can cut off access to the rim without leaving their man open for more than a millisecond. This type of player is underappreciated by D_Score. As such, I have made an effort to pay special attention to OPP_MISSES Score and BLK_Score, as well as the D_Scores of a player’s teammates, when evaluating a player who was regarded as an excellent defender but has seasons in his career where his D_Score is below average.
On the other hand, the specific necessities of estimating Points Created without modern data cause some slight imbalances in offensive evaluation. In the big picture, this means that distributors may be a little underappreciated, as they are estimated to have had more of their own baskets assisted than really were assisted. In cases where a point guard has weaker O_Scores than you would think, this situation is usually the culprit.
Distortions in the Data
The method described here also assumes that position tags are evenly distributed enough on most teams that we can assign players a defensive position based on simplified forms of “complex position” (like “PF/C”). The assumption is usually sufficient to accurately analyze the underlying data, but there are cases where two high-minute players on the same team have the same position. Unfortunately, it is sometimes the case that the two players did not defend the same type of opponents in reality, which can result in some wrongly divided defensive credit.
The same result can happen in cases where a team has only player with a given position label, despite that player perhaps not being the most common choice to defend opposing players of the same position. Two teams from the same era provide excellent examples of this phenomenon. The Utah Jazz in the late 1980’s and early 1990’s had huge differentials in opposing power forward production. Year in and year out, Utah PFs are among the very best defensive units in the league.
Karl Malone is usually the only player listed as primarily a PF on Utah’s roster (which is fair, considering that he played over 3,000 minutes a season). Was Malone the best defender in the league, then? Well … not so fast. Malone made four All-Defensive teams in his career, so he had some responsibility for this effect. But these Jazz teams featured Thurl Bailey playing 30 mpg off the bench as a combo forward. Bailey had an outstanding defensive reputation, so we might well suspect that Bailey had something to do with Utah’s effectiveness against opposing PFs.
At around the same time, the Detroit Pistons managed an outstanding feat: they (apparently) got terrific defensive performances out of Adrian Dantley and Marc Aguirre, two aging scorers who were never good defenders otherwise. How did Detroit manage this sorcery? Was it some form of mind-control by legendary coach Chuck Daly?

No, it’s just a trick in the data. Detroit shut down by opposing SFs by unleashing two-time Defensive Player of the Year Dennis Rodman on them. Dantley and Aguirre were also listed as SF during their time with the team as bench scorers, but the one driving the defensive value was obviously Rodman. We can independently verify this, as Rodman has excellent defensive stats with San Antonio and Chicago, while Dantley and Aguirre come out as below average defenders on teams other than the Pistons.
It’s the Final Countdown
Now we’re set. We can measure and compare the greatness (or lack thereof) of every player in NBA history. I’m going to propose a mor ambitious countdown than those you may have seen before; instead of listing the top 50 or top 100, I’m going to start at number 250 and count all the way down to number 1. We’ll get to the one true GOAT and have all the necessary debates, of course, but we’ll also appreciate much more of the history and texture of the league along the way. This will be a journey worth taking, I think you’ll find. I know I am excited for it. Let’s jump in!
One thought on “The GOAT Ladder: What the Ladder Looks Like”