A little help goes a long way. Find a tool/

Finance FIELD NOTES · 4 MIN READ

How Weighted Tip Splitting Works

The arithmetic behind a fair restaurant split: one tax and tip for the table, weighted per-person shares, and cash round-up with a tracked overage.

The hard part of splitting a restaurant bill isn't the division — it's producing a per-person number that is provably fair and still adds up to exactly what the table owes. A weighted tip splitter does both, and it does them in a specific order: compute the bill's tax and tip once, then carve the result into shares that reconcile to the cent.

What the splitter computes before it splits

Every split starts from three bill-level numbers. Tax is a percentage of the subtotal. Tip is a percentage of either the subtotal (the default) or the taxed total, depending on the toggle — the etiquette behind that choice is covered in how tipping works. The table total is simply the sum:

tax   = subtotal × taxRate
tip   = tipBase × tipRate
total = subtotal + tax + tip

Crucially, these are computed once for the table, not once per person. A shared tip percentage applied to a shared subtotal produces one tip amount — which means the group tips exactly once, at exactly the rate everyone agreed to, and nobody's mental arithmetic double-counts the tax.

Weights and fractions

When orders are uneven, each person gets a weight — a positive number roughly proportional to what they consumed. The splitter converts weights into fractions of the table:

fraction = myWeight / sum(all weights)

Four diners with weights 1, 1, 2, 2 produce fractions of 1/6, 1/6, 2/6, 2/6: the two heavier eaters each pay twice what the lighter ones pay. Omit the weights entirely and everyone gets fraction 1/4 — the plain equal split. Either way the fractions sum to exactly 1, which is the property that keeps the books balanced.

The per-person ledger

The output isn't one number per person; it's a four-line ledger. Each person's fraction is applied to each of the bill-level amounts — their slice of the subtotal, of the tax, of the tip, and of the total:

mySubtotal = subtotal × fraction
myTax      = tax      × fraction
myTip      = tip      × fraction
myTotal    = total    × fraction

Splitting the components separately (rather than only the total) matters at settlement time: each person can see what portion of their payment is gratuity, and cash collected can be reconciled line by line. Because every row scales by the same fraction, the columns sum back to the table totals exactly.

Round-up mode and the overage

Owing $38.97 is awkward in cash. Round-up mode applies a ceiling to each person's total — $38.97 becomes $39 — and tracks the difference as overage. The overage is never lost or pocketed silently: the tool reports the rounded total next to the exact total, so the extra is visible and can simply be added to the tip. The mechanics of rounding shares while keeping the books honest are the same ones described in how to split a bill; round-up mode just automates the ceiling per person instead of leaving it to mental math at the table.

Worked example: four diners, two appetite classes

A $184.50 subtotal with 8.75% tax and an 18% tip on the subtotal produces tax of $16.14, tip of $33.21, and a table total of $233.85. An equal split would charge everyone $58.46 — overcharging the two salad-eaters by about $19.50 each. With weights 1, 1, 2, 2 and round-up enabled:

PersonSubtotalTaxTipTotalRounded
Light (1)$30.75$2.69$5.54$38.97$39.00
Light (2)$30.75$2.69$5.54$38.97$39.00
Heavy (3)$61.50$5.38$11.07$77.95$78.00
Heavy (4)$61.50$5.38$11.07$77.95$78.00

The rounded cash total is $234.00 against an exact $233.85 — an overage of $0.15, which is 15 more cents for the server. Every person's rounded figure is a whole dollar, the weights are honored, and nothing disappears in the shuffle.

Try it yourself

Run your own table through the Tip Splitter — set the tip rate (or use a quick pick), flip tip-on-tax if your group prefers it, assign weights only if orders are uneven, and switch on round-up when paying cash. For itemized per-person orders rather than simple weights, the Bill Splitter is the better fit; for a single payer computing a tip alone, use the Tip Calculator.

Frequently asked questions

How is this different from the Bill Splitter?
The Bill Splitter divides an itemized bill — each person pays for their own items plus a share of tax and tip. The Tip Splitter works from the table total: you set the tip rate, optionally assign per-person weights when orders are uneven, and get a weighted split of the whole bill with a cash round-up option.
Should the tip be on the subtotal or the taxed total?
The calculator defaults to tipping on the pre-tax subtotal — you reward service on the food, not the government’s cut — with a toggle to tip on the taxed amount for groups that prefer to work from the printed receipt total. Pick one before the math starts; the difference is small but real (on a $184.50 bill with 8.75% tax, about $2.91 of tip at 18%).
How do the weights work?
Each person’s weight becomes a fraction: weight divided by the sum of all weights. That fraction is applied to the subtotal, the tax, the tip, and the total alike, so every component of the bill is split in the same proportion and the columns still sum back to the table totals. Leave the weights empty and everyone gets an equal share.
Where does the round-up money go?
Round-up mode raises each person’s share to the next whole dollar and reports the overage — the gap between the rounded total and the exact total. On a $233.85 table paying $39/$39/$78/$78, the overage is $0.15. It’s tracked explicitly so it can be added to the tip rather than silently vanishing.
Do the per-person amounts always sum to the bill?
The exact shares do, by construction — the fractions sum to 1, so the component columns sum to the table’s subtotal, tax, tip, and total. Rounded cash shares can exceed the exact total by precisely the reported overage, never an unexplained amount.