EOS is powered by delegated proof of stake (DPOS), a system whereby a token holder’s stake in the network determines their voting power to decide on the network’s validators (aka block producers). At the most basic level, a user with 5% of all EOS tokens has 5% of the total voting power to decide who gets to be a block producer. Under the hood, however, things are a bit more complicated.

In order to incentivize more active participation in voting, a user’s voting power decays slowly as time goes on unless they recast their vote. This means that votes that are cast today have more total voting power than votes that were cast a week ago, with voting power decreasing continuously over time. Many voters on EOS are unaware of the existence of a vote decay system, and thus may be participating in governance with less weight than they hope.

This article will take a look at the reasoning behind vote decay as well as the effects of such a system. We hope that this helps voters to better understand how they can actively participate in EOS governance in the most powerful way possible. We encourage all voters to recast their votes every month, at minimum, in order to lend the full weight of their voting power to the block producers they endorse.

WHY DOES VOTE DECAY EXIST?

Producer vote decay was first introduced in EOSIO Dawn 4.0 with the intention of giving more influence to active voters. Vote decay attempts to combat “set it and forget it” voting on EOS. EOS is a 24/7 liquid democracy, and the governance assumptions of DPOS rely on active oversight of block producers by token holders. If a block producer behaves maliciously or doesn’t act in the best interest of the network, it is up to token holders to vote out that producer. This requires that token holders (either directly or through proxies) keep track of BPs and change their votes in response to changing circumstances.

By introducing vote decay, EOS gives voters two options: They can update their vote frequently and maintain full voting power, or update less frequently and have their influence decrease. By incentivizing users to update their vote on a regular basis, it gives users the opportunity to reassess block producers regularly and to decide if they should be changing their vote for any reason.

This also works as a powerful incentive for block producers to continuously work to earn more votes from the EOS community. It helps to guarantee that a block producer doesn’t maintain a paid position unless they are able to get continuous endorsements from EOS token holders. Block producers that are voted into the top 21 at any given point aren’t guaranteed to stay there, even if those who originally voted for them don’t remove their votes. Those votes will decay as time goes on, and the block producers who earn continuous votes from the community will benefit more. This helps to ensure that block producers continuously work to improve and bring value to the EOS community without becoming complacent.

HOW DOES VOTE DECAY WORK?

With vote decay, a user who casts their vote one time will slowly see the power of their vote decrease relative to other more active voters. EOS votes have a half-life of one year, meaning that a voter’s power decreases by about 50% after one year and falls to zero after two years.

For example, imagine a user owns 1000 EOS tokens and votes on November 1, 2018. If the user does not vote again, their effective voting power on November 1, 2019 would be ~500 EOS. If they continue to not vote, their effective voting power would be 0 EOS on November 1, 2020. If that same user were to recast their vote on November 2, 2020, they would again have 1000 EOS voting power.

Vote power decays on a weekly basis, so users who wish to cast votes with as much weight as possible should make sure to recast their votes every week. This system also ensures that voters who are not active for more than two years have no effect on block producer rankings.

If you are an EOS voter and would like to know the current decay of your voting power, simply enter your account name into this tool from EOS Authority to be shown your current weight and decay.

For users looking to dive into the math and code behind producer vote decay, we highly recommend this article by EOS Canada.

VISUALIZING VOTE DECAY

We’ve visualized some basic data from the top 21 block producers that shows the effects of vote decay. Special thanks to EOS Authority and Aloha EOS for their fantastic tools that help make this type of analysis possible.

As we can see in the three tables below, the difference between the total number of votes cast and the effective votes counted is significant for almost every BP. Total votes indicates the total number of EOS currently voting for a BP, while the effective votes indicates how much actual voting power is behind those votes once decay is taken into account. Only effective votes actually count towards influencing a BP’s ranking.

The two tables below show the same data as the table above, broken into separate charts for total and effective votes. As you can see, the ranking of BPs is actually different when effective votes are tallied.

The following chart shows the vote decay affecting each of the top 21 BPs. The total vote decay across the network is currently -379,563,311. That means that nearly 400M votes that have been cast in the past are not currently counted in block producer rankings.

As we can see from the table below, block producer rankings would actually be quite different if total votes were tallied, rather than effective votes. This is not intended as a criticism of the system; in fact, this is how it is supposed to work. Instead, however, it should serve as a reminder to all voters that the effects of vote decay are significant. If an EOS token holder wants to ensure that their favorite block producers are ranked highest, they should prioritize casting a vote at least once per week.

Vote decay for users who vote through proxies works exactly the same as it would if the user were voting directly for BPs. If a user’s vote decays by 50%, then that proxy will simply have 50% less voting power from that user than they would if the user had recast their vote.

Users should think of proxies simply as a vehicle by which their votes are routed. All the same rules still apply, and voting power is calculated the same way. Users who want to make sure that their chosen proxy can direct the full weight of their voting power should also make sure to cast their votes at least once per week.

The chart below shows the total votes and the effective votes of registered proxies with more than 300,000 EOS voting power. As we can see, the amount of decay affecting most proxies is significantly less than the decay affecting block producers.

WHY DOES THIS MATTER?

Most EOS token holders understand that they can use their tokens to vote for block producers. Very few, however, understand that their voting power changes depending on how often they vote. This is an important thing for voters to comprehend, since it affects the rankings of block producers and thus the security of the network.

The above data shows clearly that vote decay removes significant amounts of voting power from the EOS ecosystem. It also shows that vote decay has a significant effect on block producer rankings (and thus block producer pay). While vote decay system is a good way of improving BP incentives and achieving more active voter participation, it can also negatively impact voters who are unaware of its existence. For users who wish to avoid this, the fix is as simple as logging into their wallet of choice and casting their vote again.

We commend every EOS token holder who has taken the time to vote for block producers or to delegate their votes to a proxy, since they are actively contributing to network security and are doing their part as an EOS token holder. We’d like to extend a friendly reminder to all voters to cast their votes as often as possible in order to avoid the penalizing effects of vote decay.