Double Disinflation Rate
- Idea
- Draft
- Review
- Accept
- Implement
- Active
Decision brief
Why this proposal matters
Reduce the inflation schedule by increasing the disinflation rate from the current -15% rate to -30%.
Proposal at a glance
What changes
- Transaction Execution (Runtime): Epoch reward calculation only; taper/initial are re-anchored at the activation slot, with no change to per-transaction execution.
- Virtual Machine: None.
- Block Packing: None.
Stakeholder map
Who is affected
Builders & client teams Medium impact
Transaction Execution (Runtime): Epoch reward calculation only; taper/initial are re-anchored at the activation slot, with no change to per-transaction execution.
Action requirement unknownValidators & operators Medium impact
The feature gate is retained permanently and not cleaned up. Inflation rewards are committed to bank hashes, so the effective taper must be a function of slot so that any node reconstructing the chain from genesis arrives at the same state.…
Action may be requiredUsers & stakers Medium impact
Reduce the inflation schedule by increasing the disinflation rate from the current -15% rate to -30%.
Action requirement unknownGovernance & ecosystem Impact unknown
No proposal-specific evidence was found for this group.
Action requirement unknownExact source revision
Full proposal document
4828b2dd994cSummary
Reduce the inflation schedule by increasing the disinflation rate from the current -15% rate to -30%.
Motivation
While there is a significant appetite to reduce the nominal inflation rate of SOL, mechanism design has become a point of contention, ultimately leading to SIMD 228 failing to reach quorum. This SIMD represents a simplification of the idea, delivering predictable inflation reduction by doubling the disinflation rate.
The same change was previously proposed as SIMD-0411; SIMD-0550 brings it back now that governance tooling is ready and tokenomics is, again, an ecosystem focus.
New Terminology
N/A
Detailed Design
Add a new feature gate called double_disinflation_rate. The inflation
rate is computed from the elapsed time since genesis, so simply setting
taper = 0.30 would reshape the whole curve and drop the rate discontinuously
at activation. To double the rate of decline from activation onward while
keeping issuance continuous, the schedule is re-anchored at the activation slot:
the rate the current (taper = 0.15) schedule yields at the activation year
is recorded as anchor_rate, taper is set to 0.30, and initial is
recomputed so the steeper curve passes through anchor_rate at that year
(initial = anchor_rate / (1 - 0.30)^year). This leaves total(year) unchanged
at the activation slot, so the doubled disinflation takes effect going forward
rather than as a step. The exact ordered computation and its determinism
requirements are specified under Conformance; the reference implementation is
tracked in the feature field.
Regarding activation timing, features activate on an epoch boundary: the gate fires on the E -> E+1 transition, and the re-anchored schedule governs rewards for E+1 and later. Rewards for the just-completed epoch E are computed at that boundary using the rate at the boundary slot. Because the re-anchor leaves that rate unchanged, epoch E settles identically to the pre-activation schedule and nothing is applied retroactively. Implementations must not apply the re-anchored schedule to any epoch before E+1.
The feature gate is retained permanently and not cleaned up. Inflation rewards are committed to bank hashes, so the effective taper must be a function of slot so that any node reconstructing the chain from genesis arrives at the same state. Removing the gate would cause a from-genesis replay that crosses the activation slot to recompute pre-activation epochs with the wrong taper.
This proposal does not modify DEFAULT_TAPER in solana-inflation. That
constant is only consulted when a new genesis is constructed; it has no
effect on already-running clusters, whose taper is carried in bank state
and updated by the gate above.
Validator Components Affected
- Transaction Execution (Runtime): Epoch reward calculation only;
taper/initialare re-anchored at the activation slot, with no change to per-transaction execution. - Virtual Machine: None.
- Block Packing: None.
- Consensus: Reward totals feed bank capitalization and the bank hash, so all clients must compute identical values across the activation boundary.
- Gossip: None.
- Turbine: None.
- Snapshots:
Inflationmust persist in the serialized bank fields so the re-anchored values survive a restart. - On-Chain Core BPF Programs: None.
- Other (please describe): RPC output (
getInflationRate,getInflationGovernor) reflects the new schedule;getInflationGovernorreturns the re-anchoredinitial. There is no API change. Adds the featuredouble_disinflation_rate.
Alternatives Considered
- Do nothing, leave inflation as is.
- Invent a new inflation mechanism, previously deemed contentious and unpalatable.
- Directly halve the inflation rate, resulting in a faster reduction to inflation at the expense of a sudden, drastic drop in validator profitability.
Impact
Doubling disinflation accelerates the timeline of reaching the terminal emissions rate from a period of ~5.7 years to ~2.8 years. This would result in a reduction of approximately ~18.9 million SOL in emissions over the next 6 years, which is ~2.6% lower than the current disinflation schedule. With 41% of validators already opting for a 0% commission on emissions, this change would result in little realized reduction in revenue for many validators, with a soft taper so the remaining 59% do not experience any immediate significant shock to projected earnings. A more detailed breakdown can be found in the accompanying forum post.
Security Considerations
The taper transition is consensus-affecting because rewards are committed to
bank hashes. The double_disinflation_rate feature gate, therefore, encodes
a slot-dependent value (i.e., 0.15 before activation, and 0.30 at and
after it) and must remain in the client for as long as any node may replay
history across the activation slot; in practice, permanently.
Backwards Compatibility
This change is not backwards compatible and requires a feature gate activation.
Conformance
This change is consensus-affecting: epoch inflation rewards feed into bank capitalization and, therefore, the bank hash. Every client implementation must compute identical reward values across the activation boundary or risk diverging from the canonical chain.
At the activation slot, clients must perform the following steps in order:
- Compute
yearfrom the slot exactly as the reward path does - Compute
anchor_rate = total(year)undertaper = 0.15 - Set
taper = 0.30 - Set
initial = anchor_rate / (1.0 - taper).powf(year)
All arithmetic uses IEEE-754 binary64, meaning clients must use the same
decimal literals (i.e., 0.08, 0.015, 0.15, and 0.30), each taken to its
nearest f64. Because foundation = 0.0, the rate applied to rewards is
validator(year) == total(year).
For all subsequent slots, clients use the re-anchored initial in the
following rate calculation:
total(year) = max(0.015, initial * (1 - 0.30)^year)
Conformance requires bit-for-bit agreement on each powf evaluation.
Conformance is verified by replaying a reference ledger spanning the activation slot and confirming byte-identical per-epoch reward capitalization and bank hashes. Agreement on the inflation rate alone is necessary, but clients must also allocate the resulting rewards identically. The reference ledger and test vectors would need to be produced by the future reference implementation, as they depend on the activation epoch.
Evidence graph
Related proposals and rollout
One or more sources are unavailable.
Upstream review record
Upstream discussion & review
GitHub review is editorial context, not evidence of on-chain support, voting, or outcome.
PR #550 · merged SIMD-0550: Double disinflation 26 comments and reviews · Aug 12, 2026@lostintime101 Can you link to the previous SIMD for doubling disinflation to make it clear that this is the same/similar proposal? i do not understand why we are positively engaging with this behavior. if it's the same simd, reopen the old one. if it's new, restart the process It is the same SIMD. We asked to reopen the old one. We were told to open a new one. So what is the status? Is there going to be a vote on this SIMD-0550 in the near future? Will it stay as 0550 or revert to the old one? I don´t see any voices that would be in principle against SIMD-0550 neither here nor on Solana forum. Does it mean the community is largely in agreement with the proposal now?
GitHub ↗@lostintime101 Can you link to the previous SIMD for doubling disinflation to make it clear that this is the same/similar proposal? i do not understand why we are positively engaging with this behavior. if it's the same simd, reopen the old one. if it's new, restart the process It is the same SIMD. We asked to reopen the old one. We were told to open a new one. So what is the status? Is there going to be a vote on this SIMD-0550 in the near future? Will it stay as 0550 or revert to the old one? I don´t see any voices that would be in principle against SIMD-0550 neither here nor on Solana forum. Does it mean the community is largely in agreement with the proposal now? This SIMD will be elevat
GitHub ↗I am convinced that reducing emissions helps everybody who holds SOL for long-term and is genuinely interested in long-term prosperity of Solana network. Current structural supply surplus is destined to keep pushing SOL price down over the long-term (I mean years) if not addressed. Higher yield on an asset that is destined to depreciate due to "supply demand" situation is just a fiction. So I am convinced this proposal helps also the smaller validators. BUT Some smaller validators may not realize the dramatic impact of structural suply / demand dynamics, or may objectively face immediate extinction when issuance is reduced., so they may vote against it. I am definitely 100% in favour of this
GitHub ↗I am convinced that reducing emissions helps everybody who holds SOL for long-term and is genuinely interested in long-term prosperity of Solana network. Current structural supply surplus is destined to keep pushing SOL price down over the long-term (I mean years) if not addressed. Higher yield on an asset that is destined to depreciate due to "supply demand" situation is just a fiction. So I am convinced this proposal helps also the smaller validators. BUT Some smaller validators may not realize the dramatic impact of structural suply / demand dynamics, or may objectively face immediate extinction when issuance is reduced., so they may vote against it. I am definitely 100% in favour of this
GitHub ↗✅ All approvals received! @lostintime101, you can now merge this by commenting /merge. ✅ Status: Ready to merge
GitHub ↗/merge
GitHub ↗✅ Merge successful! lostintime101(https://github.com/lostintime101)'s PR has been merged.
GitHub ↗@lostintime101 Can you link to the previous SIMD for doubling disinflation to make it clear that this is the same/similar proposal? i do not understand why we are positively engaging with this behavior. if it's the same simd, reopen the old one. if it's new, restart the process It is the same SIMD. We asked to reopen the old one. We were told to open a new one. So what is the status? Is there going to be a vote on this SIMD-0550 in the near future? Will it stay as 0550 or revert to the old one? I don´t see any voices that would be in principle against SIMD-0550 neither here nor on Solana forum. Does it mean the community is largely in agreement with the proposal now? This SIMD will be elevat
GitHub ↗Provenance
Evidence & technical details
Rollout or chain data, source revisions, freshness and integrity. 1
Provenance
Evidence & technical details
Rollout or chain data, source revisions, freshness and integrity.SIMD
Deployment Status
Feature Gate not yet created
Exact source revision
Sources & integrity
- Proposal document pinned_commit_blob
4828b2dd994c98032af401acfa20d37688878003 - simd-document document · current · Sep 8, 2026
4828b2dd994c98032af401acfa20d37688878003
One or more sources are unavailable.
simd.watch community discussion · SIMD-0550
Powered by Giscus · Sign in with GitHub to comment
Community comments load when this section approaches the viewport.