Skip to content

Latest commit

 

History

History
171 lines (104 loc) · 9.39 KB

voting-types.md

File metadata and controls

171 lines (104 loc) · 9.39 KB
description
Learn more about the different voting schemes on Snapshot.

Voting types

{% hint style="info" %} Snapshot supports a number of different voting types and we plan to support many more in the future. If you would like to request a new voting type, please open a feature request here 🙏 {% endhint %}

What is a voting type?

Voting type defines how users can cast their votes and how the final result is calculated.

Do not mistake it with the voting strategy though - a voting strategy is used to calculate the individual voting power of a user while the voting type calculates the outcome of the proposal.

Voting type is defined in the space settings or at the level of an individual proposal (unless it has been already defined in the space settings) and can allow the users to:

Let's have a look at each voting type in the next section.

Voting types

Single choice voting

Each user can select only one option. The results will reflect these votes as percentages of the total voting power of all voting participants cast on the specific choice.

Ideal for choosing one option from many.

Pros: Most simple and common voting type which is easy to set up and use.
Cons: Voters can pick only one option.

👉 Try it yourself!

Weighted voting

Each user can spread their voting power across any number of choices, from one to all. Their voting power will be divided between their chosen options according to how much weight they attribute to each option by increasing or decreasing the voting power fraction.

Pros: Allows voters to express support for more than one option and specify how much they support each of them.
Cons: Requires more time and adds complexity to the voting process.

This voting method was first introduced by Float Protocol with Scattershot (a fork of Snapshot).

👉 Try it yourself!

Approval voting

Each user can select (approve) any number of choices, each selected choice will receive equal voting power, i.e. if user selects two choices, each choice will receive the total voting power of the user.

Pros: Ask for approval of several decisions in a single proposal.
Cons: There is no way to manifest how much you support each choice. It’s a simple yes or no.

👉 Try it yourself!

Quadratic voting

Snapshot's Quadratic Voting (QV) type goes beyond the conventional approach of simply calculating the square root of each voter's voting power. It presents a more nuanced and democratic framework for decision-making.

One of the main features of our QV type is its emphasis on the number of individual voters rather than the size of their voting power. By doing so, it ensures that every voice counts, thereby enhancing collective decision-making and preventing power concentration.

Additionally, Snapshot's QV type provides voters with the flexibility to distribute their voting power across multiple choices. This feature allows for a more precise representation of a voter's diverse opinions, all without any additional cost.

Drawing key principles from the Quadratic Funding model, our QV type fosters greater participation and effectively balances influence. It represents a significant advancement over simpler voting mechanisms that rely on basic square root calculations of voting power.

Let's have a look at an example:

Let's consider there are 3 voters and two choices, A and B:

  • Alice with 9 tokens
  • Bob with 4 tokens
  • Maria with 1 token
  • John with 1 token

Here's how they allocate their tokens:

  • Alice allocates all her 9 tokens to A
  • Bob allocates all his 4 tokens to B
  • Maria allocates her 1 token to B
  • John allocates his 1 token to B

This results in:

  • A having 9 tokens
  • B having 6 tokens

Now, let's calculate the individual square root contributions for each choice:

  • A: the square root of Alice's 9 tokens is √9 = 3.
  • B: the square root of Bob's 4 tokens is √4 = 2, the square root of Maria's 1 token is √1 = 1, and the square root of John's 1 token is √1 = 1.

Next, we add up the square root contributions for each choice and square the result:

  • A: we square the 3, so A gets 3^2 = 9.
  • B: we add 2, 1, and 1, giving us 4, and square it, so B gets 4^2 = 16.

The total amount of tokens is 9 + 16 = 25.

So the percentages for each choice are:

  • A: 9 / 25 = 36%
  • B: 16 / 25 = 64%

As a last step, we match these percentages with the total voting power of 14 tokens:

  • A: 36% of 15 = 5.4 tokens
  • B: 64% of 15 = 9.6 tokens

{% hint style="info" %} All in all, you don't have to understand each step of the calculation. Yet, it should give you an idea of how Alice with 9 tokens was not able to push through his choice despite having the majority of Voting Power in the group as our QV model emphasizes the number of individual contributors rather than the amount contributed. {% endhint %}

{% hint style="danger" %} This Voting type may encourage the whales to create multiple wallets and split their holdings among them. Therefore it's important to also implement a mechanism providing Sybil Resistance.

Read more here! {% endhint %}

Pros: Dilutes the whales' voting power in favor of smaller holders. Individuals will matter more than the number of tokens.
Cons: This voting type needs to be accompanied by a Sybil-resistance mechanism that prevents whales from splitting funds across different wallets.

👉 Try it yourself!

Ranked choice voting (Instant Runoff Voting)

Each user has to rank all choices in a desired order.

In the first step votes are counted for each voter's number one choice. If a choice receives more than 50% votes (cast on number one choices of each user), that choice wins. The result will show the percentages reflecting how users voted for their first choice only.

In the second step if the first-choice candidate doesn't get over 50% of the total votes the choice with the fewest number one votes is eliminated. Voters who had chosen the defeated choice as number one now have their number two choice counted as their number one choice.

The process continues over multiple rounds until a choice has more than half (> 50%) of the total votes.

For more details, read this discussion.

{% hint style="info" %} Some options will show up as if they had not received any votes because they were eliminated in the ranked-choice voting process. {% endhint %}

Pros: Favors the option with the strongest support and reduces wasted votes.
Cons: Complex to understand. Will only determine one winner, doesn’t work well to select 2 or more winning options.

👉 Try it yourself!

Basic voting

Each user can select one of three options: For, Against, Abstain.

The votes cast on the Abstain choice are counted in calculating if the necessary quorum has been reached for a proposal to pass.

Pros: Results are easy to interpret and hard to contest.
Cons: Choices are predefined and cannot be edited.

👉 Try it yourself!