A primer on ranked-choice voting

ENS

With EP2.2.5 6 up for voting at the moment using ranked-choice voting, this seems like a good time to provide a primer on how ranked-choice voting works, and some insight into how your vote can affect the outcome.

What is ranked-choice voting?

Ranked-choice (RC) is a class of voting systems where rather than simply voting for the outcome you want to win, you instead rank the options from best to worst. In some systems, such as the one Snapshot uses, it is mandatory to rank all the choices, while in others you only have choose at least one.

Why not use simple voting?

First-past-the-post (FPTP) voting, where each voter selects only a single option, has some surprising failure modes, particularly when it’s possible to see outcomes during the voting period.

Suppose we are trying to select a mascot for the DAO. The options are:

  1. Woodpecker
  2. Manatee
  3. Capybara

You would like to see Woodpecker win - but you’d do anything to stop Manatee winning. You have 10 votes, and on voting day you see the current standing is:

  • Woodpecker: 5 votes
  • Manatee: 20 votes
  • Capybara: 12 votes

If you vote for Woodpecker, it will still be in second place to Manatee. Unacceptable! So instead, you vote for Capybara, pushing it over the top to 22 votes. Because of the limitations of FPTP, you voted for an option that wasn’t your first choice, because you didn’t want to risk ‘wasting’ your vote and getting an outcome that was worse for you. There’s no way to tell how many other people are using the same strategy - so maybe nobody really wanted Capybara, they just voted strategically and that was the result.

How does ranked-choice voting help?

Ranked Choice voting allows voters to express their preferences more granularly. In the situation above, you could rank the choices in the order 1. Woodpecker, 2. Capybara, 3. Manatee. Your vote will be first counted towards Woodpecker, and only if Woodpecker cannot win will the other preferences be taken into account.

Under ranked choice voting, the strategic way to vote is also the obvious way to vote: simply rank your preferences in order.

How does ranked choice voting work?

Ranked Choice works by successively eliminating options that cannot win until one option has more than 50% of votes. Suppose we have the following voters:

  • Alice: 5 votes, voting for 1. Woodpecker, 2. Manatee, 3. Capybara
  • Bob: 20 votes, voting for 1. Manatee, 2. Woodpecker, 4. Capybara
  • Charlie: 12 votes, voting for 1. Capybara, 2. Woodpecker, 3. Manatee
  • Dave: 2 votes, voting for 1. Capybara, 2. Manatee, 3. Woodpecker

In the first round of voting, everyone’s first choices are totalled up, yielding:

  • Woodpecker: 5 votes from Alice
  • Manatee: 20 votes from Bob
  • Capybara: 12 votes from Charlie + 2 votes from Dave = 14 votes

Nobody yet has the majority, so we eliminate the least popular, Woodpecker, and reassign Alice’s votes, yielding:

  • Woodpecker: Eliminated (0 votes)
  • Manatee: 25 votes from Alice (2nd choice) and Bob (1st choice)
  • Capybara 12 votes from Charlie (1st choice) + 2 votes from Dave = 14 votes

Manatee now has more than 50% of the votes, so it is declared the winner. Notice also how Woodpecker appears to have 0 votes, even though it was Alice’s first choice. This is because it was eliminated in a previous round. This is how Snapshot presently shows voting totals in ranked choice voting; only the results of the last round are shown.

We can visualise the process of a ranked choice vote using a Sankey diagram. Each horizontal step represents a round, and the flows show how votes are reassigned between choices. Here’s the scenario above:

Now assume you submit your vote as above: 1. Woodpecker, 2. Capybara, 3. Manatee. The effect is dramatic. Round 1 is now:

  • Woodpecker: 5 votes from Alice + 10 votes from you = 15 votes
  • Manatee: 20 votes from Bob
  • Capybara: 12 votes from Charlie + 2 votes from Dave = 14 votes

This time, Capybara has the fewest votes, and is eliminated; Charlie’s and Dave’s votes are reallocated to their second choices, yielding:

  • Woodpecker: 5 votes from Alice + 10 votes from you + 12 votes from Charlie = 27 votes
  • Manatee: 20 votes from Bob + 2 votes from Dave = 22 votes
  • Capybara: Eliminated (0 votes)

Woodpecker now has more than 50% of the votes, and wins, despite appearing to be an obvious loser before you placed your vote; your vote was enough to save it from elimination, causing it to win. Here’s the result in visual form:

Why do I have to rank all the options?

While some implementations of ranked choice voting allow you to choose not to rank some options, Snapshot requires you to rank them all. People are sometimes discouraged from voting at all, because they do not want to lend any support to an option they believe is a bad choice by ranking it.

However, the implementation of ranked choice voting means that the order of options further down your list can never affect the chance of options higher up your list winning; they are considered only if all of your more preferred options have already been eliminated from consideration. Take the example of Dave’s vote above; after Capybara was eliminated, his votes went to Manatee; if he had not provided a second choice those votes would have not counted at all, and his preferred choice would still not have won.

The optimum way to vote is to rank in preference order; if there are options you truly do not want to see win, rank them so that the least bad is ranked first. If you truly do not care which of your later options is selected, rank them in whatever order you wish. Either way, there is never a case where leaving an option off results in a better outcome for you than ranking it last.

How can I vote strategically under Ranked Choice?

You can’t! Simply vote for the options you prefer in the order you prefer them to win. Unlike FPTP, ‘spoiler’ votes are not a thing, and your vote always counts, even if you think your preferred option has a low chance of success.