Split & settle
Group bill splitter
Trip or dinner over — who owes whom, and how much? Log the members and every fronted expense to see each person's net balance and a settlement list with fewer transfers.
Group ledger
1,976.30
4 members · 3 transfers to settle
| Member | Paid | Share | Net |
|---|---|---|---|
| Alex | 313.00 | 520.93 | −207.93 |
| Ben | 1,206.00 | 503.50 | +702.50 |
| Chloe | 97.30 | 415.94 | −318.64 |
| Dana | 360.00 | 535.93 | −175.93 |
0 expense(s) excluded — see reasons below.
Settlement plan
- Chloe→Ben318.64
- Alex→Ben207.93
- Dana→Ben175.93
All settled — nobody owes anything.
Greedy pairing of the largest balances — fewer transfers, not a claimed minimum.
Expenses
-
Hotpot dinnerAlex268.00Equal
Alex 67.00 · Ben 67.00 · Chloe 67.00 · Dana 67.00
-
Cabin, two nightsBen1,206.00Equal
Alex 301.50 · Ben 301.50 · Chloe 301.50 · Dana 301.50
-
Airport taxiChloe97.30Equal
Chloe 32.44 · Dana 32.43 · Alex 32.43
-
Museum ticketsDana360.00Exact
Alex 120.00 · Ben 120.00 · Dana 120.00
-
Breakfast runAlex45.00Equal
Ben 15.00 · Chloe 15.00 · Dana 15.00
Payer isn't a participant (a pure front)
Splitting in integer cents
Every amount is converted to cents and computed as integers — no floating-point drift. An equal split deals ⌊amount ÷ n⌋ cents to everyone, then hands the leftover cents out one at a time to the earliest members in list order: $100 across three people lands 33.34 / 33.33 / 33.33. The rule is fixed, so identical inputs always produce identical output you can re-check by hand.
In exact mode you type each participant's share yourself; the shares must add up to the expense. When they don't, the row is flagged with the difference and held out of the totals until they do.
How the settlement list is built
Each person's net balance is paid − owed. The tool then repeatedly pairs the largest outstanding creditor with the largest debtor, transferring the smaller of the two gaps, until every balance reaches zero. This greedy pairing keeps the transfer count low — at most n−1 transfers for n non-zero balances — as a fixed, reproducible rule, without claiming a provable minimum.
The ledger lives only in this browser's local storage — nothing is uploaded. Backup export downloads a JSON file you can re-import on another device or after clearing site data.
Edge cases
An expense with no participants, a zero amount, exact shares that don't sum to the total, or a payer whose member was deleted is flagged with the reason and kept out of the totals until fixed.
A payer who isn't a participant is allowed — a pure front where they pay without sharing — and the row is annotated. Deleting a member removes them from every participant list and recomputes; expenses they paid are marked 'payer deleted' and stay out until a new payer is assigned.
Frequently asked
How are equal-split remainders handled?
Amounts are integer cents: everyone gets ⌊amount ÷ n⌋, then the leftover cents go +1¢ each to the earliest members in list order. $100 split three ways lands 33.34 / 33.33 / 33.33 — fixed and reproducible.
How is exact-amount mode validated?
In exact mode you enter each participant's share; the shares must sum to the expense. When they don't, the row shows the difference and stays out of the totals until balanced.
Can the payer sit out of an expense?
Yes — a pure front where they pay without sharing. The row is marked 'payer not a participant' and they still collect the full amount at settlement.
What happens when I delete a member?
They're removed from every participant list and the splits recompute. If they paid for an expense, that row is flagged 'payer deleted' and stays out of the totals until you assign a new payer.
Where is the data kept? How do I switch phones?
Only in this browser's local storage — nothing is uploaded. Use backup export to download a JSON file, then backup import on the new device to restore it.
Everything is computed on this device in integer cents; even-split remainders go +1¢ to earlier members, and settlement greedily pairs the largest balances for a low transfer count. No bank or payment connection — not financial advice.