Dynamic inflation

Dynamic inflation

Rationale

Operation fees motivate stakers to include as many operations as they can while prioritizing higher-fee operations when they produce blocks.

Newly created blocks also distribute newly created MAS tokens to stakers to motivate them to create blocks even when there are not many operations available to include.

However, emitting new MAS also causes an inflationary pressure that dilutes the value held by non-stakers.

In this proposal, I propose an idea to dynamically adjust inflation based on usage.

Proposal

Burning part of the fee

Instead of giving 100% of operation fees to stakers, burn 1/4 of it and give 3/4 of it to stakers.

This has two benefits:

  • block producers have les incentive to fill their blocks with their own operations for flood purposes
  • deflationary pressure caused by token burns

Dynamically adjust the amount of newly produced tokens

Instead of producing 1.02 MAS per block, produce the following amount of new tokens per block:

max(0, 1.02 - 0.5 * total_fee * 3/4)

That way:

  • the incentive to include as many operations as possible in a block and prioritize them by fee is kept
  • the incentive to produce blocks when not many operations are available is kept, but without resorting to inflation when it can be supported by fees

Global behavior

The cool thing here is that the more usage there is, the lower the inflation is.

Above a global operation fee per block of 1.632 MAS (at least 164 operations with the minimal 0.01 MAS fee, which is 328 txps assuming minimal fees) the MAS enters a DEFLATIONARY regime.

6 Likes

I like this idea and support it.

Please let’s add, if possible, a function to reward more nodes that are stable, old, contribute by the upcoming voting. As a small node runner engaged in the community and voting, contributing, I would like the see my APY high. And the APY of big nodes that do nothing lower. It’s possible I’m sure to add it without compromising anonymity. And if someone KYC, higher APY.

That would encourage smaller nodes in my opinion.

100% support this as a node runner

2 Likes

I appreciate the creativity behind this proposal, but I believe it could inadvertently achieve the opposite of its intended goal. My 2 cents below:

Growth in blockchain networks thrives on positive incentives, not disincentives. The current proposal suggests reducing block rewards during high activity, effectively discouraging validators from actively promoting network use.

If “fewer transactions = more rewards” becomes the mindset, there’s no reason for stakers to push for network growth - or even to use the network themselves.

A better alternative might be to adopt a model where transaction fees drive rewards with no connection to the block rewards:

50% of fees are burned to create scarcity.
50% of fees are distributed to validators/stakers, ensuring they benefit from network activity.

This approach incentivizes both users and validators to increase transactions organically.

On top of that,
Smaller node operators with only a few rolls might feel punished by reduced rewards. This could drive them out of the ecosystem, consolidating power among larger nodes in a clear step backward for decentralization. Supporting smaller validators is crucial to maintain a decentralized and resilient network.

Massa’s ecosystem is still in its infancy, with minimal activity. Artificial adjustments to inflation won’t fix this core issue and won’t drive the price, at all. Organic growth - building real use cases, attracting developers, and fostering adoption - is the only sustainable path forward. Once Massa has the activity level of a mid-tier blockchain, we can revisit tokenomic adjustments to optimize for scarcity and value, imho.

While I understand the desire to make MAS more scarce and valuable, these changes need to come naturally through adoption and activity. Let’s focus on creating the conditions for that growth - then we can implement mechanisms like fee burns to complement an already thriving ecosystem.

Please let’s add, if possible, a function to reward more nodes that are stable, old, contribute by the upcoming voting. As a small node runner engaged in the community and voting, contributing, I would like the see my APY high. And the APY of big nodes that do nothing lower. It’s possible I’m sure to add it without compromising anonymity. And if someone KYC, higher APY.

This was discussed here MASSA Staking Formula - #2 by 0xpatcha and here Complementary proposal addressing Liquidity, Value, and Reward Distribution in Massa Blockchain - #13 by api unfortunately it seems that any bias we will attempt to add will mostly benefit large stakers and achieve the opposite of what we want

1 Like

Growth in blockchain networks thrives on positive incentives, not disincentives. The current proposal suggests reducing block rewards during high activity, effectively discouraging validators from actively promoting network use.

On the graph above the blue curve shows how much coins block producers gain as a function of the total operation fees (which reflects activity). As you can see, I computed the slopes to make sure that in all cases, the more activity there is, the more block producers are rewarded. This means that increasing activity remains always in the interest of block producers.

50% of fees are burned to create scarcity.
50% of fees are distributed to validators/stakers, ensuring they benefit from network activity.

As for fees, I prefer to burn less (1/4 in the proposal) rather than 50% in order to maintain a strong incentive to include as many operations as possible in blocks, and minimize the risk of fee hikes for organic users.

This proposal basically says that the more activity there is, the more block producers gain, and the lower the inflation gets (might even get negative).

2 Likes


Is current behavior correctly represented with dashed lines in attached screenshot?

1 Like

That’s correct.
…

afai understand 100% yes for this proposal. i am a staker from day 1 mainnet. I hope its better for node runner

1 Like

I see where you’re coming from with the idea of burning part of the fees and dynamically adjusting inflation based on usage, but I think this approach doesn’t fully tackle the core issue of inflation in periods of low activity.
While burning 1/4 of the fees can help create some deflationary pressure, the problem is that we still have a fixed amount of MAS tokens being minted (1.02 MAS per block), even when there aren’t enough transactions to justify it.
This leads to inflationary pressure that’s not really needed when activity is low.

What could work better is adjusting the number of MAS created per block based on actual network usage.
This way, when activity is low, we’re not minting more tokens than necessary.
For example, instead of having a fixed 1.02 MAS created per block, we could tie it to the total fees collected in each block.
The formula would look something like this :

MAS created per block = max(0.68,1.02−0.5×total fees×3/4)

Where :

  • 0.68 MAS is the minimum reward for low activity periods.
  • 1.02 MAS is the regular emission when activity is high.
  • total fees represents the total operation fees collected in the block.
  • 3/4 reflects that only 75% of the fees are distributed to stakers, while 25% are burned.
  • 0.5 is a scaling factor used to ensure that the reduction in MAS created per block is proportional to the fees collected. Without this factor, the decrease could be too aggressive, potentially reducing the reward too quickly. The value of 0.5 is a balance point that adjusts the formula’s sensitivity to fees.

This setup dynamically adjusts the number of new MAS tokens minted.
When the network activity is low, the emission would drop to the minimum of 0.68 MAS per block. As activity picks up and more fees are generated, the formula would adjust upwards, potentially reaching the normal 1.02 MAS when the activity is high.

By keeping the idea of burning 1/4 of the fees, we also maintain an added layer of deflationary pressure, creating a more balanced system.
This approach aligns the inflation rate directly with actual network activity, ensuring that we’re not oversupplying the market with tokens when demand is weak while still rewarding stakers adequately when usage increases.

What I’m getting at is that this system creates a better equilibrium.
Inflation is kept under control during periods of low activity, and rewards naturally scale with real usage. This would better maintain the token’s value and make the system more sustainable over time.

1 Like

I’m not sure about the formula you have provided, but I definitely like your idea that higher network activity may allow to emit more new tokens without high inflationary pressure on its price. It sounds very logical to me, as more users equals more tokens demand which will compensate supply increase caused by new tokens emission.

the problem is that we still have a fixed amount of MAS tokens being minted (1.02 MAS per block), even when there aren’t enough transactions to justify it.

I did not want to propose a change in baseline, as it would collide with a separate proposal you can find here: Proposal to Reduce Massa Blockchain Yearly Inflation to 2.5% ( Block reward 0.4) - #14 by Kevin but of course the two can be combined !

MAS created per block = max(0.68,1.02−0.5×total fees×3/4)

As @serhii pointed out, this formula does not achieve what you explain, as it keeps an inflation of 1.02 per block at zero activity, but simply ensures that new tokens continue being emitted at high activity, albeit at a lower rate.

More fundamentally I do not understand why you would want to continue token emission and inflation when there is already plenty of activity to comfortably pay node runners with fees without the need for inflation. I believe that inflation is necessary at low activity (albeit it could be reduced, see the separate proposal linked above) in order to pay the node runners when there are not enough fees available to do so. Without inflation at low activity, we would lose a lot of node runners. But I would personally prefer zero inflation, and maybe even deflation, at high activity.

Basically, I understand that inflation might have a lower impact at high activity. But why would you want it at all in that case ? The only valid reason I can potentially see is to keep a permanent inflationary pressure to discourage savings (because they would lose their value over time) and encourage spending.

2 Likes

%100 percent agree. When there is high activity why would we mint new mas tokens? I support the dynamic inflation proposal made by Damir but I also think this should be executed together with Proposal to Reduce Massa Blockchain Yearly Inflation to 2.5% ( Block reward 0.4) then we can establish more healty mas network in terms of inflation. Lets cut the total block reward into half and put a dynamic inflation.

Dynamic inflation sounds like a good idea, but I completely disagree with the idea of decreasing base block reward. Inflation will get down at some point on its own without messing with a block reward.

but I completely disagree with the idea of decreasing base block reward.

This is a separate topic, please lay your arguments here: Proposal to Reduce Massa Blockchain Yearly Inflation to 2.5% ( Block reward 0.4) - #14 by Kevin

Interesting!
More activity => more inflation or less inflation ?

Intuitively I could imagine that the more people we have in the ecosystem, the more tokens would be needed to fullfill the use cases: avoid using small fractions of coins like with Bitcoin, increase the overall ledger storage size (based on token supply), etc. This is in favor of more inflation with activity.
But that’s also leaning towards providing stability to the token price which is not what’s expected from a L1 token.

So apart from that, we have Damir’s arguments that the block reward is here to help node runners when there are not enough operation fees, and that less inflation would be better with activity.
I like also the arguments for burning part of the fees (spam resistance and deflationary pressure).

All in all on my side I think the actual formula with a constant block reward is good enough for the foreseeable future, and that the question of the amount of reward/inflation constant (like here) is more important to solve now, together with the governance process to move forward (here).

Ok, I’ll try to come up with a logic. Perhaps we partner with Humanode and reward more one node per real human :smiling_face:

This is a really good idea and will help A LOT with the inflation.
As a top node runner and i fully agree with this suggestion.

I believe the more sooner the team take action vs Inflation the better

This would definitely benefit the chain in the long run! I fully agree with it too