Dear Polkadot Community,
I’d like to initiate a discussion on a potential adjustment to Polkadot’s inflation model. This change aims to ensure a sustainable influx of funds into the Treasury in the foreseeable future. Here, I’ll give a brief explanation of the current model, clarify the problem with the existing structure, and propose an adjustment to mitigate the issue.
I’d like to use this opportunity to give a shout-out to the Data Team at Parity who continuously gather key on-chain data, which lays the groundwork for these analyses. Extra appreciation goes out to @pranay, @Pavla, and @Karim. Your support doesn’t go unnoticed. Thank you.
A Brief Overview of Polkadot’s Inflation Model
Polkadot’s inflation is currently set at a fixed rate of 10% per year. A mechanism is in place to distribute the newly minted tokens in each era among the stakers (Nominators and Validators) and the Treasury. This model contains a parameter named ideal_rate
which represents the targeted portion of staked tokens within the staking system. As of mid-January 2023 and Runtime upgrade v9340, this rate reduces by 0.5% for each active (non-system) parachain, starting from 75% (with a minimum of 45%). The overarching objective is to achieve a balanced allocation between liquid tokens, bonded tokens in staking, and parachain slots.
To encourage stakers to align with the ideal staking rate while maintaining the constant 10% inflation, there’s a function that redirects some of the 10% inflation to the Treasury, instead of the stakers, when ideal_rate != staking_rate
. The following graph illustrates this system.
(Blue: Inflation to Stakers, Green: APY of Stakers, Black: Total Inflation)
In essence, the yearly inflation is a fixed 10%, and the distribution between stakers and the Treasury is determined by the discrepancy between the ideal staking rate and the actual staking rate. In scenarios where ideal_rate == staking_rate
, the Treasury would receive 0 DOT from inflation.
The subsequent graph portrays the historical evolution of the staking rate compared to the ideal rate:
The sudden plunge in the ideal staking rate can be attributed to the upgrade that adjusts the variable according to the number of active parachains.
Identifying the Problem
As the discrepancy between the two metrics narrows, the Treasury’s share from staker rewards diminishes. The ensuing graph delineates the Treasury’s inflow from various potential sources:
(Note that the inflow from July 2023 is naturally not complete)
As observable, the Treasury’s funds are primarily derived from inflation.
We anticipate a further reduction in the gap between the two main metrics in the future. This prediction insinuates that the Treasury balance may struggle to support continuous expenditure.
This trend is already noticable:
This development could potentially complicate long-term funding decisions and restrict Polkadot’s capacity to finance critical projects and sustain expenses of the community.
Suggested Alterations
The aim is to retain the current mechanism that motivates stakers to converge to the ideal rate, while simultaneously guaranteeing a minimum inflow to the Treasury. This objective can be attained by decoupling the maximum staker inflation from the total inflation, with the difference being redirected to the Treasury.
The following graph provides a representation of the suggested mechanism:
In this model, I have designated 20% of the annual inflation to be directly allocated to the Treasury, while the remaining 80% will be scaled using the current mechanism.
Assuming a 45% ideal staking rate, this would lead to the following parameters:
Parameters:
- Interactive graph: Graphing Calculator
- Yearly Inflation: 2% (Treasury) + 8% (stakers) = 10% (total)
- Staker APY in ideal: 17.78%
- Staker APY at current staking rate (43.1%): 18.02%
- Minimum Inflow to Treasury: ~2.2M DOT monthly if implemented promptly, with a 10% annual increase.
In short, the Treasury will receive at least 20% of the inflation (potentially more due to a gap in the two main variables) and stakers will receive at most 80% of the inflation. I have opted for those parameters, because they align with the average distribution historically observed as can be seen in the next graph:
Therefore, adopting these parameters should have a negligible impact on the ecosystem’s actors, as it merely formalizes the historical divergence between the Treasury and stakers.
Next Steps
Implementing this change requires a runtime upgrade and root privileges in governance. As such, extensive discussions are required. Once consensus emerges, the proposed changes need to be coded and incorporated into a runtime upgrade.
Moreover, it would be beneficial to make these key parameters (inflation to stakers, fixed share to treasury, etc.) directly modifiable by governance. This will facilitate future adjustments, protected by a sufficiently robust governance call.
TL;DR
- The current inflation model may result in a scenario where the inflow to the Treasury (from inflation) reduces to zero.
- To ensure a healthy Treasury with a predictable minimum inflow, we should revise the underlying model.
- The proposed modification involves directing a fixed 20% of yearly minted tokens to the Treasury, while the remaining 80% is scaled using the current mechanism.
- The changes will have a minimal impact, as the proposed split mirrors the historical distribution.
- Resulting parameters should be exposed to governance, to later adjust more easily.
- Implementing this change will require a runtime upgrade.
Edit: Updated Pictures