Key Takeaways
- Total supply and max supply are different numbers. Total supply is what exists right now after burns. Max supply is the hard ceiling that can ever exist, and many tokens do not have one.
- Data sites are a starting point, not proof. CoinGecko and CoinMarketCap apply their own methodology and often rely on figures submitted by projects. The blockchain itself is the source of truth.
- You can verify supply yourself in a few minutes. A block explorer, the token contract's read functions and the project documentation are enough to confirm the numbers without any technical background.
Why Token Supply Numbers Matter
Supply is one of the few pieces of tokenomics that can be checked directly and objectively. Price moves, narratives change, but the number of units that exist is recorded on-chain.
Supply figures matter because they sit inside almost every valuation metric people use. Market capitalisation is price multiplied by circulating supply. Fully diluted valuation, often shortened to FDV, is price multiplied by max supply or total supply. If you do not know which supply number a website is using, you cannot understand the number it is showing you.
Supply also tells you about future dilution. If a project has 100 million tokens circulating out of a 1 billion max supply, then 90 percent of the supply is still waiting to be released through unlocks, emissions or team allocations.
The Three Supply Numbers, Explained
| Term | What it means | Where it comes from |
|---|---|---|
| Circulating supply | Units currently available and tradable on the open market | Estimated by data providers, excludes locked, vested and treasury wallets |
| Total supply | All units that exist right now, minus verifiably burned units | Read directly from the blockchain or token contract |
| Max supply | The maximum number of units that can ever exist | Protocol rules, a contract cap, or project documentation |
| Fully diluted valuation (FDV) | Current price multiplied by max or total supply | Calculated, not stored on-chain |
CoinMarketCap defines total supply as all coins in existence right now, minus any coins that have been verifiably burned, and describes max supply as the best approximation of the maximum amount that will ever exist. CoinGecko uses a similar framework and deducts locked, vested and team-held wallets when it calculates circulating supply.
Two points follow from this. First, circulating supply is always an estimate. Second, max supply is only a guarantee when something enforces it, such as a protocol rule or a capped smart contract.
Method 1: Check a Data Aggregator First
This is the fastest route and it is fine for a first look.
Steps:
- Search the token name on CoinGecko or CoinMarketCap.
- Open the coin page and scroll to the info panel.
- Read circulating supply, total supply and max supply.
- Check whether the page shows a "self-reported" warning label, which means the project supplied the number and the site has not verified it.
Limitations to keep in mind:
- Different sites can show different circulating supply for the same token because their methodologies differ.
- A dash or a blank field usually means the provider could not verify the figure.
- Tokens issued on several chains can be counted differently depending on whether the project uses bridging or native issuance on each chain.
Treat this as your reference point, then verify it on-chain.
Method 2: Check the Token Contract on an EVM Block Explorer
This applies to Ethereum, BNB Chain, Base, Arbitrum, Polygon and other chains that use the same token standard.
Step 1: Get the correct contract address. Take it from the project's official website, official documentation or the CoinGecko or CoinMarketCap page. Never take a contract address from a social media reply or a search advert. Fake tokens with copied names are extremely common.
Step 2: Open the token page on the explorer. Paste the address into Etherscan, BscScan, Basescan or the equivalent explorer for that chain.
Step 3: Read the overview panel.
The explorer displays a field labelled "Max Total Supply". This label is misleading for beginners. It shows the current value returned by the contract's totalSupply function, which is the total supply, not a hard cap.
Step 4: Read the contract directly. Click the "Contract" tab, then "Read Contract". Look for these functions:
| Function | What it tells you |
|---|---|
totalSupply | The exact number of units in existence, shown in raw form |
decimals | How many decimal places to shift to get the human readable number |
cap | A hard cap, if the contract uses a capped standard such as OpenZeppelin's ERC20Capped |
owner or hasRole | Who controls privileged functions such as minting |
If a cap function exists and returns a value, that is a genuine on-chain maximum supply. If it does not exist, the token has no contract-level ceiling, and any "max supply" you see elsewhere is a promise in a document rather than a rule in code.
Step 5: Convert the raw number using decimals. Contracts store supply in the smallest unit. Divide the raw value by 10 to the power of the decimals value.
Raw totalSupply | decimals | Human readable supply |
|---|---|---|
| 1000000000000000000000000 | 18 | 1,000,000 |
| 21000000000000 | 6 | 21,000,000 |
| 500000000000 | 8 | 5,000 |
Method 3: Check Supply on Solana
Solana tokens store supply in a mint account rather than a contract with functions you call.
- Open Solscan or Solana Explorer and paste the mint address.
- Read the Current Supply and Decimals fields.
- Check the Mint Authority field. If a mint authority address is present, that account can create more tokens. If the field is null or shows as revoked, the supply is fixed and no further units can be minted.
- Check the Freeze Authority field. This does not affect supply, but it determines whether accounts holding the token can be frozen.
The mint authority check is the Solana equivalent of asking whether a token has a real cap. Solana's own documentation states that if no mint authority is present, the mint has a fixed supply.
Method 4: Coins Without a Token Contract
Some assets are not tokens on another chain. Their supply is enforced by the protocol itself.
- Bitcoin. The 21 million limit is a consensus rule enforced by the halving schedule. Anyone running a full node can audit the current issued supply with the command
bitcoin-cli gettxoutsetinfo, which returns atotal_amountfield. The final figure will land slightly below 21 million because of unclaimed block rewards and unspendable outputs. - Ethereum. There is no maximum supply. Issuance and burning both change the total over time, so the honest answer to "what is the max supply of ETH" is that there is not one.
For assets like these, the supply answer comes from protocol rules and node data rather than a token contract.
Red Flags to Watch For
| Signal | Why it matters |
|---|---|
Active mint authority or an open mint function | The supply can be increased at any time |
| Upgradeable proxy contract | The token's logic, including minting rules, can be changed later |
Max supply stated in marketing but no cap in code | The ceiling is not enforced by anything |
| Large "burned" balance in a wallet that still has an owner | Tokens are not truly destroyed unless the address is unrecoverable |
| Same token listed on several chains | Supply may be double counted across bridged versions |
None of these signals proves bad intent on its own. Many legitimate projects mint tokens on a published schedule. The point is to know which rules exist rather than assume them.
A Simple Verification Workflow
- Get the contract or mint address from an official source.
- Read total supply and decimals on the block explorer.
- Check for a hard cap in code, either a
capfunction or a revoked mint authority. - Compare that with the max supply claimed in the project documentation.
- Compare on-chain total supply with the circulating supply shown by data sites.
- If the gap between circulating and total is large, look up the unlock or vesting schedule.
If steps 3 and 4 disagree, trust the code.
FAQ
What is the difference between total supply and max supply? Total supply is the number of tokens that exist right now, after subtracting burned tokens. Max supply is the ceiling that can ever exist. A token can have a total supply of 500 million today and a max supply of 1 billion, which means 500 million more can still be created.
Why does Etherscan show "Max Total Supply" when there is no cap?
That field displays the value returned by the contract's totalSupply function. Despite the label, it reflects current total supply. A real cap only exists if the contract includes a capped extension with a cap function.
Why do CoinGecko and CoinMarketCap show different supply figures? Each site applies its own methodology for deciding which wallets count as locked or uncirculated, and some figures are submitted by projects. Total supply is usually consistent because it is read from the chain. Circulating supply is where the differences appear.
Can a token's max supply be changed after launch? Yes, in some cases. If the contract is upgradeable through a proxy, or if a privileged role can modify minting rules, the cap can change. A cap set as an immutable value in a non-upgradeable contract cannot.
Does burning tokens reduce total supply? It reduces total supply if the tokens are sent to an address nobody can access or destroyed through a burn function. Tokens parked in a wallet the team still controls are not burned, even if the project calls them burned.
Related Terms
- Tokenomics: the design of a token's supply, distribution and incentives.
- Vesting schedule: the timetable that releases team, investor or treasury tokens into circulation.
- Burn address: an address with no known private key, used to permanently remove tokens.
- Mint authority: the account permitted to create new units of a Solana token.
- Fully diluted valuation (FDV): price multiplied by max or total supply, used to estimate valuation if all tokens existed today.
Sources
- CoinGecko, Supply Methodology, support.coingecko.com
- CoinMarketCap, Frequently Asked Questions, coinmarketcap.com/faq
- Etherscan API Documentation, Tokens endpoints, docs.etherscan.io
- Solana Documentation, Tokens on Solana, solana.com/docs/tokens
- OpenZeppelin Contracts, ERC20Capped extension, github.com/OpenZeppelin
- Bitcoin Core RPC Documentation, gettxoutsetinfo, bitcoincore.org
More Reading
- How to Troubleshoot an Empty Wallet After Restoring It
- How to Check Whether You Imported the Correct Wallet
- How to Restore a Crypto Wallet on a New Device
This article is educational and factual. It is not financial advice and contains no price predictions. Figures cited from third party tools are point in time estimates that change continuously.
Not sure which problem you have?
Use the Fixing Crypto Mistakes hub to identify the transaction, wallet, network, or exchange issue before taking another action.
OPEN TROUBLESHOOTING HUB



