Use one shared Google Sheet to track what each person paid, what each person owes, and which expenses are settled. That's the whole setup. A monthly tab or a date filter keeps the review from turning into a mess.

Treat the sheet as a ledger, not a bank account. It won't move money, and it won't decide what feels fair. Who decides that? The group does, in writing, before the first receipt goes in.

Google Sheets fits when several people need the same live file. Excel handles the same layout if one person keeps the file updated offline. The simplest tool is usually the one people will actually update.

Agree on the rules first

Start with rules, not formulas. Turns out, a lot of shared-expense arguments trace back to unclear timing or different assumptions about who counts as a participant.

Write the agreement in the first tab or a shared note:

  • Name a coordinator who checks the file, but let each person add their own expenses.
  • Set a receipt deadline, such as within three days of the purchase.
  • Decide whether equal, percentage, usage-based, income-based, room-based, or custom splits are allowed.
  • Choose a monthly review and settlement date.
  • Decide how the group handles disputed rows, refunds, cancellations, and missed payments.

Keep the rules short. If the group can't explain them in a few sentences, no spreadsheet will fix that.

Pick a fair split method

Match the method to the expense. A group dinner is probably equal. A vacation rental might depend on nights stayed or room size.

Split method Useful for What to enter
Equal Shared meals, gifts, club dues, or common supplies Enter 1 for each participant and 0 for everyone else
Percentage or usage-based Different portions of a meal, gas use, or trip costs Enter shares such as 0.6, 0.2, and 0.2
Income-based Recurring group costs when everyone explicitly agrees Enter the agreed percentages; do not infer anyone's income
Room or nights stayed Housing, vacation rentals, or trips Convert the agreed nights or room shares into inputs
Custom Known dollar amounts that do not fit another method Enter each person's actual dollar responsibility
Reimbursement One person paid for another person's cost Record the payer separately and assign responsibility to the person who should repay

Don't mix up the person who paid with the person who owes. Reimbursements are where that distinction does the most work.

Build the expense tab

Make a tab called Expenses, one row per expense. Each row tells one story, even when the story is a $6 coffee.

Use four people as the example. Swap in your group's names, then add matching columns if you need them.

Column What to enter Example
A: Date Date of the purchase 2026-01-15
B: Description Clear description of the expense Dinner at Taco Truck
C: Category Meals, travel, gifts, dues, or another label Meals
D: Paid by Person who advanced the money Alex
E: Amount Full expense amount $80.00
F: Split method Equal, Percentage, Custom, or Reimbursement Equal
G:J: Responsibility inputs Alex, Jordan, Taylor, and Riley's inputs 1, 1, 1, 0
K:N: Calculated owed Formula-based share for each person $26.67
O: Status Open, Question, or Settled Open
P: Settled on Date the balance was paid Blank until paid
Q: Receipt or note Receipt link, explanation, or payment note Drive link
R: Check Confirms the assigned shares match the expense OK

Format columns E and K:N as currency. Add a dropdown to column F if you can. Without one, you'll end up with equal, Equal split, and EQ sitting in the same column.

Put this formula in K2, then copy it across through N and down the sheet:

=IF($F2="",0,ROUND(IF($F2="Equal",IFERROR($E2*G2/SUM($G2:$J2),0),IF($F2="Custom",G2,$E2*G2)),2))

The reference to G2 shifts to H2, I2, and J2 as you copy the formula across. For an equal split, the formula divides the amount by the number of 1 entries. A percentage split takes decimals or percentage-formatted values. A custom split takes dollar amounts typed straight in.

Use this check formula in R2:

=IF(ABS(ROUND($E2-SUM($K2:$N2),2))<=0.01,"OK","Check split")

Rounding can leave a one-cent gap. Decide who gets the extra penny, then keep that rule consistent.

Here are three sample rows:

Expense Paid by Method Responsibility inputs Result
$80 group dinner Alex Equal Alex 1, Jordan 1, Taylor 1, Riley 0 Each person owes about $26.67
$40 pizza Alex Percentage Alex .6, Jordan .2, Taylor .2, Riley 0 Alex owes $24 of the cost
$24 ticket bought for Alex Jordan Reimbursement Alex 1, Jordan 0, Taylor 0, Riley 0 Alex owes Jordan $24

For the reimbursement row, Jordan stays in Paid by while Alex gets the responsibility input of 1. That's what lets the balance summary credit Jordan and charge Alex correctly.

Add a balance summary and a budget view

Create a Summary tab with one row per person. It should show both activity and the net amount to settle.

Column Meaning Example formula
A: Person Person's name Alex
B: Paid Amount that person advanced =SUMIF(Expenses!$D:$D,A2,Expenses!$E:$E)
C: Owed Total assigned share Alex: =SUM(Expenses!$K:$K)
D: Net balance Paid minus owed =B2-C2
E: Settlement note Payment date or explanation Paid by cash

Use the matching calculated column for each person. Jordan is column L, Taylor column M, Riley column N.

A positive net balance means the group owes that person. A negative one means the person owes the group. Label it plainly. The word "balance" on its own confuses people.

Add a separate budget view if the group has planned monthly limits:

Category Budgeted Actual Difference
Meals $120 =SUMIF(Expenses!$C:$C,A2,Expenses!$E:$E) =B2-C2

The budgeted number is for planning. It never changes what anyone is owed.

For a small group, keep one current Expenses tab, archive it at month-end, and start a clean tab for the next month. One yearlong tab with date filters works too. Pick one approach and make the current tab obvious.

Share the file without breaking formulas

Set access on purpose. A sharing link shouldn't reach any wider than the group does.

  1. Keep link sharing restricted, then add the people who need access.
  2. Give editor access to people entering rows or correcting data.
  3. Use commenter or viewer access for people who only need to review balances.
  4. Protect the calculated columns and summary formulas, while leaving input columns open.
  5. Keep a named version at each month-end so an accidental change can be reversed.

Thing is, it's tempting to paste one open link into the group chat and move on, which works right up until someone's friend opens the file and pokes at a formula. A Google Sheets permissions walkthrough helps if the access roles are unfamiliar, and a Google Sheets version history walkthrough covers restoring an earlier version.

Protection cuts down on accidental edits. It isn't a substitute for careful sharing. Keep bank account numbers, card numbers, and unrelated private notes out of the file.

Review receipts and close each month

Keep a simple rhythm. Steady updates beat a dramatic cleanup on the last day.

  • Add each expense soon after it happens, with a receipt photo or shareable receipt link when available.
  • Review the sheet weekly for duplicates, missing participants, incorrect amounts, and questionable splits.
  • At month-end, confirm the category totals, resolve rows marked Question, and agree on each person's net balance.
  • Archive the closed tab before starting the next month.

A receipt folder in Google Drive or Dropbox works well. Check that everyone can open the links, and skip documents that reveal unnecessary personal information.

If someone disputes a charge, leave the original row alone. Add a note, set the status to Question, and record the agreed correction. Silent rewrites of the history are how groups stop trusting the sheet.

Settle balances and keep a record

The summary shows who should pay whom. Not every expense needs its own transfer.

Say Alex ends the month with a positive $40 balance and Jordan with a negative $25. One agreed transfer can cut the number of payments down. Write the decision into the sheet so nobody has to reconstruct it later.

A clear request might say: "The January sheet shows $25 due to Alex for the pizza. Please send it by Friday and reply here when it's done."

Cash, checks, and payment apps all work. Before sending money through an app, confirm the recipient's name and the amount on the final screen. Check any fee the service displays. Then log the date, amount, method, and a short confirmation note in the sheet.

Mark a row or summary balance as settled only after the people involved agree the payment arrived. Keep monthly exports and receipt folders if the group wants a longer record. Club, work-related, business, and fundraiser reimbursements call for supporting documents kept, plus tax advice for the specific situation.

Fix the problems that cause most disputes

Problem Likely cause Fix
Everyone's share is zero Split method or participant inputs are blank Choose a method and enter the required inputs
The split does not match the total Percentages do not add to 100%, or custom amounts are incomplete Check the R column before settling
The payer still appears to owe money The payer's actual responsibility was not entered Separate Paid by from the responsibility inputs
A total is off by one cent Rounded shares do not divide evenly Assign the extra penny using the group's agreed rule
A formula disappeared Someone typed over a calculated cell Restore the prior version and protect formula ranges
An expense appears twice Two people entered the same receipt Compare dates, descriptions, amounts, and receipt links
A former participant still has access Sharing permissions were never updated Remove access when the group changes

A conditional-formatting rule makes large expenses easy to spot. Select the expense range, choose a custom formula, and use =AND($E2>100) to highlight anything over $100. Move the threshold to fit your group. $100 isn't a universal line.

Test the sheet before anyone relies on it

Enter a sample $200 grocery purchase paid by Jordan and split equally among four people. Each calculated share should come to $50. Jordan's net balance should show a $150 credit before any settlement.

Add the $24 reimbursement example next, then check the R column and the Summary tab. If the totals don't make sense, fix the formulas before any real expense goes in.

Delete the sample rows, or park them on a clearly labeled Test tab. To be honest, this test is the easiest step to skip, and it's the cheapest moment to catch a broken formula. Then archive the clean monthly tab and enter your first real receipt.