In the Brubeck testnets, participating miners were incentivized by sharing a fixed reward pool of 2M DATA across the testnets. Minting of this reward pool was approved in SIP-5.
For the upcoming Brubeck mainnet, I suggest that:
The last point differs from the Brubeck testnets, where nodes were able to join without staking. This lowered the threshold to participate, which resulted in a large number of nodes joining the network. The downside was that some people were able to cheaply run a large number of nodes, therefore claiming a larger share of the rewards as well as making the testnets more centralized.
By distributing the mining rewards based on stake, we are taking one step closer to the realistic token mechanics of the Tatum milestone, creating a token sink by locking up some supply in the stakes, and serving our token holders by enabling them to earn a yield on their holdings by participating in the mining.
Assume there are 3 nodes in the network, all doing a perfect job. Their staked DATA holdings are as follows:
In total, 6,000 DATA is staked. Node A earns 1/6th of incoming reward supply at any given time, Node B earns 1/3rd, and Node C earns half.
2% annualized supply increase is roughly 20M DATA per year. The APYs for staked tokens depend on the amount of DATA staked in total:
| Total DATA staked | % of supply staked | APR * | APY ** |
|---|---|---|---|
| 10M | 1% | 200% | 611.71% |
| 20M | 2% | 100% | 169.26% |
| 40M | 4% | 50% | 64.48% |
| 80M | 8% | 25% | 28.33% |
| 160M | 16% | 12.5% | 13.3% |
* assuming perfect operation of nodes, the network, and the reward system ** assuming weekly compounding
It's beneficial to have more nodes in the network, so it's good if large token holders need to run several nodes to stake their whole token supply. For this reason, a maximum stake of 10,000 DATA per node is proposed. From this, a minimum number of miner nodes in the network can be calculated for each scenario of total DATA locked:
| Total DATA staked | % of supply staked | Min miner nodes * |
|---|---|---|
| 10M | 1% | 1,000 |
| 20M | 2% | 2,000 |
| 40M | 4% | 4,000 |
| 80M | 8% | 8,000 |
| 160M | 16% | 16,000 |
0.2% of new DATA was minted to incentivize the testnets, which ran over a course of roughly one month. That attracted a lot of nodes, perhaps even too much, for a limited period of time. Multiplying that by 12 months would lead to 2.4%, giving a rough ballpark of what an appropriate yearly rate might be. For the Brubeck mainnet, we expect a lower amount of miners, but larger and more stable income per miner. I propose setting the inflation rate for the mainnet rewards to 2%. Later Streamr governance decisions can adjust the rate up or down if needed.
Pros
Cons