Health & Life Runs locally Ready to use Built-in examples No tracking

Bill Splitter

Enter the total and headcount to split evenly, or switch to item mode to share a common cost and add each person’s own orders. Rounding surplus is listed separately.

The hard part of settling a shared bill is not the arithmetic but the details — who did not drink, and who pays for the shared items; rounding it coarsely leaves someone out of pocket, and itemising it finely costs goodwill. Both routes are here: split the total evenly, with the rounding surplus worked out, or go per head with individual orders and the shared costs distributed automatically, so what each person owes is unambiguous.

On the conventions: when the total does not divide evenly, both an exact figure and a rounded-up one are given, with the small surplus going to the till; in item mode the shared costs — drinks, service charge, anything ordered for the table as a whole — are divided by the headcount and added to each person's own orders, so who ordered what is easy to check afterwards.

How to use

  1. Enter the total and the number of people for an even split.
  2. Or switch to item mode and list each person's orders.
  3. Enter the shared costs to be divided among everyone.
  4. Read each person's share and the rounding surplus.

How it works

How equal split is computed

Equal split is simplest: per person = total / headcount. If the venue charges a service fee or you want to tip, first compute them as a percentage of the total and add to the total, then divide. For example 300 for 4 people with a 5% service fee gives a total of 315, or 78.75 each. Note the tip and service-fee percentages are both "of the consumption total," not of the amount after adding the service fee.

How the per-person breakdown is computed

The per-person breakdown suits meals with very different orders: first split shared costs (drinks, room fee, cold dishes) per head, then each person adds their own order. For example a shared 120 for 4 people (30 each), so A who ordered 80 pays 110 and B who ordered 60 pays 90. This way those who didn't eat a dish don't pay for it.

Rounding and the leftover overage

In reality, cash or transfers often round, so there are three tiers: to 0.1, to 1, and to 10. Rounding always goes up, so the collected total may exceed the cost total, with the excess listed separately as "rounding overage" so you can keep it for next time, refund it or offset with a red packet.

Code example

JavaScript Even split and rounding up

function splitBill(total, people, tipRate = 0) {
  const withTip = total * (1 + tipRate);
  const exact = withTip / people;
  return {
    exact: Math.round(exact * 100) / 100,   // to the cent
    rounded: Math.ceil(exact),              // rounded up
    overpay: Math.ceil(exact) - exact       // the extra collected
  };
}

splitBill(523, 4, 0.1);   // exact 143.83, rounded 144

Python Per-person split from itemised orders

import math

def split_detail(orders, common):
    per_common = common / len(orders)
    return {name: math.ceil(amount + per_common)
            for name, amount in orders.items()}

split_detail({"Alice": 68, "Bob": 92, "Carol": 45}, 90)
# {"Alice": 128, "Bob": 152, "Carol": 105} (common 30 each, rounded up)

FAQ

How much should each person pay under AA?

The most direct convention is total / headcount. If your order is much pricier than others', the "per-person breakdown" is fairer: split shared costs per head, then each adds their own. The few yuan that cause disputes often come from drinks and room fees not being counted as shared.

Are tips and service fees split too?

Yes, but the ratio differs: tips and the common 10% service fee are charged on the consumption total, not once more on the amount after the service fee. This tool handles it that way, so entering a 5% service fee adds 5% of the original total.

After rounding to the yuan the total doesn't match — what then?

Rounding always goes up, so 86.25 each for 4 people becomes 87 each, collecting 3 extra. That 3 is listed separately under "rounding overage," to be waived by the collector, kept for next time, or refunded via a WeChat red packet.

If someone doesn't drink, are the drinks split too?

The default equal-split mode splits all costs. To distinguish, use the breakdown mode: remove the drinks from shared costs and add them to each drinker's own order amount.

What are shared costs usually?

Items everyone consumes and that can't be attributed to one person: drinks and beverages, room fee, seating fee, shared cold dishes and staples. The test is simple — if you can't say "mainly who ate it," make it a shared cost.

How do I reduce errors with many people?

In breakdown mode, paste all the order amounts on one line (comma- or space-separated); the headcount is determined by the number of amounts, no separate entry needed. The neater the list, the easier the per-person check — tick against the table as you collect.

Can I use only the equal split without entering each person's amount?

Yes. Switch to "equal split" and enter only the total and headcount; leave the tip and service fee blank for 0. This covers most everyday meals; save the breakdown mode for cases with wide order differences and long-term non-drinkers.

Is the amount I enter uploaded?

No. These numbers are divided and added only in the current browser, with no network request, and the site has no account system linking them to you. Any history used stays only in local localStorage and is clearable in one click.