Zcash guides
Zcash Halving: Block Schedule and Supply
Quick Answer
A halving boundary is a block-height rule in the retrieved reference implementation. Calendar dates are not determined by that height alone. The calculator uses exact zatoshi arithmetic rather than a future-date forecast. The mainnet chain parameters set a slow-start interval of 20,000 blocks and Blossom activation height 653,600.
Key Takeaways
- Zcash subsidy halvings follow a block-height schedule.
- A calendar countdown depends on how quickly blocks are produced.
- Scheduled issuance is different from a current observed supply balance.
Parameters supported by the source
The mainnet chain parameters set a slow-start interval of 20,000 blocks and Blossom activation height 653,600. The consensus header sets the pre-Blossom target spacing to 150 seconds, post-Blossom spacing to 75 seconds and the pre-Blossom halving interval to 840,000.
The ratio is 2, making the post-Blossom interval 1,680,000. These are parameters in a retrieved reference version, not a new live-chain observation.
Why a naive height division is wrong
Before Blossom, the halving index uses height minus the slow-start shift of 10,000. After Blossom, the reference implementation scales the elapsed pre-Blossom height by the spacing ratio and adds the post-Blossom height difference before dividing by the post-Blossom interval.
Dividing every height by 840,000 would ignore both slow start and the spacing transition.
Test both sides of a boundary
The local implementation checks subsidy at slow-start endpoints, immediately before and at Blossom, and immediately before and at subsequent halving boundaries. Tests use integer zatoshis, preserving the right-shift rounding in the reference algorithm.
A single familiar result is not enough: off-by-one mistakes often appear only in the adjacent block. Boundary values are visible on the calculator even with JavaScript disabled.
Limits: schedule is not circulating supply
Cumulative scheduled subsidy is an arithmetic sum of what the reference rule permits. It is not an independently observed issued supply, a miner payout after allocation, a pool balance or a future price.
Calendar estimates would require a chain height, timestamp, an explicit rate assumption and uncertainty. Draft NU7 proposals are not silently folded into this reference schedule.
The complete live Supply Simulator remains an open requirement.
FAQ
Is the halving date fixed?
The rule defines a height. A calendar estimate depends on observed chain progress and modeling assumptions, which this draft does not supply.
Does the calculator report circulating ZEC?
No. It reports the reference scheduled subsidy. Actual chain balances and removed circulation require separate evidence.
Sources and Methodology
Page updated: . Source observation dates remain separate.
Source checked: 2026-10-01T16:25:34.040474+00:00
Source version and supporting details
- Mainnet nSubsidySlowStartInterval=20000; Blossom nActivationHeight=653600.
558f686599586f55def3db86955d74d3be44605e
06392f1604c1fe643f7bb5ebd6b504a771cc78458b5945e16199d1167cbd26ba
Source checked: 2026-10-01T16:25:33.899983+00:00
Source version and supporting details
- Pre/post Blossom target spacing and halving interval constants.
558f686599586f55def3db86955d74d3be44605e
3f5f0824bbee0f3b799282db913908425a412c97bdb036e53f3f1d3336086ada
Source checked: 2026-10-01T16:25:33.765933+00:00
Source version and supporting details
- Halving height scaling, slow-start subsidy and GetBlockSubsidy integer right shift.
558f686599586f55def3db86955d74d3be44605e
673d3c7dbd81b7c33e472798aeb19d4e6c18b5b16b54c99f0e420ba0c7d6d0a7
Source dates describe the referenced observation or document, not a live price. How data is checked ยท Corrections