Customers
Fifty-eight customers account for about a third of everything sold, and the bottom half of the base for the last 7%.
How concentrated the revenue is
Before asking who the customers are, it helps to know how few of them carry the business.
Revenue from the top 1% of customers
…from the top 5%
…from the top 20%
The distance between the curve and the dashed line is the concentration. The classic Pareto shorthand is 80/20; this business is steeper than that, at roughly 77/20, and far steeper still at the very top.
Fifty-eight customers out of 5,835 account for just under a third of everything sold, and the bottom half of the base accounts for the last 6.6%.
So what. Concentration this steep changes what a retention number is worth. A campaign that lifts overall repeat rate by two points but misses the top percentile has moved almost nothing; losing the top nine of those 58 customers costs more than losing the bottom 2,900 combined. It also sets the reporting grain: an average order value or a blended churn rate over 5,838 customers is dominated by people who contribute a rounding error, which is the argument for the segmentation below rather than a single headline metric.
Who acts: whoever owns account management and the retention budget. Cost of getting it wrong: spreading spend evenly across a base where the top 1% is worth more than the bottom half combined.
Which customers are worth what
RFM scores every customer 1–5 on how recently they bought, how often, and how much — turning the concentration above into groups you can act on differently.
Champions are 14.9% of the identified customer base and 62.6% of its revenue. That gap is most of what the segmentation is for.
Two customers who behave identically must score the same. The standard way to cut a column into quintiles fills five buckets of equal size, so a run of tied values gets split wherever the boundary happens to land. Frequency is a small integer with heavy ties: 1,626 customers have placed exactly one order, and that method puts them in two different quintiles. Counting the four tied values that straddle a boundary, 3,227 of 5,881 customers could be scored differently from someone whose behaviour is identical to theirs.
Cutting on the break points instead keeps equal values together. The buckets
then come out uneven, which is a fact about the customer base and not about the
method. A pipeline check counts any value carrying more than one score, because
the tidier method would still produce five neat buckets and a believable segment
mix. (It is why this step is Polars' bin_quantiles rather than SQL's ntile.)
