Every token page on the internet publishes an inflation rate, and almost all of them publish it as a fact about the asset — a row in a table, beside the ticker and the market cap. It reads like a property, in the way that a melting point is a property of a metal.
It is not one. An emission rate is a function evaluated today, and the interesting question about any token is which function it is: what the inputs are, and who is allowed to change them. There are five answers in common use. They differ enormously in how far the number can move without a single token changing hands, and the ordering below is by exactly that.
1. A schedule, with nothing that can move it
Bitcoin issues a block subsidy that halves every 210,000 blocks. The Bitcoin wiki states the design plainly: the number generated per block is “set to decrease geometrically, with a 50% reduction every 210,000 blocks, or approximately four years”. Start at 50 BTC, halve repeatedly, sum the series, and the ceiling falls out of the arithmetic rather than being declared anywhere — the exact figure the integer arithmetic produces is 20,999,999.9769 BTC, reached somewhere around 2140.
What makes this the outlier is not that the schedule is written down. Solana’s is written down too. It is that there is no mechanism inside the system whose job is to change it: no admin role, no parameter account, no governance vote, no input that varies. The rate at any height is a pure function of that height, and anybody with a block number can compute it without asking a node for anything else.
Controlled supply - Bitcoin Wikien.bitcoin.it2. A formula over a number nobody sets
Ethereum does not have an issuance schedule. It has an issuance formula, and the formula’s main input is how many validators showed up. The protocol documentation is explicit about the shape: total issuance grows with the square root of the validator count, while the reward to each individual validator shrinks with one over that same square root. More stakers means more ETH issued in total and less ETH each.
That single design choice has a consequence most inflation tables cannot represent. Ethereum’s issuance rate is not something the Ethereum Foundation sets, or that a vote fixes for a year. It is discovered, continuously, by how much ETH people choose to stake — and it moves whenever that changes. A figure of roughly 0.8% a year is a reading, not a parameter.
Then EIP-1559 works the other way on the same supply: the base fee of every transaction is destroyed rather than paid to anybody. Gross issuance and gross burn are two independent functions of two unrelated things — how many people stake, and how busy the chain is — and the supply moves by whatever is left. On a busy week the net number is negative. Neither half is a schedule and neither can be quoted a year in advance.
Ethereum’s inflation rate is not a setting anybody chose. It is the answer to a question the network asks every epoch: how many of you are here?

3. A schedule a vote can move, and last week did
Solana publishes an inflation schedule with three parameters: an initial rate of 8%, a disinflation rate of −15% applied to the previous year’s figure, and a long-term floor of 1.5%. Compounding −15% from 8% takes about six years to land on the floor. As of this month the rate had come down to roughly 4.18%.
Those are parameters, and parameters have owners. On 23 August 2026 the Solana validator set opened its first formal governance vote on three proposals at once, one of which was an instruction to double the disinflation rate.

Solana Validator Governance Voting is now live for SGP 1, SGP 2, and SGP 3. - SGP-0001: The Solana Constitution - SGP-0002: Double Disinflation - SGP-0003: Resource and Inclusion Fee Voting lasts until the end of epoch 1023 (Thursday at approximately 15:30 UTC). See the
The announcement listed the three together — the Solana Constitution, Double Disinflation, and a Resource and Inclusion Fee — with voting open until the end of epoch 1023. One of the three was a monetary parameter, and it was on the same ballot as a constitution and a fee schedule.
SGP-0002 — “Double Disinflation” — leaves the 1.5% floor alone and changes the rate of descent from −15% to −30% a year. The whole of its effect is timing: the floor arrives in early 2029 rather than 2032, and roughly 18.9 million SOL that the old curve would have issued over the next six years is never issued at all. Nothing about the token, the code path or the holders changed. A number in a schedule changed, and a few years of issuance disappeared with it.
It passed, and the margin is worth writing down. 67.0% of participating stake voted for it — 176.29 million SOL — against 66.19 million opposed and 7.84% abstaining, on 1,326 votes and 60.7% turnout of eligible stake. The bar is two thirds. Two thirds is 66.67%. The proposal cleared it by about a third of a percentage point.1

AFTER 500 CALLS IN THE PAST FEW HOURS WE GOT ALL THE VOTES IN THE LAST SECONDS AND PASSED THE DISINFLATION PROPOSAL BY A LITERAL HAIR THANK YOU TO EVERYONE WHO WAS OPEN TO CHANGING THEIR MIND LETS GOOOOOOOOOOOOOO WE DID IT SOL $1,000
The post above, from one of the people who spent the closing hours calling validators, describes it as passing “BY A LITERAL HAIR” and adds the figure afterwards: “passed via 67% btw”. It is a partisan account of the result and it is quoted for the margin, which is the part everybody agreed on.
The lesson generalises past Solana. Where an emission schedule is a set of parameters and a governance process exists to edit them, the schedule is a current estimate of future supply, not a promise about it — and the estimate can be revised faster than most trackers refresh. Counting who holds that power, for any token, is the subject of who can change a token’s supply — including a vote that passed while forty-three of forty-seven validators opposed it.
developer-content/docs/economics/inflation/inflation-schedule.md at main · solana-foundation/developer-contentCollection of Developer content for exploring, learning, and building in the Solana ecosystem. - solana-foundation/developer-contentGitHub
4. A role on a contract, which is most tokens
The first three mechanisms belong to base layers. Almost every other token — the ones with a contract rather than a chain — issues through a function call, and the standard everybody builds on takes no position on who may make it. OpenZeppelin’s ERC-20 reference says so directly: the contracts are “designed to be unopinionated, allowing developers to access the internal functions in ERC-20 (such as _mint) and expose them as external functions in the way they prefer”.
So “what is this token’s emission rate?” has no answer at the level of the token standard. There is only a question about a deployment: is a mint function exposed at all, what guards it, and who holds the thing that satisfies the guard. A capped supply enforced in code and an uncapped mint behind a single externally-owned account look identical from a price chart and are different assets.
This is checkable and takes about a minute. Read the contract’s minting entry points and their modifiers; read who currently holds the role, and whether the role can be granted; then read the transfer log for transfers whose sender is the zero address, which is what a mint looks like from the outside. If the answer is a multisig, ask how many signers and who they are. If the answer is an ordinary address, that is the emission schedule.
ERC20Smart contract ERC20 utilities and implementationsOpenZeppelin Docs
5. A supply that changes with no transaction at all
The last mechanism is the one that breaks tooling. In a rebasing token, balances are stored as shares of a pool and the reported balance is computed from a multiplier. When the multiplier moves, every holder’s balance moves at once. Nobody sent anything. Depending on the implementation there may be no transfer event to find, or a synthetic one emitted purely so that wallets do not display a stale number.
For a reader this matters in one specific way: your balance can grow while your share of the supply stays exactly the same, and that is not income in the sense the number suggests. For anybody reconstructing supply from transfer logs it matters more, because the reconstruction can be complete, internally consistent and wrong — every transfer accounted for, and the total still off, because the event that changed the supply was not a transfer. It is the reason a supply series should be anchored against the chain’s own reported total rather than accumulated from events alone.
Four things that look like emission and are not
More reader confusion comes from this list than from the five mechanisms above, because all four move a number that gets called supply.
- 1
Unlocks and vesting. Tokens that already exist leave a locked allocation and become tradable. Float rises; total supply does not move at all. The pressure is real and the mechanism is not issuance, and the two need separate rows because they have separate ends — a vesting schedule finishes, an emission schedule may not.
- 2
Bridged and wrapped mints. A contract on the destination chain mints against a lock on the origin chain. Supply appears where you are looking, backed by supply frozen where you are not. Add the two chains together and you have counted the same tokens twice; that is the single most common error in cross-chain supply figures.
- 3
Liquid staking derivatives. A staking token is a receipt, not new base supply. Some of them also rebase, which stacks this confusion on the previous one, and it is why a staked-derivative balance must never be added to the underlying’s supply.
- 4
Buyback-and-hold. The opposite sign and the same mistake: tokens bought back and kept in a treasury have left the float but still exist, and a programme that announces a total bought is not announcing a total destroyed.
The fourth of those has its own article — a buyback that reduces nothing — and the destination question on the burn side is worked through in where burned tokens go. Scheduled releases for the tokens we track are listed on the unlocks page, including the cliff dates, which are the ones that move a float in a single day.
The five, side by side
Mechanism | The rate is set by | Changed by | Where you read it |
|---|---|---|---|
Fixed schedule | Block height alone | Nothing inside the system; a contested hard fork outside it | The client source, or any block number |
Formula over state | Participation — validators, stake, chain load | Nobody: it moves on its own, continuously | The consensus spec, then a current reading |
Governed schedule | Parameters in a published schedule | A vote, on the timetable the process allows | The schedule doc and the open proposals |
Contract role | Whoever holds the minting role | One transaction, with no notice | The contract’s roles, and mints from the zero address |
Rebase | A multiplier the protocol updates | The rebase logic, on its own cadence | The reported total; not the transfer log |
What the float actually did
One block of our own figures, and it is deliberately not an issuance rate. The number below is net float change over twelve months: emission, plus unlocks, minus burns, minus anything that moved into a registered sink. It is what a holder’s share was diluted by over a year, which is the question most people are actually asking when they look up an inflation rate — and it is a different number from the one in a tokenomics document.
The spread is the argument for reading the composition rather than the headline, and it is deliberately not explained here. Net float adds every mechanism on this page to the unlock schedule and subtracts the burn side, so two tokens can reach the same figure by completely different routes, and one token at four times another is not a statement about which of them issues faster. One caveat on how to go further, because it is a limit of ours rather than a feature: this figure is computed from the measured float series, and the itemised flows listed on each token page are a separate and much thinner ledger that does not add up to it. They are worth reading as evidence of individual events, not as a decomposition of the percentage — for some tokens there are only a handful of rows in a year. The unlock basis records which allocations we count as released at all. Where our ledger for a token is shorter than a year, the figure is the window we do cover scaled up to one and is marked annualised on the card — a projection from measured months, not a measured year, and it is labelled that way for the same reason the rest of this page insists on the distinction.
Show the figures as a table147 rows
| Day | Circulating supply |
|---|---|
| 2025-09-14 | 542.55M |
| 2025-09-18 | 543.04M |
| 2025-09-21 | 543.15M |
| 2025-09-24 | 543.38M |
| 2025-09-28 | 543.64M |
| 2025-10-01 | 543.5M |
| 2025-10-04 | 545.36M |
| 2025-10-08 | 546.2M |
| 2025-10-11 | 546.45M |
| 2025-10-14 | 546.71M |
| 2025-10-17 | 546.84M |
| 2025-10-21 | 546.55M |
| 2025-10-24 | 549.46M |
| 2025-10-27 | 549.58M |
| 2025-10-31 | 549.82M |
| 2025-11-03 | 552.63M |
| 2025-11-06 | 552.74M |
| 2025-11-10 | 553.59M |
| 2025-11-13 | 554.03M |
| 2025-11-16 | 554.18M |
| 2025-11-20 | 558.88M |
| 2025-11-23 | 559.14M |
| 2025-11-26 | 559.26M |
| 2025-11-30 | 559.65M |
| 2025-12-03 | 559.75M |
| 2025-12-06 | 560.02M |
| 2025-12-10 | 561.56M |
| 2025-12-13 | 561.9M |
| 2025-12-16 | 562.18M |
| 2025-12-19 | 562.18M |
| 2025-12-23 | 562.41M |
| 2025-12-26 | 562.66M |
| 2025-12-29 | 562.78M |
| 2026-01-02 | 563.15M |
| 2026-01-05 | 563.4M |
| 2026-01-08 | 564.15M |
| 2026-01-12 | 565.08M |
| 2026-01-15 | 565.32M |
| 2026-01-18 | 565.59M |
| 2026-01-22 | 565.83M |
| 2026-01-25 | 565.95M |
| 2026-01-28 | 566.2M |
| 2026-02-01 | 566.4M |
| 2026-02-04 | 566.58M |
| 2026-02-07 | 567.4M |
| 2026-02-10 | 567.52M |
| 2026-02-14 | 567.96M |
| 2026-02-17 | 568.24M |
| 2026-02-20 | 568.36M |
| 2026-02-24 | 568.67M |
| 2026-02-27 | 568.9M |
| 2026-03-02 | 569.66M |
| 2026-03-06 | 569.93M |
| 2026-03-09 | 570.81M |
| 2026-03-12 | 571.11M |
| 2026-03-16 | 571.36M |
| 2026-03-19 | 571.56M |
| 2026-03-22 | 572.02M |
| 2026-03-26 | 572.27M |
| 2026-03-29 | 572.49M |
| 2026-04-01 | 572.73M |
| 2026-04-05 | 572.97M |
| 2026-04-08 | 573.71M |
| 2026-04-11 | 574.53M |
| 2026-04-14 | 575.14M |
| 2026-04-18 | 575.38M |
| 2026-04-21 | 575.61M |
| 2026-04-24 | 575.73M |
| 2026-04-28 | 575.96M |
| 2026-05-01 | 576.21M |
| 2026-05-04 | 576.32M |
| 2026-05-08 | 577.45M |
| 2026-05-11 | 577.88M |
| 2026-05-14 | 577.99M |
| 2026-05-18 | 578.28M |
| 2026-05-21 | 577.99M |
| 2026-05-24 | 578.09M |
| 2026-05-28 | 578.33M |
| 2026-05-31 | 578.57M |
| 2026-06-03 | 578.44M |
| 2026-06-07 | 579.31M |
| 2026-06-10 | 579.5M |
| 2026-06-13 | 579.82M |
| 2026-06-16 | 580.06M |
| 2026-06-20 | 580.29M |
| 2026-06-23 | 580.4M |
| 2026-06-26 | 580.63M |
| 2026-06-30 | 580.91M |
| 2026-07-03 | 581.01M |
| 2026-07-06 | 581.25M |
| 2026-07-10 | 581.96M |
| 2026-07-13 | 582.27M |
| 2026-07-16 | 582.52M |
| 2026-07-20 | 582.75M |
| 2026-07-22 | 582.86M |
| 2026-07-23 | 582.87M |
| 2026-07-24 | 582.87M |
| 2026-07-25 | 582.98M |
| 2026-07-26 | 582.99M |
| 2026-07-27 | 583.11M |
| 2026-07-28 | 583.11M |
| 2026-07-29 | 579.59M |
| 2026-07-30 | 579.59M |
| 2026-07-31 | 579.7M |
| 2026-08-01 | 581.08M |
| 2026-08-02 | 581.21M |
| 2026-08-03 | 581.19M |
| 2026-08-04 | 581.31M |
| 2026-08-05 | 581.31M |
| 2026-08-06 | 581.43M |
| 2026-08-07 | 582.05M |
| 2026-08-08 | 582.17M |
| 2026-08-09 | 582.17M |
| 2026-08-10 | 582.29M |
| 2026-08-11 | 582.49M |
| 2026-08-12 | 582.5M |
| 2026-08-13 | 582.6M |
| 2026-08-14 | 582.62M |
| 2026-08-15 | 582.73M |
| 2026-08-16 | 582.78M |
| 2026-08-17 | 582.89M |
| 2026-08-18 | 582.89M |
| 2026-08-19 | 582.99M |
| 2026-08-20 | 583.01M |
| 2026-08-21 | 583.21M |
| 2026-08-22 | 583.18M |
| 2026-08-23 | 583.27M |
| 2026-08-24 | 583.26M |
| 2026-08-25 | 583.37M |
| 2026-08-26 | 584.04M |
| 2026-08-27 | 584.06M |
| 2026-08-28 | 584.16M |
| 2026-08-29 | 584.16M |
| 2026-08-30 | 585.12M |
| 2026-08-31 | 585.21M |
| 2026-09-01 | 585.21M |
| 2026-09-02 | 585.28M |
| 2026-09-03 | 585.36M |
| 2026-09-04 | 585.36M |
| 2026-09-05 | 585.45M |
| 2026-09-06 | 585.45M |
| 2026-09-07 | 586.17M |
| 2026-09-08 | 586.25M |
| 2026-09-09 | 586.25M |
| 2026-09-10 | 586.34M |
| 2026-09-11 | 586.63M |
| 2026-09-12 | 586.62M |
The line is the measured float behind Solana’s figure. From next year the slope of the schedule underneath it is the one the 28 August vote set, not the one that was in the documentation when most of this line was drawn — which is the whole point of the article in one picture.
How to check any token in a few minutes
- 1
Ask the chain for its total supply twice, a week apart. If it did not move, nothing on this page is happening to that token and the rest is unnecessary.
- 2
If it moved, find out whether a schedule predicted the amount. A base-layer coin has a published issuance rule; check the movement against it before looking for anything more exotic.
- 3
If there is no schedule, look for a mint function and read what guards it. A role held by one address is an emission rate with no upper bound and no notice period.
- 4
If total supply did not move but balances did, you are looking at a rebase or at an unlock. A rebase moves everybody at once; an unlock moves one allocation, and the allocation has a name.
- 5
Last, ask what the schedule’s owner can do. For a governed chain, read the open proposals — not the schedule doc, which describes the parameters as they stand today and says nothing about the vote closing this week.
Our own net supply figures are computed daily from chain readings for this reason, and are withheld rather than estimated where a reading is missing. Individual tokens are on their own pages, with the flows that produced each figure.
The vote closed at the end of epoch 1023. Two large holders moved late: Kraken, whose 8.92 million SOL is about 3.4% of the roughly 263 million that voted, opposed the proposal through the count before switching at the last minute, and Galaxy moved from abstaining to in favour in the final hour. The margin over the two-thirds bar was about a third of a percentage point — on the order of 870,000 SOL — so Kraken’s holding alone was some ten times the distance between passing and failing. A result can be legitimate and still turn on two decisions; recording that is not a complaint about the outcome.
Back to the textFigures in this article are read from the index when the page is served and carry the day they were measured. A figure the index is withholding is not shown as a number here — see the methodology.