Skip to content

NIM tokenomics: supply, emission, and what changed at proof of stake

Last updated Written by the ImpactZero validator team

In short

NIM has a maximum supply of 21 billion, written into the node software and approached asymptotically rather than reached, on a curve the project targets at roughly a century from the 2018 mainnet launch. Proof of stake changed who receives new NIM: validators and their stakers, instead of miners. One NIM is 100,000 Luna.

The numbers, and where each one comes from

Supply figures for NIM are easy to find and hard to trust. Aggregator pages disagree with each other, most carry no date, and several describe the emission schedule of a chain that stopped existing in November 2024. So this page starts from the constants inside the node software the network actually runs, read at release tag v2.1.0 on 14 September 2026.

What Value Source
Maximum supply 21,000,000,000 NIM TOTAL_SUPPLY, as 2,100,000,000,000,000 Luna
Smallest unit 1 NIM is 100,000 Luna developer docs, rewards page
Supply decay per millisecond 0.9999999999960264 SUPPLY_DECAY
Issuance interval once per batch, so about once a minute coinbase, developer docs
Recipient of issuance the validator reward address holding the slot developer docs, rewards page
Proof of work mainnet launch April 2018 Nimiq whitepaper
Proof of stake migration 19 November 2024, 16:45:20 UTC, at block 3,456,000 the migration block timestamp, read from our node
Target for reaching the cap roughly 100 years from the 2018 launch Nimiq blog, 19 February 2024
Circulating supply not published here see the section on why

21 billion, approached and never arrived at

The cap is real and it is a single constant: TOTAL_SUPPLY, set to 2,100,000,000,000,000 Luna, which is 21 billion NIM. What is less widely understood is that the chain never actually gets there, and that this is by design rather than an accident of rounding.

Here is the entire issuance rule, as the node software expresses it:

supply now = TOTAL_SUPPLY minus (TOTAL_SUPPLY minus supply at genesis) x SUPPLY_DECAY t

where t is the number of milliseconds elapsed since the genesis block. Read it as a statement about the gap rather than about the supply. At any moment there is some quantity of NIM that has not been issued yet, the distance between current supply and 21 billion. Every millisecond, that gap is multiplied by 0.9999999999960264. It shrinks by a fixed proportion, forever, and a quantity that shrinks proportionally never reaches zero.

That is what "asymptotic" means in practice, and it has a pleasant property: there is no terminal date after which issuance stops and validators are paid from fees alone. The coinbase simply becomes very small.

What that constant means in human units

A per millisecond figure with eleven nines in it is not intuitive, so raise it to the power of the number of milliseconds in a year, which is 31,536,000,000:

0.9999999999960264 31,536,000,000 = about 0.882

So the undistributed remainder shrinks by roughly 11.8% a year. That single rate governs the whole curve, and it is why "about a century" is the right order of magnitude for approaching the cap: compounded over 98 years, 0.882 reduces the original gap to under a hundred thousandth of itself.

There is a nice corroboration built into the source. The constant is commented as the 60000th root of (1 - 1/222), because the old proof of work chain targeted 60 second blocks and paid each one 1/222 of the remaining supply. Sixty thousand is the number of milliseconds in sixty seconds. Work the old rule out over a year, 525,600 blocks of it, and you land on the same 0.882. The two expressions describe one curve.

No halving, no cliff, no schedule to memorise

It is worth naming what this design is not, because Bitcoin's schedule is the mental model most people bring.

Bitcoin cuts its block subsidy in half at fixed block intervals, so issuance is a staircase and the halving is an event with a date. Nimiq has no equivalent. Issuance is a smooth continuous decay with no steps in it, so there is no halving to anticipate, no scheduled supply shock, and no date on which the rate changes. The rate is always changing, by a tiny amount, every millisecond.

Two smaller differences follow. Nimiq's coinbase is calculated per batch rather than per block, so roughly once a minute rather than every second. And because supply is a function of the clock rather than of the block count, a fast or slow run of blocks does not change how much NIM exists at a given moment.

What the move to proof of stake actually changed

This is the part most third party writing gets vague about, so here it is separated into what we can demonstrate and what we cannot.

Who receives it: the real change

Under proof of work, newly issued NIM went to whichever miner found the block. Under Albatross, the batch reward, which is the coinbase plus that batch's transaction fees, is paid on chain to the reward address of the validator that held the slot. Those validators then pass a share to the stakers who delegated to them, and that second step happens off chain, under each operator's own policy.

So issuance now reaches ordinary holders, which it never did under mining unless they owned hardware, but it reaches them through an operator rather than from the protocol. Where staking rewards come from takes that asymmetry apart properly, because almost every confusion about Nimiq staking traces back to it.

When and how it is computed

Issuance moved from once per block to once per batch, and from being counted in blocks to being read off the clock. That second change has a consequence worth spelling out. Under proof of work, blocks arriving faster than the 60 second target meant NIM being issued faster than the curve intended, and Nimiq's own February 2024 post states that proof of work emission to date had pushed supply above the planned path. Under Albatross the formula asks what time it is, so emission cannot outrun the curve however quickly blocks arrive.

What we are not going to claim

It is frequently said that the migration cut the issuance rate. We could not verify that, and we would rather say so than repeat it.

The decay constant in the shipped node software carries an explicit comment saying it mirrors the supply curve that existed prior to the proof of stake upgrade, and the arithmetic above confirms it: expressed per unit of time, it is the same curve the proof of work chain was on. Nimiq did publish a supply curve update on 19 February 2024 proposing a recalibration, and a stakeholder vote on 28 March 2024 with three curve options, closing at the end of 13 April 2024. We could not find a published announcement of that vote's result, and the constant in the node software as read on 14 September 2026 is the pre migration one.

Our honest summary: the recipient and the timing changed, and the emission became clock based. Whether the curve itself was steepened is something the primary sources we can reach do not settle, so we are not going to assert it in either direction.

The Luna, and why balances look wrong

NIM's smallest unit is the Luna: one NIM is 100,000 Luna, so five decimal places. Bitcoin has the satoshi at eight places and Ethereum has wei at eighteen; Nimiq's choice is deliberately modest, in keeping with a chain aimed at everyday payments.

The practical consequence is that essentially every raw number in the protocol is in Luna. Validator deposits, minimum stakes, balances in RPC responses, amounts in the staking contract: all Luna. Which is why MINIMUM_STAKE reads as 10,000,000 and means 100 NIM, and VALIDATOR_DEPOSIT reads as 10,000,000,000 and means 100,000 NIM. If a balance you are looking at appears to be a hundred thousand times too large, this is invariably the reason.

Why there is no circulating supply figure on this page

You came here at least partly for that number, so this section owes you a real explanation rather than a shrug.

Computing current supply correctly means evaluating the formula above, and the formula takes the genesis supply of the proof of stake chain as an input: the amount of NIM in existence at block 3,456,000 on 19 November 2024. That value lives in the mainnet genesis configuration. We were not able to retrieve it from a first party source on 14 September 2026, and we are not prepared to reverse engineer it from a third party total and present the result as measured.

The alternative is quoting an aggregator, and the research behind this hub found those figures disagreeing with one another and, more damningly, almost never carrying a date. A supply figure without a date is not a fact, it is a rumour with a decimal point.

What we can give you instead is the means to judge any figure you meet:

  • Ask what date it was read. Supply rises every batch. An undated figure is stale by construction.
  • Ask whether it means total or circulating. These differ by whatever is held in reserve or locked, and sources routinely mix them.
  • Sanity check it against the cap. It has to be below 21 billion, and the gap between it and 21 billion should be shrinking about 11.8% a year.
  • Prefer a first party read. A number from a Nimiq node beats a number from a listing site, every time.

When we can read the genesis supply from a source we trust, this page gets the figure and a date stamp. Until then it gets an honest gap, which we think is worth more than a confident wrong number.

What this page is not

  • Not a price page. We publish no price figures anywhere on this site. Supply is a count of coins, and it says nothing at all about what any of them are worth.
  • Not a projection. The curve describes issuance, not value, not demand and not adoption. We make no forecast of any kind.
  • Not investment framing. A capped supply is a design property of a protocol. It is not an argument for holding anything, and nothing here is financial advice.

Check it yourself

Both constants on this page are single lines in a public source file, linked below, and the annual figure is one exponentiation you can do in any calculator. The migration block and its timestamp are readable in our block explorer, as is every batch reward since, arriving at validator reward addresses about once a minute.

For the surrounding context: what Nimiq is if you got here without the basics, how Albatross works for the batches and slots the coinbase is paid across, and where staking rewards come from for how issuance actually reaches a staker. The rest is in the Learn hub.

Questions people ask

What is the maximum supply of NIM?
21 billion NIM. It is a hardcoded constant in the node software, TOTAL_SUPPLY, stored as 2,100,000,000,000,000 Luna. The supply formula approaches that ceiling asymptotically rather than arriving at it, so the cap is a limit the chain gets ever closer to and never technically reaches. Nimiq targets roughly a century from the 2018 mainnet launch.
What is a Luna?
The smallest unit of NIM, the way a satoshi is the smallest unit of bitcoin. One NIM is 100,000 Luna, so five decimal places. Every raw amount in the protocol, in RPC responses and in most APIs is denominated in Luna, which is why an unconverted balance looks a hundred thousand times too large.
How is new NIM created on Nimiq?
Through the coinbase, which is calculated at the end of each batch rather than per block. The protocol works out what total supply should be at the current timestamp using a fixed formula, subtracts the supply at the end of the previous batch, and the difference is newly issued NIM. It is added to the batch reward alongside transaction fees.
What changed about NIM issuance at the move to proof of stake?
Three things: who receives it, moving from miners to validator reward addresses and then to stakers off chain; when it is paid, moving from every block to every batch; and how it is computed, now from elapsed time rather than from a block count. The decay constant itself is commented in the source as mirroring the pre-existing proof of work curve.
What is the current circulating supply of NIM?
We do not publish a figure. Computing it correctly needs the genesis supply parameter of the proof of stake chain, which we could not retrieve from a first party source, and the numbers on aggregator sites disagree with each other and usually carry no date. This page explains the formula so you can evaluate any figure you find elsewhere.
Does NIM have a halving like Bitcoin?
No. Bitcoin cuts its block reward in half at fixed block intervals, so issuance falls in steps. Nimiq issues a fixed proportion of the remaining unissued supply per unit of time, so the curve is smooth and continuous with no step changes in it at all. The undistributed remainder shrinks by roughly 11.8% a year.
Who receives newly issued NIM today?
The validator that held the slot. The protocol pays the batch reward, which is the coinbase plus that batch of transaction fees, to the validator reward address on chain. Validators then distribute to the stakers who delegated to them off chain, under their own published policy. No issuance is paid to a staker directly by the protocol.

Sources

  • nimiq/core-rs-albatross, primitives/src/policy.rs, TOTAL_SUPPLY 2,100,000,000,000,000 Luna, SUPPLY_DECAY 0.9999999999960264 per millisecond with the comment explaining that it mirrors the pre proof of stake curve, and the supply_at function. Read at release tag v2.1.0 on 14 September 2026
  • Nimiq Developer Center, Rewards, the supply formula S(t), the coinbase calculated at the end of each batch, rewards as coinbase plus transaction fees, and 1 NIM equals 100,000 Luna
  • Nimiq Developer Center, Glossary, maximum supply of 21 billion NIM, and the coinbase defined as the new coins printed at the end of a batch
  • Nimiq, Proof-of-Stake Supply Curve Update, published 19 February 2024: "a total supply of 21 billion NIM approximately 100 years from the time of mainnet launch in 2018", and the statement that proof of work emission to date had pushed supply above the planned curve
  • Nimiq, Proof-of-Stake Supply Curve Vote, published 28 March 2024: the three curve options put to a stakeholder vote, closing at the end of 13 April 2024 UTC at block 3141223
  • Nimiq Whitepaper, the 2018 mainnet launch and the 21 billion supply framing
  • ImpactZero block endpoint, the migration block, block 3,456,000, timestamp 1732034720000, which is 19 November 2024 at 16:45:20 UTC, read from our own node on 14 September 2026