Compute Gini coefficient and top-10/top-100 wallet concentration for ERC-20 and SPL tokens to classify supply concentration risk; native coins like Bitcoin and Solana aren't covered
Measures how concentrated a token's supply is across wallets, for tokens with an on-chain contract (ERC-20 and SPL tokens). It reads the Gini coefficient, the share held by the top-10 and top-100 wallets, and total holder count. Each asset is classified low, medium, or high concentration risk by the share held by its top-10 wallets alone (high above 60%, medium above 40%); the Gini coefficient is reported beside it and does not set the class. This analysis does not cover native Layer-1 coins such as Bitcoin or Solana, which have no wallet-level holder data available.
The Gini coefficient - a classical concentration statistic, applied to address balances, where the mathematics is valid and the INTERPRETATION is the hard part.
THE LORENZ CURVE AND GINI. Lorenz (1905) plots cumulative share of a population against cumulative share of what it holds. Perfect equality is the 45-degree line. Gini (1912) reduces the gap to one number: G = A / (A + B), where A is the area between the line of equality and the Lorenz curve and B is the area under the curve. Equivalently G is half the relative mean absolute difference - the average absolute difference between every pair of holders, divided by twice the mean. It is the standard inequality measure in economics, used for income and wealth for over a century.
A FINITE-SAMPLE DETAIL WORTH KNOWING. The textbook range is 0 (everyone equal) to 1 (one holder has everything), but that upper bound is the continuous limit. The standard discrete estimator - the one used here - reaches at most (n-1)/n for n holders, approaching 1 only as n grows. With 20 holders the maximum attainable Gini is 0.95, not 1. So a Gini is not comparable across populations of very different size without care, and any threshold near 1 is a threshold near an unreachable value for small n.
CONCENTRATION SHARES. Top-10 and top-100 share of supply are simpler and in some ways more honest: they state a fact rather than summarising a whole distribution into one number. Gini does not identify WHERE in the distribution the concentration sits, and two quite different distributions can share a Gini - which is why reading it beside the top-N shares is better practice than reading either alone.
THE PROBLEM THAT MATTERS MOST, and it applies to every wallet-level metric here. The population is ADDRESSES, not people or entities. That breaks the ECONOMIC interpretation in BOTH directions at once, which is why it cannot be corrected by adjusting a threshold:
An unlabelled address distribution is therefore not a wealth distribution, and the classical reading of Gini as inequality between economic actors does not carry over. It remains useful for comparing the SAME token over time, where the labelling error is more nearly constant, and it is much weaker for comparing one token against another.
COVERAGE. Only tokens with a contract - ERC-20 and SPL - have wallet-level data here. Bitcoin and Solana as native coins are not covered.
The class is set by the top-10 share alone (high above 60%, medium above 40%, low otherwise), and those lines are our own convention, not a standard. The Gini coefficient is reported beside it and sets nothing: computed over every address holding a token, it comes out close to 1 for every token read so far, so no line near 1 separates one token from another.
Published reports are readable without an account. The newest is Ether (ETH) and XRP extend a month-long slide as Bitcoin falls below $75,000: trend, momentum and news (Nov 9, 2026). Create an account to run research on the stocks and crypto you choose.