Skip to content

The methods

Voting methods, compared

BallotFlow ships five voting methods today. Each picks a different answer to the same question: how do you turn a pile of ballots into a fair result? The right answer depends on what you're electing, how many seats you're filling, and what kind of fairness matters to you.

i.

Single Transferable Vote (STV)

Voters rank candidates. The tally elects multiple winners in proportion to the support each candidate's voters actually have. The gold standard for proportional multi-winner elections — boards, councils, committees. BallotFlow implements Meek's method.

ii.

Instant-runoff voting (IRV)

Single-winner STV. Voters rank candidates; the lowest-ranked candidate is eliminated each round and their ballots transfer to the next preference until one candidate has a majority. Used for single-seat elections where a runoff would otherwise be needed.

iii.

Approval voting

Voters check every candidate they approve of — no ranking, no limit on how many. The candidate(s) with the most approvals win. Simple to explain, resistant to vote splitting, easy to count.

iv.

Plurality

Each voter picks one candidate; the most votes wins. Familiar from most government elections. BallotFlow includes it because sometimes "first past the post" is exactly what an organization wants — and bolting STV on for a simple yes/no doesn't help anyone.

v.

Schulze (single-winner)

A Condorcet method: voters rank candidates, and the winner is the candidate who'd beat every other candidate in head-to-head matchups (with a beatpath rule for resolving cycles). Mathematically appealing; used by the Debian Project, Wikimedia, and others. BallotFlow's implementation is single-winner only; multi-winner Schulze is a separate, much more complex algorithm.