Whether it is due to the hype of NBA-ready talent by both traditional media, such as ESPN, and new media, like HoopMixtape, the increasing transparency of the process provided by players through social media, the horserace-ification of recruiting by sites like 24/7Sports and their Crystal Ball Predictions, or something else, recruiting has become a popular avenue of discussion, especially in the early stages of the college basketball season.

One of the products of the modern recruiting culture is the ranking/rating of incoming recruits, as well as the ranking of each program’s complete recruiting class for a given season. As programs battle it out to land the commitment of individual recruits, it is only natural to be curious about the overall pecking order of Division I recruiting.

Two of the most popular sources of recruiting rankings, 24/7Sports and ESPN, have crowned Duke and Kentucky the clear juggernauts in recent years. However, these rankings have a number of flaws that make them weak indicators of a program’s overall recruiting ability and make it difficult to carve out a clear ranking of the best recruiting programs in the nation beyond an individual year.

Flaws of the Existing Rankings


ESPN is relatively up-front about the approach that it uses to rank the top classes each year.

General Approach: 

-Categorize players into bins based on their assessed talent level and award some number of points for landing a recruit in a particular bin.

-Teams receive bonus points for signing certain combinations of top recruits.


-Binning players based on their ranks can lead to a substantial difference in points awarded to a team’s class with only a miniscule, or even nonexistent, difference in the player’s skill or the difficulty of recruiting him.

-The point value awarded to a team for the successful recruitment of a player is somewhat arbitrary and not proportionally scaled to the skill level of the recruit or how challenging it was to land him. For example, recruits ranked 1-5 carry a value of 40 points, while recruits 6-10 are worth 35 points. It doesn’t seem that the true value of a recruit correlates to these point values, and this becomes even more apparent when considering bonus points that are awarded. 


Unfortunately, 24/7Sports does not provide a detailed explanation of how their class rankings are computed. The best glimpse we can get of the underlying framework comes from using their class calculator. 

General Approach:

-No binning of players, but a decreasing marginal value of landing additional players in a recruiting class. For example, placing RJ Barrett, the highest rated recruit of the 2018 class, in a recruiting class by himself awards Duke 30.0 points; adding him to a recruiting class of Zion Williamson, Cam Reddish, and Joey Baker makes Barrett worth just 4.06 points, increasing Duke’s total of 65.70 points without him to 69.76 points with him. 


-Though it may hold weight as a way to evaluate and predict the contributions that recruits will provide their teams during the season, 24/7Sports’ methodology is not one that helps us if we are attempting to figure out who the best recruiting programs are (landing additional players should be seen as a sign of stronger recruiting prowess, not the opposite).

It’s also worth noting that both ESPN and 24/7Sports disregard the factor of missing on recruits. Casting a wide net to ensure that some are landed is a viable strategy, but better recruiting programs are less likely to need to rely on this method of recruiting since they are more likely to land the recruits that they do pursue. 

Ultimately, to achieve the goal of measuring the recruiting strength of each team, we need to look further than the current popular ranking sources. While considering this task, I developed a hypothesis: the difficulty of recruiting a player can be measured by the number of teams that a coach/program has to beat out in the process of landing the player, as well as how good those other teams are at recruiting.

This new way of framing the problem is really interesting because it is quite analogous to the problem of rating and comparing teams while accounting for the strength of their schedules, a challenge that is central to Ken Pomeroy’s work on this very site. Keeping this in mind, I also drew a parallel from my task to a problem outside the world of sports: search.

Measuring the recruiting strength of a program by the strength of the other teams that it beats out in recruiting battles is very similar to the practice of measuring a website’s relevance/popularity by the relevance of the sites that link to it. This is a concept that is central to the “PageRank” algorithm long used by Google to rank websites in its search results. We can adapt the algorithm to fit the recruiting problem and produce rankings that avoid the major flaws in existing rankings.

Using recruiting offers and commitment data from 24/7Sports, I ran the PageRank-style algorithm to get a rating system (I have dubbed it “SIFFrating” here for easy identification) that hits on everything I was looking for:

-It accounts for the fact that not every recruit is equally difficult to land since it considers the other programs that a team had to beat out to get a recruit.

-The resulting point value awarded to the team who gets the commitment is not arbitrary or a result of personal bias.

-Losing out on a recruit is penalized in this system (the team that loses a recruiting battle essentially gives a percentage of its points to the team that it loses to, rather than gaining points).

-The system can be used to compare programs over multiple years by simply including recruiting data from additional years in the PageRank-style network.

It is possible that the penalty for losing out on a recruit is not significant enough, and thus it may be worth considering different options to make this factor more impactful on a team’s rating. For the purpose of this article and an initial attempt at a rating system, I have calculated a 2nd rating for each team (dubbed SIFFrating+) that simply divides a team’s SIFFrating by the number of recruiting battles it lost (or by 1 if the team won all of its recruiting battles). 

The Results:

(Disclaimer: I am admittedly a Duke alum and Blue Devils basketball fan. Regardless of the results I am about to show, I put in extra effort to ensure that my personal bias didn’t inform the methodology of my work.)

By both SIFFrating and SIFFrating+ since 2014, Duke and Kentucky are unsurprisingly the top two recruiting programs by a significant margin. In addition to these two, there are seven other programs that place in the top 15 of both ratings: Arizona, Texas, Oregon, North Carolina, Syracuse, Villanova, and Washington. According to 24/7Sports annual rankings, each of these programs have had at least two top 10 classes since 2014 with the exception of Syracuse, who has had one.

The rest of the results can be found in a webapp here. It also includes a few extra features that give additional context into each team’s recruiting history. It should be noted that, due to the availability and accuracy of recruiting data, the ratings have been limited to the programs in conferences traditionally referred to as “Power 5” (ACC, B10, B12, SEC, P12) as well as Memphis, Gonzaga, and Villanova since 2014.

Finally, one notable program is Memphis, who secures the #10 spot in SIFFrating, but free falls to #40 in SIFFrating+. Memphis has a history of casting an extremely wide net; they have offered a total of 341 recruits since 2014 and have only converted on 10.9% of those offers, which explains the low rating when extra emphasis is put on missing out on recruits. In my opinion, SIFFrating+ penalizes programs like Memphis a bit too harshly. It also doesn’t necessarily account for other aspects of recruiting, such as the fact that a program doesn’t go all out in its pursuit of each recruit that it gives an offer to. For these reasons, other minor adjustments to the rating system should be considered in the future.

There are many other paths for future work in this area, but I think the PageRank-style approach offers an interesting framework to view the problem in. If you have any ideas for how to build on my work, feel free to reach out to me on Twitter.