splitpocket

Debt simplification, explained with real numbers

How twenty tangled IOUs become four payments, and why nobody's total changes by a single paisa.

4 min read

Five friends, one weekend, five people who each paid for something. That produces twenty separate debts: every person owes every payer a slice of what that payer covered. Nobody is making twenty transfers. Here's how twenty becomes four, and why it's not a trick.

The weekend

Who paid for what

5 people · everything split equally

Dinner (you)
₹4,000.00
Cab (Priya)
₹1,500.00
Tickets (Arjun)
₹3,500.00
Snacks (Sam)
₹1,000.00
Fuel (Neha)
₹500.00

Total spent

₹10,500.00

Everything split five ways, so every person's fair share is ₹2,100.00.

Each of those five expenses creates four IOUs, one from each person who didn't pay. Twenty debts in total, pointing in every direction. You owe Priya ₹300 for the cab; Priya owes you ₹800 for dinner. Both of those are true, and paying both would be ridiculous.

Step one: net everyone to a single number

For each person, take what they paid and subtract their ₹2,100 share. That single number is the only thing that matters about them.

Net position

paid − ₹2,100.00 share

Youpaid ₹4,000.00
+₹1,900.00
Arjunpaid ₹3,500.00
+₹1,400.00
Priyapaid ₹1,500.00
−₹600.00
Sampaid ₹1,000.00
−₹1,100.00
Nehapaid ₹500.00
−₹1,600.00

Sums to zero, as it must

₹0.00

Two people are owed ₹3,300 between them. Three people owe ₹3,300 between them. The whole problem is now: move ₹3,300 from that side to this side, in as few moves as possible.

Step two: match the biggest debt to the biggest credit

Take whoever owes the most and whoever is owed the most, and transfer the smaller of the two amounts. One of them is now settled and drops out. Repeat.

Settle up

4 payments

Neha → youclears Neha; you're still owed ₹300.00
₹1,600.00
Sam → youclears you; Sam still owes ₹800.00
₹300.00
Sam → Arjunclears Sam; Arjun is still owed ₹600.00
₹800.00
Priya → Arjunclears both
₹600.00

Total moved

₹3,300.00

Twenty debts, four transfers. Check any individual: Neha paid ₹500 and handed over ₹1,600, so she's out ₹2,100, exactly her share. Sam paid ₹1,000 and transferred ₹1,100, so he's out ₹2,100. You paid ₹4,000 and received ₹1,900, so you're out ₹2,100.

Why four is the floor here

With three people owing and two owed, the minimum is 3 + 2 − 1 = 4 payments, unless some subset of the debtors adds up exactly to one of the creditors, in which case you save a transfer. Here the debts are ₹600, ₹1,100 and ₹1,600, and no combination of them makes ₹1,900 or ₹1,400. So four it is.

This is the useful mental model: every payment settles at least one person. The last one settles two. That's why the count is one less than the number of people involved on both sides.

When you don't want it simplified

Occasionally you do want the raw debts. If Sam borrowed ₹800 from Arjun personally and would rather pay Arjun directly, the simplified view telling him to pay you instead feels wrong, even though it's arithmetically identical. Two things help:

  • The expenses are still there. Simplification is a view over the balances, not a rewrite of history. Every original expense, with its payer and its split, stays exactly as entered.
  • You can just pay someone else. Record the settlement that actually happened. The balances take it into account and re-suggest the rest.

What this saves you in practice

A five-day trip with four people and fifteen expenses generates sixty raw debts. Simplified, it's usually three payments. The saving isn't the transfer fee. It's that nobody has to hold the whole tangle in their head, and nobody ends up as the group's unpaid accountant.