FB Fair Budget

How it works

Sharing a budget so everyone is treated equally

When a community has money to spend on shared projects, how do you choose which projects win without letting the majority decide everything? This demo implements the algorithm from the paper Streamlining Equal Shares by Sonja Kraiczy, Isaac Robinson, and Edith Elkind.

The simple idea

Think of it as giving everyone an equal wallet:

  1. Split the money equally. If there is a budget of 10 and 5 voters, each voter gets 2 to spend.
  2. Vote for what you like. Each voter ticks the projects they support.
  3. Projects pay for themselves. A project is funded when the people who voted for it can cover its cost from their own wallets, split as evenly as possible.
  4. Use the leftover money. If money is left over, the tool adds more projects while staying within the budget.

Because each voter has the same wallet, no group can be ignored: any large enough group of voters can always fund a project they care about. That is what makes the outcome fair.

What the results page shows

About us

This demo was built by:

I built this project to make the algorithm from Streamlining Equal Shares easy to explore and understand interactively.

Where this comes from

The method and the completion step are from the paper Streamlining Equal Shares by Sonja Kraiczy, Isaac Robinson, and Edith Elkind. This site is a small, friendly front end built on top of the pabutools library; it does not change the algorithm in any way.

Build an election