DEV Community

Michael Lip
Michael Lip

Posted on Originally published at tg.zovo.one

Unequal Shares and Running Balances in Telegram Groups

Even splits are the easy case. Two people, one dinner, half each, done. Real shared money is rarely that tidy. A shared flat, a streaming plan, a trip that runs across two paydays. Someone always ends up covering more, and the amounts drift apart over weeks. The question is not how to split a single bill. It is who owes whom after months of uneven contributions.

The running balance is the scoreboard

SplitTabsBot keeps a ledger that belongs to the group, not to any single trip or month. Every expense you log lands on top of the ones before it. So the running balance is the honest answer to who is ahead and who is behind, based on everything logged so far. That is the part that matters for uneven money. You do not need to settle after every purchase. You let the balance accumulate and check it when you need to. The expense calculator guide explains how the balance and the settlement are two separate calculations, and why that separation is useful.

Uneven contributions are the normal case

When a group splits evenly, the math is trivial. The interesting case is when people cover different things at different times. One person pays the internet, another covers groceries, a third handles the electricity. Each expense is logged with the people who share it, and the payer is always counted in the split automatically. Over months the contributions are never even, and that is exactly what the running balance tracks. Nobody has to remember what they paid three days ago, because the group chat itself is the record. Anyone in the group can check the balance at any moment without asking.

Log as you go, not at the end

The ledger only knows what has been logged. Expenses people forget to add are not in the balance, and a balance checked before everyone logs their weekend spend will disagree with one checked after. So log each expense as it happens with /add, the amount, a short description, and the people sharing it. If you get the amount wrong, /undo and add it again. Log first, then settle. The basic splitting guide walks through the /add format and the free tier, and it is a good place to start if the group has not used the bot before.

Partial payments just update the balance

When someone pays part of what they owe, there is no special ceremony. Log the payment as a normal expense and the balance moves. The ledger does not care whether a payment clears a debt or chips away at it. It only reflects what has been logged. That is what makes a running balance useful across months, because money moves in fits and starts, not in one clean settlement. Someone who is behind can pay a little now and a little later, and the balance shows the remaining gap each time.

Subscriptions and recurring costs

Shared subscriptions are the classic running-balance case. A streaming plan renews every month, and the same person usually fronts it. Log it once and the balance carries it forward. Next month, log it again and the balance grows. After a few months the picture is clear without anyone keeping a mental tally. The same applies to any recurring shared cost, from a gym membership to a group phone plan. Because the ledger belongs to the group and not to a single month, these costs stack naturally on top of everything else.

Settle when the group is ready

/balance shows where everyone stands. /settle goes further and proposes the fewest transfers that would bring every balance to zero. You can run /settle just to look, tell everyone what it says, and run it again next week with more expenses logged in between. Nothing about an earlier settlement is locked in. When the group is ready to actually pay, settle up, and /clear for a clean slate before the next round of shared costs.

Keep a record outside the chat

The in-chat ledger is the source of truth, but sometimes you want the numbers outside Telegram. On Pro, /export turns the ledger into a CSV you can open in a spreadsheet. Free groups are capped at twenty expenses, and a one-time 150 Stars payment covers the whole group, removes the cap, and adds the export. Export before you clear, because clearing is not reversible. The CSV export guide explains what ends up in the file and how the export fits with the in-chat commands.

If you are tired of mental math in a shared flat or a group subscription, the guides at tg.zovo.one walk through the whole workflow. Start with the expense calculator guide and go from there.

Related reading

Related fleet tools worth a look: the bot hub, whisper, nudge. Each one runs as a Telegram Mini App, so nothing to install.

Top comments (0)