Notion can work as an Airbnb cost split calculator, but it is best used as the record behind the math. Build an Expenses database, connect it to People, and add a Shares table when different guests use different charges. That gives your group one place to record receipts, identify who paid upfront, and calculate each person's agreed share.
Notion records amounts. It does not collect or send reimbursements. You'll still settle through the method your group chooses.
For a small, one-off trip with only a few entries, a spreadsheet may take less setup. To be honest, Notion earns its keep when guest lists change, receipts pile up, or several people need to review the same record.
Choose the simplest structure
Notion works well when a trip has several charges, changing attendance, or more than one person paying upfront. It also gives you a useful home for receipts and the rule your group agreed to use.
| Trip pattern | Suggested setup | Why it works |
|---|---|---|
| Mostly equal shared costs | Expenses and People, plus one Shares row per included person |
Keeps the calculation visible |
| Different arrival or departure dates | Add Shares and use person-nights |
Lodging reflects actual use |
| Meals or activities used by only some guests | Add Included people and create shares only for users |
Prevents non-users from carrying the charge |
| A few charges and no need for linked records | Use a spreadsheet | It takes less setup |
The table can stay small. You don't need a payment app just because the trip has a group.
Thing is, a relation tells Notion who is connected to an expense. It does not decide how much each person owes. You must enter the share amount or define a clear calculation rule.
Database fields for an Airbnb cost split template
Use four small databases if you want balances that reconcile cleanly. Settlements is optional until someone pays someone else, but keeping it separate prevents a reimbursement from changing the original expense.
| Database | Properties to add | Purpose |
|---|---|---|
Expenses |
Expense title, Amount number, Category select, Paid by relation, Included people relation, Share count number, Equal share formula, Split rule select, Date, Receipt file, Status, Notes |
Records the original charge |
People |
Person title, relations to expenses, shares, settlements sent, and settlements received, plus rollups for Total advanced, Total owed, Total sent, and Total received |
Shows each person's position |
Shares |
Share title, Expense relation, Person relation, Share amount number, Basis select, Confirmed checkbox |
Assigns a charge to a specific person |
Settlements |
Settlement title, From relation, To relation, Amount, Date, Status, Note |
Records money that one person sends to another |
Useful expense categories include lodging, cleaning, service fee, taxes, groceries, rental car, fuel, activities, and other. Keep categories specific enough to explain the total later.
Set Included people as a relation to the People database, rather than using only a multi-select tag. A multi-select is fine for labels, but a relation gives you records that rollups can summarize. Notion describes this relationship between databases in its relations and rollups documentation.
Create two separate relations from Settlements to People: one for From and one for To. In the People database, roll up each relation separately.
A useful balance formula is:
Final position = Total advanced - Total owed + Total sent - Total received
A positive result means the group still owes that person. A negative result means that person still owes the group.
Build the Notion template
-
Create a page for the trip and add the
Expenses,People,Shares, andSettlementsdatabases. Keep them on the same page or place them in clearly named subpages. -
Add every traveler to
Peoplebefore entering expenses. Use consistent names, especially if two people share a first name. -
Add the relations.
Paid byshould normally point to one person.Included peoplecan point to several. EachSharerow should point to one expense and one person. -
Add the rollups in
People.Total advancedshould sumAmountfrom expenses paid by that person.Total owedshould sumShare amountfrom that person's share rows. Configure the settlement rollups in the same way. -
Add an optional equal-split check to
Expenses. With the property names shown above, this formula works whenShare countis greater than zero:if(prop("Share count") > 0, prop("Amount") / prop("Share count"), 0). This calculates one equal share for the expense, but it does not create the individualSharesrows automatically. -
Create a few views. An
All expensesview is useful for the organizer. ANeeds receiptview can show rows without an attachment. APending settlementsview can keep unpaid reimbursements visible. -
Test the structure with the sample below. Once the totals agree, duplicate the page and remove the sample rows before sharing the copy.
This is the slightly fussy part: if four people share one charge, you create four Shares rows, and if the amount changes later, you update those rows too, which feels repetitive but leaves an audit trail anyone can inspect.
Test the calculator with sample numbers
Use these rows to check both equal and usage-based splitting.
| Expense | Amount | Paid by | Included people | Split rule | Share amount |
|---|---|---|---|---|---|
| Airbnb lodging | $1,200 | Alice | Alice, Bob, Charlie, Dave | Equal | $300 each |
| Cleaning fee | $150 | Bob | Alice, Bob, Charlie, Dave | Equal | $37.50 each |
| Groceries, night 1 | $80 | Charlie | Alice, Bob | Usage-based | $40 each |
| Total | $1,430 |
Alice advanced $1,200, Bob advanced $150, and Charlie advanced $80. Dave advanced nothing.
The owed amounts are Alice $377.50, Bob $377.50, Charlie $337.50, and Dave $337.50. Before settlements, the positions are Alice plus $822.50, Bob minus $227.50, Charlie minus $257.50, and Dave minus $337.50.
Check the math before anyone sends money. The Expenses total and the Shares total should match.
Choose a fair split rule
Equal isn't always fair, and fair isn't always complicated. Pick one rule per cost category and write it in the Notes field before anyone sends money.
| Rule | Works better when | Watch for |
|---|---|---|
| Equal split | Everyone receives roughly the same benefit | It ignores different stays, rooms, or usage |
| Per-person split | Each traveler should carry one clear share | For a whole-trip charge, this is usually the same math as an equal split |
| Nights-stayed split | Guests arrive or leave on different dates | You need a reliable person-night count |
| Usage-based split | Only some people use a meal, activity, or rental | Record who used the item, not just who joined the trip |
| Room-size or bed-quality split | Rooms or sleeping arrangements differ | Agree on weights before booking |
| Income-based split | The group expressly wants affordability to affect contributions | It is a personal rule, not a measure of usage |
| Reimbursement-after-proof | A charge is disputed or the receipt is missing | Keep it pending until the group confirms it |
For a nights-stayed rule, use lodging cost x person's nights / total person-nights. For a weighted room rule, use shared cost x person's weight / total weights.
A workable hybrid splits lodging by person-nights, then divides fixed fees among the people the group agreed should share them. Record lodging and fixed fees as separate expenses. That makes the rule easier to change.
Write the decision down before the stay begins. Room assignments and income-based adjustments get uncomfortable when people first hear about them after payment is due.
Record deposits, refunds, and reimbursements separately
Create one row for each meaningful charge. A lodging subtotal, cleaning fee, service charge, and grocery run should not disappear inside one opaque total.
Keep a refundable deposit in its own category until it is returned or applied. If the group receives a partial refund, create a linked refund or adjustment row and update the affected shares after the amount is confirmed.
A new traveler should not silently rewrite the original expense. Leave the original record intact, then add an adjustment or a new share row with a note about when that person joined.
A reimbursement is not a new travel expense. If Bob sends Alice $227.50, create a settlement with From: Bob, To: Alice, Amount: $227.50, and Status: Sent. Mark it confirmed only after the recipient confirms it. The tracker records the agreement; it does not verify the transfer.
A receipt photo, date, payer name, and short note do most of the work. Keep card numbers and unrelated personal details out of shared pages.
Share a read-only group view
Keep the working page private while you build and test it. Notion's access options depend on the page and sharing setting, so review its sharing and permissions guidance before inviting the group.
-
Keep edit access with the organizer and any co-organizers who actually need to change records.
-
Create a summary page or linked view with only
Person,Total owed,Total advanced,Final position, and settlement status. Hide receipt files, private notes, and contact details. -
If you share the page to the web, choose
Can viewwhere that option is available. A public link is not automatically read-only, so open it in a private browser window and test it before sending the link. -
Invite specific people with view access when a public link is not appropriate. Give edit access only to people who will enter or correct expenses.
-
Treat filtered views as a presentation tool, not row-level privacy. Someone with access to the underlying database may see more than the filtered summary.
Turns out, a read-only link is only as careful as the fields it exposes. Redact sensitive receipt details and avoid publishing information that the group does not need.
Review and archive the final balance
Make the review short and repeatable.
- [ ] Every expense amount matches its receipt or written confirmation.
- [ ] Each row has the correct payer.
- [ ] Included people match the agreed rule.
- [ ] Share amounts add up to the expense total.
- [ ] Deposits and refunds are not mixed into final costs by accident.
- [ ] Settlement rows show whether money is planned, sent, or confirmed.
- [ ] The final page or export has a date in its title or notes.
At the end of the trip, duplicate the final page or export the tables if you want an archive. Open the exported file and check names, dates, totals, and refund entries before deleting or hiding the working data.
Mistakes that distort group balances
| Common mistake | Better approach |
|---|---|
| Tagging people with a multi-select and expecting individual balances | Use the People and Shares relations |
Rolling up the full expense through Included people |
Roll up Share amount from the Shares database |
| Changing an old expense when a guest joins later | Add an adjustment or new share row |
| Putting two payers into one payer field | Split the charge into two expense rows or add a separate advances table |
| Marking a reimbursement as a new expense | Use the Settlements database |
| Giving the whole group edit access to the master page | Share a view-only summary and keep the master restricted |
Duplicate the page, replace the sample names with your travelers, and enter one real receipt first. Confirm that the expense total, share total, and payer record agree before adding the rest.