FIO Blockchain - Validator Economics
Background
The genesis of the FIO chain included 10M tokens set aside for Block Producer Reserves, to be minted each day as needed if the normal fee distribution falls below 50k FIO tokens. In December 2020, these reserves were exhausted and the current BP pay has dropped significantly. During the recent BP call, it was discussed that the pay from organic on-chain activities is about 10% of what it was with the BP reserves. The reduced pay has a direct impact on BPs operating efficiently which is essential for the resilience of the FIO network. To address this issue, FIO Foundation and BPs have been discussing multiple proposals focused on short-term and long-term scenarios. This project work is aimed at analysing and forecasting different scenarios to help determine a feasible solution for the FIO network.
For more information related to this discussion, please visit: The Future of Block Producer Reserves
Motivation
BPs/Validators are an essential part of the network. Today, FIO Blockchain is supported by 36 validators who are providing the infrastructure and participating in the network governance activities. They ensure the security and reliability of the network. In order for a validator to support FIO Blockchain, there are different types of costs involved like infrastructure costs, payroll costs, network costs etc. Though the payroll costs vary in different countries and the way you source the infrastructure(cloud vs bare metal) will have an impact on total costs, on average for a validator to offer services it's expected to cost around 5000$/month($4000 - Salaries, $1000 - Network & Infrastructure).
The current pay of active validators is around $300/month and for standbys, it's around 150$/month. So to have a sustainable network we need to start compensating the validators reasonably for their services while recognizing how blockchain validation is not new and has historically never been a steady, economically reliable activity. In POW systems, for example, some miners have to shut down their companies and sell their equipment at a loss when the difficulty increases, the token prices are down, and they can't afford the electricity to stay in business (let alone pay staff). Alternatively, during a bull market, the equipment is in such high demand because the token prices outweigh the costs that you can't easily purchase equipment for your gaming computer. :) Clearly, neither of these outcomes are ideal, and we want to find a proper risk / reward balance that incentivizes the best participants while also keeping the costs of running the network low in order to attract more supporters and build excitement for the network.
FIO Economic Model:
FIO Network economic model is based on collecting fees from all blockchain altering transactions. It is designed in a way that gives BPs/Validators to determine the fees for each type of transaction. For more detailed information, please visit the FIO Fees Setting.
The fees being collected gets accumulated on the fio.treasury account on the chain today. The major contributors to the fees pool are:
FIO Addresses
FIO Domains
The fees being accumulated is later distributed in the following way: Link
Example:
Stats:
Since the genesis of the FIO Network, the following are different stats representing the status of the network:
Source: https://graph.fioprotocol.io/
Date & Time: 2021-01-21, 13:11 CEST
The total number of FIO Addresses: 101,694
The total number of FIO Domains: 9,436
Total Fees: 2904340 FIO
Block Producers (85%): 2468689 FIO
TPID or BPs (10%): 290434 FIO
Foundation (5%): 145217 FIO
Detailed Analysis:
As of 2020-05-01, the number of domains registered is 9044 and this means 392 new domains are created in the last 8 months which is an increase of 4.33%
Months | No. of Domains |
May | 70 |
June | 12 |
July | 34 |
August | 82 |
September | 13 |
October | 43 |
November | 42 |
December | 42 |
January’21(To-Date) | 54 |
Average/Month | 44 |
As of 2020-05-01, the number of addresses registered is 7729 and this means 93965 new addresses are created in the last 8 months which is an increase of 1215%.
Months | No. of Addresses |
May | 769 |
June | 1617 |
July | 16169 |
August | 6067 |
September | 4303 |
October | 16034 |
November | 14297 |
December | 18744 |
January’21(To-Date) | 15965 |
Average/Month | 10441 |
As of 2020-05-01, the total fees collected is 330320 FIO and during the last 8 months we collected 2574020 FIO, which is an increase of 779%
Months | Fees Generated (in FIO) |
May | 89220 |
June | 76280 |
July | 674720 |
August | 100260 |
September | 50560 |
October | 217040 |
November | 358600 |
December | 523420 |
January’21(To-Date) | 483920 |
Average/Month | 286002 |
Organic vs FIO Funded
Here are some calculations related to this: https://docs.google.com/spreadsheets/d/1-49OFgwBrGlGukvfu9-5n__kBSHE4zBEOvQaX_wirEA/edit#gid=2050696896
The current stats show that during 2020, the organic sales were only ~$9000 which is around 1% of the total sales.
Monthly Average Revenue generated from the addresses and domain fees(FIO Value@$0.07):
Addresses(@27.64FIO): 10441*27.64*0.07 = $20201.25
Domains(@552.94FIO): 44*552.94*0.07 = $1703.05
Average Revenue(Total Fees): 286002*0.07 = $20020.14
We had 12468689FIO from March25th,2020 to Jan 21st,2021 for BP pay. So on average we spent 1246868.9FIO/month for BP pay.
At @0.07FIO, BP pool got - $87280.82/month
Currently, the BP pool should be getting around 85% of the total fees collected per month. Since December-2020, BP pool got around 85% * 500000FIO = 425000FIO in fees. Also an important point to note here is that the fees are not distributed immediately to BPs, but put into 365 individual buckets which are then distributed one bucket per day. This is a really important point of the FIO economics system because it creates a "token sink" to lower the liquid supply and it ensures one big integration or event (such as renewing a lot of domains) doesn't just reward the BPs that are active in that moment. For the BPs to be rewarded for that activity, they need to support the chain for the full year of that registration that was paid for.
Forecasts:
Growth Forecast:
Addresses:
Based on the current patterns the number of new addresses per month is forecasted with a confidence Interval: 95% below:
Domains:
Based on the current patterns the number of new domains per month is forecasted with a confidence Interval: 95% below:
FIO Fees:
Based on the current patterns the number of new domains per month is forecasted with a confidence Interval: 95% below:
Aggregates of Fees from FIO Addresses and Domains:
The forecasts used here are the Upper Confidence Bounds which were forecasted at 95% confidence interval.
Block Producers compensation estimates at different FIO prices can be found below:
Summary/Results:
If we consider the Upper Confidence Bounds for the total fees collection presented here, even in this scenario the FIO network needs to support BPs with additional funds for more than 12 months. And after breaking-even, the network has to grow at the same rate or higher to support the ongoing BP costs.
Based on the forecasts, every month there is currently a shortage of around 2 Million FIO tokens to compensate BPs at the current FIO token price.
If we set the maximum pay at 50000 FIO tokens per day for BP pool, the Active block producers will get 60%~30000 FIO and Standby Producers will get 40%~20000FIO. This means at current token price, Active BPs will get around $3000 and Standby BPs will get around $2000. [Note: The actual values will vary based on the votes, if the current Standby BPs number remains the same at 14 both Active and Standby will earn around $3000 based on the vote distribution.]
If we go ahead with this, then there would be a shortage of around 1 Million FIO tokens to compensate BPs.
The network can become self-sustainable covering the expenses when its generating around $2.5Million or higher every single year and monthly a minimum of $200k. We can also use tools like https://calc.fioprotocol.io/ to calculate what the potential long-term value of the network could be, assuming we reach mass adoption of the FIO Protocol and users (or the companies providing FIO services) are willing to continue paying for and renewing addresses and domains.
1 Million address registrations or renewals are needed per year.
If we are saying 2% of the users will have domains, then it means 20,000 domains registrations or renewals are needed per year.
This could potentially be achieved with active marketing and cooperations with exchanges in the next 2-3 years. [Personal View]
Other Recommendations:
If we calculate the USD values of BP claims at the time they claim them (not the current price today) we can also see additional relevant details (keep in mind, much of this was while the 10M BP reserve tokens were being minted):
Use the funds reserved for the free address pools to compensate the shortfall for BPs pool.
We could also limit the BP token pool with a maximum of 50000 tokens/day that will be distributed.
Make monthly payments to BPs after accumulating all the fees.
Pros:
Helps with BPs tax reporting
Makes it clear to understand the cash flows and helps in future estimations.
Cons:
Code needs to be updated.
BPs cannot sell daily or weekly. (potential cash flow issues)
With a fluctuating token price, this could create a problem with a predictable monthly token “dump” as BPs sell to cover costs. The current model is much more dynamic and allows BPs to make decisions as to when to sell, hold, etc.
Action Points:
Agree on the reasonable BP pay values.
Calculate the shortfall of tokens to compensate BPs based on Fee collection forecasts. [Recommendation: Look for at-least 1 year timeline]
Secure tokens from the free address pool.
Update code to change BPMAXRESERVE value to reflect the new number calculated in the previous step.
Prepare a multi-sig and test it on the testnet.
Deploy it on the mainnet.
Suggestions/Ideas from others:
David Gold: I think this can be boiled down to the concept that primary BPs probably need $3k-$4k per month in income value to be sustainable which isn't far from our pre-mainnet estimates. One of the things our prior BP Reserve system didn't do well was to take into account the value of the FIO Token. It made sure 50k in tokens were given to BPs daily irrespective of the current value of those tokens. My math estimates that BPs have been paid to date around $1.5M-$1.8M worth of FIO tokens if the tokens are valued at their price when they were given (or the opening price for those given prior to first listing). So, thus far, BPs have been well paid for the 9 months of operation but we need to fix the go forward as the protocol continues to grow.
The easiest way to solve this in the near term is to refresh BP reserves. However if we did that we should adjust the formula so the minimum tokens paid out are based in some way based on real world value. Maybe by connecting the payout to the price of a FIO Address in some way. If the token doubles in price, the BP reserve amount in tokens should be cut in half. I also think we should consider the BP reserve tokens paid out as being locked tokens to incentivize a long term view although not sure how complex that would be.Luke Stokes: Part of the BP claim pay was in locked tokens? That might create a long-term incentive for the project success, similar to what the investors have now.
Decisions Taken during BP Call (2021-02-01):
Recording Link: (Passcode: 19b0G>)
https://zoom.us/rec/share/-P-OU0lDQQ9Cts4RDk_iPY7SWmGr1uTJ-dn0JKFVc8c-yj2sx8hS_8Z8EdFvA1dS.1Rap-juvMv4paPTt
Minimum pay agreed for Active BPs is set at $3500 and for Standby BPs is set at $2100. Based on these values and @0.07$/FIO 1.68 Million FIO Tokens per month for 42 BPs (21 Active and 21 Standby).
It is decided to fund the BP pool for a period of ~6 months with the funds reserved in FIO Address Pool totaling ~ 10Million FIO tokens(10 buckets with each 1 million). [Foundation will be committing to burn the tokens when the functionality is in place to keep the maximum tokens below 1 Billion.]
Luke will share the list of addresses of the buckets and Sukesh will update the FIP for final approval by the community.
During the 6 months time, BPs and the community shall evaluate different ideas and growth values of the chain to have more long-term solution.