Incentivized Testnet - Final Draft

This is the final proposed draft for the upcoming testnet which is based on the community feedback to previous iterations, and of insights from running the rewards calculated based on the last two weeks of the testnet.

The data used for the rewards calculations can be viewed here along with:

  • A reward lookup tool to enable all testnet participants to check their rewards eligibility (if you suspect or have any data to contradict this data please reach out and let us know).
  • An overview of the eligible users of the testnet with a breakdown to the allocations.
  • A tiered rewards distribution breakdown.
  • Different distribution amounts simulations through various user benchmarks.

For transparency, a similar spreadsheet will be available and shared with the community per testnet round.

TLDR

  • 64k SSV tokens are to be minted as rewards.
  • The testnet will run for ~2.5 month through 5 rounds starting from 24.01.22 until 04.04.22
  • Rewards will be calculated per round but distributed in aggregation at the end of the testnet on the Ethereum mainnet.
  • Users eligibility and reward calculation will remain as outlined in the previous proposal, except for operators rewards calculations which is updated to use a logarithmic function.

Testnet snapshot overview

Running the calculations on the previous two weeks of the testnet (epochs 62332 - 65732) presents the following:

  • There are 756 users eligible for rewards.
  • Out of 5,214 validators, only ~1.7K validators are “should be attesting” (not exited, with at least 3 active operators), out of which 1114 are eligible (attestation rate > 85%).
    • ~500 Blox’s validators were excluded.
  • Out of 838 operators, 284 are eligible, out of which 50 are verified.
  • There are 27 SSV holders with 42K SSV “staked”.

Testnet duration

  • The testnet will run in 2 phases - the 1st will last for 5 two weeks rounds (~2.5 months) from 24.01.22 until 04.04.22, which will be followed with a longer lasting and higher rewards testnet (2nd phase) in alignment with the release of our v2 contracts in hopes to capitalize on a version that better showcases our product with the incorporation of the SSV token as the payment layer of the network and offer validator and operator management capabilities.
  • The discussed and proposed terms apply for the 1st phase of the testnet and a dedicated proposal will be up for the 2nd phase due time.

Rewards distribution

  • To lower overall transaction costs for our users and to reduce overhead associated with claiming rewards on a cheaper network (e.g. xDai as initially suggested) like bridging assets and acquiring a native token for gas, the rewards will be distributed once at the end of the testnet (first phase) on the Ethereum mainnet.
  • The distributed amount will be the aggregation of rewards calculated per round in order to incentivize engagement and increase chances of user eligibility throughout the testnet duration.

Operators reward calculations

  • A logarithmic function c0.01 will be used to calculate operator rewards instead of the previous linear function, to flatten the curve and spread the rewards more evenly between the majority of the participating operators.

Next steps

If there are no special objections to the presented above, this proposal will be up for a vote on Monday the 17th.

10 Likes

Could you please confirm that vested SSV (DAO Partners) was not included in the sample data but will be included once we go live?

Everything else looks good to me! Well done. Let’s do it.

I think this is great overall. Just one comment: we should write out the function for the operators reward calculation, since the “c” coefficient isn’t a standard notation. Taking the version from the other proposal and modifying:

val_i – amount of validators the operator is assigned to
score_i – operator’s score for the entire distribution duration
wi = log(0.01 * val_i + 1) * score_i – operator’s weight in rewards
W = ∑wi – sum of all operators weight
R – total rewards
ri = wi/W*R – operator rewards

3 Likes

The reward distribution does not make sense at all to me for a testnet incentive which main purpose is to test drive and tune up the SSV codebase.

Following the calculator linked in the proposal, more than 50% of all rewards will go to a single wallet which is not even running the SSV software, the only reason that they will get most of all rewards is for the only reason that they invested a large amount of their money to acquire over 41,000 SSV tokens. In total they will receive over 31,000 SSV tokens, that’s over 260,000 USD for doing no work or testing at all. Of course that’s an anonymous wallet.

Adding over this, it is mentioned that this proposal will be voted, which I guess will be done through holding SSV tokens. It is pretty clear who will have the upper hand on accepting or rejecting a proposal that benefits them the most and which will allocate them over 6,000 SSV token per round, thus also increasing their voting power at every round.

As a DYI operator, I have invested many hours looking through issues occurring with SSV software, reaching to at least over 15 of the top 100 operators to help them fix issues and allow the network to recover. I have also invested 1000 USD in SSV token, which as since lost 30% in value. The only reason I don’t regret having acquired SSV token is that it allocates me a reward which can at least pay for the energy spent in running and supporting SSV. Also I can at least vote against this proposal even though there is 0 chance for this proposal to be rejected if the vote is done through SSV token.

Finally, if anyone here has been running SSV software without investing in SSV token, don’t even think of covering off your hosting and/or electricity cost with the reward, you are actually paying for someone else to get a juicy reward.

I am overall pretty disappointed by the final draft despite the callouts about this particular issue that had been brought up in almost every previous iteration of this proposal. It is pretty clear that the financial investment is what this testnet is rewarding, not time investment in actually testing the network, which is pretty ironic since this is an “incentivized testnet”.

In the previous iteration, I had said that if the reward was low “I won’t be too mad either because this is just an incentive and this is not reason why I am here”, though given that a single non-operator will receive over 50% is really telling me there might be something actually suspicious about the whole testnet incentive and losing faith that people calling the shots here are putting their best intentions toward building SSV.

1 Like

If you can’t make it clear how your conclusions were reached, I would consider your statement to be extremely irresponsible.

You are right, I did not explain clearly how I found those numbers, thank you for calling this out. They are available in the rewards simulation spreadsheet which is linked in the second paragraph of the proposal.

There you will find that wallet 0xe1e550357dd309e360b045de0713b13066efd701 which runs no operator and holds 41,781 SSV will receive 6,234 of the total 12,800 SSV allocated for the first reward round which is a little more than 48%. I was indeed wrong to say “over 50%” since it is a little below, though I think that it changes nothing to the point I am trying to highlight.

2 Likes

Oh my friend. That’s just an emulator. Most people weren’t ready, and he was. That’s all. When the testnet was launched, everyone was ready, and the situation was different.

1 Like

image

This address has 41781 ssv staked. And the total pledged amount is 43481 ssv. I think you should be able to understand why he can get such a high reward? my friend.

Now I don’t understand this. A couple of things confuse me in the simulation. First of all, there is an article in the simulation file: input the wallet address used to register Operator/ validator. and wallet address.

is this about us? I joined as a validator. Do I need to register somewhere extra?

Once this proposal passes people will join and put SSV into their registering addresses so the total amount of SSV will be much higher.
SSV is calculated between the periods not whoever has SSV now.

I think we should copy along (maybe edit the first post on this topic), the “Motivation” for this incentivised testnet, from @Adamefr 's initial post in November:

There’s also another reply by @alonmuroch on the V3 version, about one of the objectives…

It is clear to me that this incentivised testnet is very ambitious, with a broad spectrum of objectives, and these objectives need more visibility.

I am in favor of LAUNCHING IT as soon as possible.

The team needs feedback.
Codebase needs to be tested in as many scenarios as possible.
The interaction between validators and operators also needs to be tested.
The network economics is a huge factor, and I think it cannot be really tested without an incentivised testnet.

While this may not be perfect, IMHO, launching it will greatly benefit the project.

3 Likes

After running my ssv-operator for several months now, giving major CPU/Internet Bandwidth and some time to check and fix things to the project, I find it kind of embarrassing how relatively low operators are going to be incentivized according to this proposal and the linked calculator especially in relation to importance of just holding the token. Operators are those doing all the work in the end and I hope this is fixed in a fair way in relation of work on the network that has already been done.

While I understand your frustration, we should really wait for the latest data. I’m sure the team will do an update of the data source.

Operators are the backbone, yes! But also think about active community members and other categories of users/partners/DAO members. They all contribute in a valuable way, far beyond setting up a validator. Holing SSV means buying SSV (spending real money) to support the project. I understand where you’re coming from, but these are two sides of the same coin.

Also, don’t forget that we’ll have a second wave for the testnet with even higher rewards. This is not the end of the story. Let’s wait for all feedbacks to flow in. We’re thinking of a way to answer them in a better format than here on the forum.

@Ucodia @inlak16 Thanks for your feedback, and I understand your frustration. But let me explain some of the logic behind this design to offer another perspective.

This program was designed with the intention of fairly rewarding validators, operators, and DAO participants (SSV holders). Don’t think of it like: “validators get more rewards, operators get less, therefore operators are cheated”. Instead, think of it like: “each pool of rewards is the size that is necessary to adequately reward each group”. And given the properties of each group, it makes sense to have them not be the same size.

The SSV-holder validator pool is the obvious example of this. The intention was not to “give SSV holders most of the rewards”. Rather it was to create an incentive along the lines of an artificial staking mechanism, where SSV holders would earn a common rate of return if they “stake” their tokens. As designed, the rate of return is a function of the amount of SSV participating, such that rate of return decreases as the amount of participating SSV increases.

For it to be sufficiently motivating, we estimated that the rate of return would need to be significant… my personal estimate is that no one is going to blink at anything less than 10% APR. This phase of the incentivized testnet will see a drop below 10% APR when only about 1 million SSV is participating, which is not a lot, considering the size of our community. I expect this SSV value to be reached very quickly and for the APR to drop far below that. So therefore, for this phase of the testnet, the rewards are really not that large for SSV holders, despite being a greater proportion of the total rewards pool… it’s basically only enough to get the existing community to participate and reward them with a modest rate of return (5%-10% APR).

Let’s compare this to the operator rewards pool. The intention of this pool was to give some compensation to operators to both keep them motivated to continue participating and to show some appreciation for their work so far. We also designed it so that smaller operators will be slightly favored over larger ones to better spread the rewards among everyone that expended the effort to run a node, while still leaving a strong incentive to attract as many validators as possible.

If we consider a smaller verified operator with about 50 validators, the expected reward is about 420 SSV (about $3800 at current prices) over the 2.5 months. One with 300 validators will make about 1400 SSV ($12600). Those numbers will obviously change as more validators are created, but as long as you grow about as fast as every other operator, these reward values will be approximately maintained. To me, that seems like a good reward, but maybe I’m lacking perspective or underestimating the work required (I’m not personally running an operator). In your opinion, what would be a fair reward for an operator with 50 validators? 300 validators?

And consider all this with the understanding that this is just the smaller “phase 1” of this rewards program. If you followed the discussion on the previous proposal, you saw that we almost launched this with 5x the rewards. The intention to increase the rewards significantly (maybe back to that 5x level) is still there. We just thought that starting smaller would be wise so we could make adjustments for the larger program, if necessary.

Hopefully that makes sense, but if not, feel free to send me a message on discord to discuss it more. As always, everyone involved in designing this is genuinely trying to show our appreciation to all participants, and we did our best to make it as fair and generous as possible, while trying to still move things forward quickly.

1 Like

Thank you @fod, @alonmuroch, @EddieNuta and @BenAffleck for providing clarification on the concerns I have brought up.

First of all I realized that I had jumped straight to concerns without even thanking the team who has been spending the time for putting up this incentive proposal through multiple iterations and gathering feedback, attempting the near impossible task to satisfy everyone in the process! I must have sounded pretty ungrateful but my emotionality is really just a mirror of how much I care for this project. Being more composed and constructive I must learn and you all gave an example of what this looks like and I thank you for that.

I now understand that the balances shown in the simulator are not up to date and therefore the rewards shown not accurate, as such there will be no single “take all” wallet in the final distribution. This is good to hear! What the simulator showed in substance, is that most of the rewards will be attributed to DAO members (SSV holders). Though this was hard to tell from the reward pools formula since it was formally split between 2 roles of validators (65%) and operators (35%), the SSV holding being a parameter in the reward calculation, it was not easy to realize how much of that pool could actually be attributed to DAO members. The simulator made it explicit that it could be a lot, if anything, the fact that it was not up to date highlighted it.

A blindspot I had is that DAO members are indeed also part of the testnet incentive since it helps test driving the SSV economy. I had completely overlooked that, though I can attribute some of this to the fact that only validators and operators were formally mentioned as role for the incentive and DAO members diluted between them. As a feedback, I would suggest that maybe instead of dilluting the reward pool allocated to DAO members between validators and operators, DAO members should have had their own reward pool allocated which would prevent large holder from vampirizing validators and operators reward pools. In essence, I think that allocating 33% to validators, 33% to operators and 33% to DAO members would have seemed fairer and less opaque.

It is hard to get everyone happy, I get that. Though I do not understand why we think that allocating 65% to validators and 35% to operators is fair. Maybe I am late in this debate, but allocating 50/50 would have closed it already. It is obvious to me that DAO members are more likely to fall into the validators bucket than the operator bucket and thus will definitely reduce operators potential rewards. I am glad a log function was applied to operator pool, though the split with validators was not fair to begin with.

All in all, I am glad to be part of the network and happy to continue contributing even if we don’t always agree! Please do not underplay the censorship resistance and decentralization value that DIY operators bring to the network, this is the essence of the blockchain after all.

1 Like

Again, I appreciate the feedback. But, respectfully, I still think you’re missing the point. I think you’re way too focused on the ratio between groups… in my opinion, just saying it should be 50/50 or 33/33/33 without any supporting mathematical argument is equivalent to saying “I think the numbers should look nicer”. You don’t seem to be considering any of the actual calculations, which as I said, were used to choose the split in the first place. And there are other important factors that you don’t seem to be taking into account, like the fact that the SSV holders pool also acts as a necessary abuse mitigation mechanism for the validators.

If you think that you, as a smaller DIY operator (55 validators), should earn more from this, then you need to argue why it is not enough. Why, specifically, do you think you deserve more than $1500+ per month for running your operator?.. especially considering the rewards are expected to increase significantly after this period, that you can earn more rewards by being better than your competitors and attracting more validators, and that you have the ability to run validators and buy SSV yourself, like everyone else. In my opinion, the deal you’re getting seems pretty damn good.

To avoid polluting this thread, please just message me directly if you’d like to discuss this further. We can relay our conclusions back here if we think that a change is warranted.

Thanks for the clarification online and offline, this was really useful to understand the data behind the decisions for this proposal, namely that the reward distribution should not be seen as a split but rather a representation of how much is an appropriate reward for each role, to which I do agree with from that perspective. That’s a go for me :+1:

1 Like

What happens if I join today? Do I have to wait for a particular round?

If you want to join today, you can join a month later at the earliest. because there is no Goeth on the market.

You’ll be able to get goETH before the rewards program starts. The bot was just taken down temporarily because of abuse and will be back up shortly.

@asnogordo You can join today with no issues.