Token Holder Analytics: Supply, Concentration and Wallet Counts
Explain who appears in a holder snapshot, how supply denominators change concentration metrics and why addresses are not people.

Overview
When translating these concepts into an integration, keep the scope described by the wallet history api with the result. The examples in wallet transaction history and smart contract event logs show how the same distinction affects neighbouring data questions.
Token holder analytics turns a set of balances into counts, rankings and concentration measurements. A dashboard might show the largest addresses, a distribution chart or changes in the holder population. Those outputs are meaningful only when their population and denominator are explicit.
A token's holder list is not a register of individual people. Contracts, custody arrangements, liquidity pools and one person's several accounts can appear in the same dataset. Good analytics preserves these distinctions rather than attaching a stronger ownership interpretation to an address count.
Choose a snapshot that can be reproduced
A holder count needs an observation boundary. Record the network, token identifier and selected block or equivalent reference before sorting balances. A collection assembled from different boundaries can mix states that never existed together.
State whether the population includes positive balances only and how unresolved balances are represented. Avoid treating an unavailable observation as a confirmed zero. A synthetic acceptance case can contain two funded addresses, one known zero balance and one unresolved address. The count should describe the confirmed population and unresolved scope separately, with enough references for another run to apply the same rule. Keep display thresholds in the calculation policy.
Name the denominator behind the percentage
A concentration percentage can use total issued supply, a defined circulating estimate or the total of an inspected holder set. These are different denominators. Label the chosen quantity and retain its observation boundary with the result.
For example, a synthetic address holding 120 units represents 12 percent of a 1000-unit denominator. It represents 15 percent of an explicitly defined 800-unit subset. Both calculations can be correct while answering different questions. The ERC-20 standard defines totalSupply, but an application's circulating-supply interpretation needs its own documented inclusion and exclusion policy. Retain unresolved exclusions rather than guessing their quantities.
Keep address counts separate from entity counts
A large contract balance can represent many participants, while several addresses can be controlled by one organization. An address ranking therefore should not automatically become a ranking of people or investors.
If the application groups addresses into entities, preserve the evidence, confidence and effective period behind each grouping. Keep ungrouped observations available so a later revision can be evaluated. A label such as custody or liquidity pool is an interpretation attached to a record, not a replacement for its technical identity. Let readers inspect the address-level result even when the main interface presents a grouped view. Conflicting labels should remain reviewable rather than silently merged.
Distinguish new holders from expanded observation coverage
A rising holder count may reflect new funded addresses. It may also reflect an expanded inspected range, a corrected balance calculation or a changed minimum-balance threshold. Keep the calculation policy stable when comparing snapshots.
Retain added, removed and unresolved members of the population. If a later run discovers balances that were previously unprocessed, identify that as a coverage change. Do not present it as organic adoption without supporting evidence. Compare the same token identity and units across runs, especially when names change or a project introduces a new contract. A migration relationship should be documented rather than automatically blending two distinct token populations.
Make ranking and pagination deterministic
A holder table needs a stable ordering policy, including a tie-breaker for equal balances. Retain the snapshot reference while following pages so a moving dataset does not create skipped or repeated addresses.
A useful test has several addresses with equal quantities across a page boundary. Read the population twice using different page sizes and compare stable identities rather than only row counts. A top-ten result can be useful, but its scope should remain visible. It is not equivalent to a complete distribution unless the remaining population and denominator are established. Explain whether excluded or unresolved accounts can affect the displayed ranking or the resulting concentration measure.
Publish metrics with their calculation context
Present a compact methodology beside the chart: asset identity, cutoff, positive-balance rule, denominator, grouping policy and unresolved scope. Readers should be able to explain why a number changed without reverse-engineering the data processing.
The same discipline helps internal decisions. A team comparing adoption across networks needs compatible definitions, not merely charts sharing a label. Include a synthetic example with a custody address, a pool and two addresses grouped by an explicit test rule. Show both the address distribution and the derived grouping. Useful holder analytics makes the limits of each interpretation visible while preserving the underlying observations for later analysis and corrected labels.
Questions about the topic
Frequently asked questions
Does one holder address equal one person?
No. One person can use several addresses, and one address can represent many participants. Report the address observation separately from any evidence-based entity grouping.
Which supply should concentration use?
Use the denominator that answers the stated question and retain its definition. Total issued supply, an estimated circulating quantity and an inspected subset produce different percentages.
Can two holder dashboards disagree without being broken?
Yes. Cutoffs, thresholds, inspected populations, grouping policies and supply definitions can differ. Align those conditions before judging the arithmetic or interpreting a concentration change.
Standards & technical documentation

