It's not the fact that it stops after 20, it's the fact that for Rivals it is cumulative up until 20, not some formula or average. So when you have 16 guys rated higher than their 20, you will still have a lower class, and likely much lower. I don't think having those 4 extra guys makes their class stronger, especially if they are lower rated. Rivals does not factor in transfers yet either.
247 claims their formula helps keep rankings more accurate by not favoring teams that have more commits than others. Their formula is basically an exponential growth curve of all their recruits where the lower rated recruits don't count as much as the higher rated ones. Basically your top recruit contributes 100% of his rating towards your score, and your lowest recruit is only contributing a fraction of his rating toward your total score. The top third of your class attributes the majority of the points to the class, the middle third contributes some points, and the bottom third very few. Let's look at 2021. UL's composite rank was #40 with 26 HS signees, GT's was #47 with 16. Four of their guys did not even receive a rating, so you may as well say they are only counting 22 players. GT's top 13 players were all rated higher than their top 13. Our last 3 players are ranked nearly the same as their last 3 ranked players (still above the 4 not ranked). So they basically have 6 extra guys in there with an .84-.85 rating that we don't which take spots 14-19 for them. So you mean to tell me that with our top 13 being higher than their top 13, them having 6 extra around the mid-bottom of their class makes them rank 7 spots better than us? Lets also look at how 247 claims the "thirds" make up the class raking.
Top third avg -- GT=0.8888/UL=0.8732
Mid third avg -- GT=0.8663/UL=0.8543
Bot third avg -- GT=0.8372/UL=0.8370
You can't even really average UL's because of the unranked guys. This number is not counting the zeros for those guys at the bottom of their class. If you add those in, it makes their bottom third avg = 0.4650. 247 also has an overall rank that includes transfers, and I'm not sure how those get weighted, but it's not nearly as much as the incoming HS signees. We were having to take more transfers to fill needs and while they did help the class average, counting them the same as signees would've helped more. Not sure why they weigh transfers differently when they have a rating.