Three things belong in a roommate expense tracker: the bill itself, each person's share, and whatever got paid back. Google Sheets handles all three if you give each one its own place. Set up a Transactions tab, a Settlements tab, and a Balances tab, then invite roommates with only the access they need.
Rent, utilities, groceries, deposits, household purchases. It all fits. The sheet tracks who paid and who still owes. It won't move money for you, and it won't send a payment request either.
So who still owes whom? Turns out that's the hard part, and it isn't the table. It's getting everyone to agree on who counts in each expense.
Use three tabs instead of one crowded log
Keep repayments out of your expense list. Mix them together and every balance check turns into an archaeology project.
| Tab | Purpose | Main fields |
|---|---|---|
| Transactions | Records each shared bill or purchase | Date, description, amount, payer, split type, shares, notes |
| Settlements | Records money paid back between roommates | Date, from, to, amount, related expense, status |
| Balances | Shows each person's net position | Paid, share owed, settlements, remaining balance |
One row per expense, always. Say Alex pays the electric bill and Jordan pays Alex back two weeks later. Those are two records, in two tabs.
Sometimes two roommates each paid part of one bill. That's fine: use separate rows, or spell out the division in Notes. Keep the math where someone can see it.
Build the Transactions tab
Put these headers across row 1 and swap in your own roommates' names.
| Column | What to record | Example |
|---|---|---|
| Date | When the expense happened | 2026-01-15 |
| Description | What the money bought | February rent |
| Category | A simple grouping for review | Rent, utilities, groceries |
| Amount | The full bill, not one person's share | $1,200 |
| Paid by | The roommate who paid upfront | Alex |
| Split type | The agreed method | Equal |
| Alex share | Alex's final share of this expense | $400 |
| Jordan share | Jordan's final share of this expense | $400 |
| Sam share | Sam's final share of this expense | $400 |
| Status | Whether the expense is still open | Open |
| Notes | Exceptions, receipt details, or an explanation | Split equally |
Add one share column per person. Dollar amounts beat yes-or-no flags here, because the number shows the actual agreement, including uneven or custom splits.
Rent is the easy row. Groceries are where the little arguments start: who bought them, who was away, whether paper towels count. Write the rule down before the next receipt lands, not after. It feels fussy for about five minutes. Then it quietly saves the same conversation every month.
Choose the split method before entering numbers
Agree on the split before anyone opens their wallet. The method decides everything downstream. The formula just does what it's told.
| Split method | How it works | Useful for |
|---|---|---|
| Equal | Divide the cost evenly among participating roommates | Equal rent, internet, shared supplies |
| Per-person | Divide the cost by the people who used or joined in | A grocery trip or shared meal |
| Usage-based | Assign shares using an agreed usage measure | Utilities when usage can be estimated |
| Percentage or custom | Enter a fixed percentage or dollar amount for each person | Uneven rooms, income-based arrangements, or special agreements |
| Reimbursement | Label an amount that needs to be paid back, while tracking the repayment separately | One roommate fronts a cost for another |
Take a $1,200 bill split equally among Alex, Jordan, and Sam. Each share column gets $400. Alex, who paid the full amount, still gets credit for the whole $1,200.
You'll run into templates that use a 100 percent and 0 percent convention, where the payer shows 100 on every row, and that convention really describes who fronted the money rather than who the money was ultimately for, so if your group uses it, explain it in Notes and keep the final shares visible somewhere. A roommate can pay 100 percent upfront and still be owed only their own share back. Don't let the label Reimbursement stand in for actual share amounts.
Add a Balances tab with simple formulas
Pick a sign convention and stick to it. In this setup, positive means the group owes that person.
List each roommate once in Balances!A2:A6. On the Transactions tab, Alex's share column is G, Jordan's is H, and Sam's is I.
| Balance column | Formula or entry | Meaning |
|---|---|---|
| Paid | =SUMIF(Transactions!$E$2:$E$100,A2,Transactions!$D$2:$D$100) |
Total paid by the person in A2 |
| Share owed | =SUM(Transactions!$G$2:$G$100) |
Change G to that person's share column |
| Net before settlements | =B2-C2 |
Positive means the group owes them |
| Incoming settlements | =SUMIFS(Settlements!$D$2:$D$100,Settlements!$C$2:$C$100,A2,Settlements!$F$2:$F$100,"Paid") |
Paid money sent to the person |
| Outgoing settlements | =SUMIFS(Settlements!$D$2:$D$100,Settlements!$B$2:$B$100,A2,Settlements!$F$2:$F$100,"Paid") |
Paid money sent by the person |
| Remaining balance | =D2-E2+F2 |
The amount still owed or due |
One trap worth naming. The Share owed formula has to point at a different share column for each roommate. Copy Alex's row down without fixing that, and every balance in the sheet becomes Alex's balance.
Here's the math in action. Alex pays $120 for a bill, and all three owe $40 each. Alex shows $80 before settlements, while Jordan and Sam each show -$40. Jordan sends Alex $40, you record it on Settlements, and both remaining balances move toward zero.
The table gives you net positions. It won't pick the payment route for you.
Record repayments on a Settlements tab
Give the tab these columns:
Date | From | To | Amount | Related expense | Status
Enter a settlement only after money has actually been sent. If you want to log it early, mark it Pending until then. The formulas above count Paid rows only.
Say Alex pays Jordan $40. From gets Alex, To gets Jordan, Amount gets $40, and a short reference like "January utilities" ties it back to the original bill.
Don't also log that $40 as a new grocery, rent, or utility expense. You'd be counting the same cost twice.
Thing is, an expense list can be spotless and the balance can still come out wrong, because a repayment slipped into it somewhere along the way. Leave the original bill untouched.
Set up and share the Google Sheet
- Open Google Sheets and start a blank spreadsheet. Name it
Roommate Expenses. - Add the Transactions, Settlements, and Balances tabs.
- Enter the headers and roommate names, with a share column for each person.
- Format Date as a date, and Amount plus the share columns as currency. Dropdowns for names, split types, and statuses help prevent spelling drift.
- Select Share and invite each roommate by email address. Editor goes to whoever will enter expenses; Commenter or Viewer fits people who only need to review the record. Google's Sheets product page describes its sharing and collaboration controls.
- Leave General access on Restricted unless the group has a clear reason to use a link. Anyone holding an editable link may be able to change the file.
- Add one sample expense and one sample settlement, have another roommate check the totals, then remove the test rows or label them clearly.
Editors see changes as they happen. Even so, two people typing in the same cell at once gets confusing fast, so stick to one row per expense and put questions in Notes or the group chat.
Protect the parts that should not change
Give edit access only to people who need it. A roommate who just checks totals doesn't need to touch formulas, and probably shouldn't be able to.
If accidental edits worry you, set protected ranges on header cells, formulas, or the whole Balances tab. Keep at least one trusted person able to maintain those ranges.
The file should hold what's needed to verify household costs, and nothing else. Keep passwords, full account numbers, and other sensitive records out of it.
Agree on an update and repayment routine
Pick one deadline everyone can actually keep. Update expenses by 8pm Sundays is a perfectly good reminder. During a busy move or trip, a group might switch to a 48-hour rule instead: whatever you spend gets entered within two days.
Write the rules down somewhere fixed, like a small Rules tab or a pinned group message. Cover which costs count as shared, how personal items are handled, how utilities are split, what happens when someone moves in or out, and where receipts are stored.
Picture the alternative. Someone pays the electric bill on Friday, another roommate buys groceries on Saturday, and a week later somebody repays part of the rent. If all three land in one undifferentiated list, the totals look busier than they are, and checking them later is misery. Separate tabs keep the record readable.
Mistakes that throw off roommate balances
Most balance errors trace back to a handful of habits:
- Recording a repayment as a second expense.
- Leaving one person's share blank with no explanation.
- Using the 100 percent and 0 percent convention without stating what it means.
- Handing everyone an editable link when email invitations would be safer.
- Fixing a formula instead of correcting the source transaction.
- Editing a cell while another roommate is working in it.
- Marking a bill settled before the money has actually been paid.
- Skipping the receipt, note, or explanation for an unusual split.
Look the sheet over before anyone sends money. Small corrections are cheap now and annoying later.
Know when to use something else
To be honest, a spreadsheet covers two to five roommates with simple rules and occasional purchases without breaking a sweat. It gets less comfortable when manual entry starts sliding, the group grows past five people, or the split rules turn into something you can't explain in one sentence.
That's your cue to look at another tool, mainly for receipt scanning, recurring reminders, or payment requests. Keep the jobs separate when you compare: tracking, requesting, paying, exporting, and recordkeeping aren't the same function. A payment tool can help move the money while the Sheet stays the durable expense record.
How do I share a Google Sheet with roommates?
Invite people from Share and give Editor access only to those entering data. Keep link access Restricted, and use Viewer or Commenter when edits aren't needed.
What is the cleanest way to record reimbursements?
The bill stays on Transactions. The actual payment goes on Settlements with the sender, recipient, amount, and status. Never enter the repayment as a second expense.
What should a positive balance mean?
In this setup, a positive balance means the group owes that person. A negative balance means that person owes the group.
Does this require a dedicated split-bill app?
No. A blank Sheet can handle the records and the calculations, but it won't move money or send payment requests by itself.
Start small. Create the three tabs, enter last month's rent and one utility bill, and check the signs on every balance before inviting the household. Then share the written rules and set the Sunday reminder.