Use Google Sheets as the shared receipt ledger, but choose the split rule before anyone asks for money. A solid wedding weekend tracker separates what was spent, what each person owes, and what has already been settled.
A venue deposit may be a family contribution. A group meal may be split among attendees. A rental car may belong only to its riders.
Turns out, the formulas are the easy part. The hard part is deciding who belongs in each split and recording that decision clearly.
Decide how each expense will be split
Write the rule in plain language before entering a receipt. Examples include "equal among confirmed rehearsal dinner attendees," "lodging by nights stayed," and "travel paid by the people in that car."
Then represent the rule in the sheet. Don't leave the only explanation in a Notes cell.
| Expense | Possible allocation | How to record it |
|---|---|---|
| Vendor deposit | Agreed contributors or host-funded | Use Custom or Host-funded; mark reimbursement only if repayment is expected |
| Rehearsal dinner | Equal among attendees | Use Equal and enter the eligible attendee count |
| Lodging | Nights stayed or rooms used | Use Custom and enter one share for each person |
| Rental car and gas | Actual riders or travelers | Add only affected people to the Shares tab |
| Cancellation fee | People affected by the cancellation | Record the fee separately and document the agreement |
| Vendor refund | Shared credit or payer-only refund | Use a separate refund entry and explain who received it |
No method is automatically right for every wedding. The agreement, attendance, usage, and family contributions all matter. Put the decision in writing before the weekend.
Build the Google Sheets wedding expense template
Create these tabs. They keep the receipt log, guest list, allocation details, payments, and budget from getting mixed together.
| Tab | Job | Suggested columns |
|---|---|---|
| Receipts | Records every expense, refund, and proof link | Receipt ID, Date, Entry type, Description, Category, Amount, Paid by or received by, Allocation, Reimburse?, Eligible people, Receipt link, Review status, Notes |
| Guests | Shows who is attending and included in shared costs | Name, RSVP, Included in shared-cost pool?, Contribution rule, Notes |
| Shares | Assigns each receipt to the people who owe a share | Receipt ID, Person, Share or credit, Notes |
| Settlements | Records money actually sent between people | Date, From, To, Amount, Reference, Notes |
| Budget | Compares planned and actual category totals | Category, Planned, Actual, Remaining, Alert |
| Summary | Shows totals and balances by person | Person, Net paid, Assigned share, Sent, Received, Balance, Status |
Use positive amounts for expenses. Use a negative amount for a shared refund when that refund should reduce the group cost.
Give every receipt a unique ID, such as R-001 or R-002. Small detail. Big help when several people paid similar vendor bills.
The sheet tracks the agreement and the record. It doesn't move money or verify that a payment arrived.
Set up the workbook step by step
- Open a blank Google Sheet and add the six tabs listed above.
- Add the column headers exactly once in row 1. Keep the same spelling in formulas and dropdowns.
- Add dropdowns for
ExpenseandRefund, common categories,Equal,Custom,Host-funded,Not shared, andYesorNofields. - Format Date columns as dates and Amount columns as currency. Freeze the header row with View > Freeze > 1 row.
- Add a filter to the Receipts header. Filter by payer, category, review status, or allocation when checking the log.
- Protect formula cells and the Summary tab with Data > Protect sheets and ranges. This reduces accidental edits; it does not make a public link private.
- Share the file with specific people whenever possible. Give Editors access only to people entering data. Use Viewer or Commenter access for people who only need to review the plan.
- Enter a sample expense before sharing the file. For example, test a $120 meal with four eligible people, then confirm that four Share rows produce $30 each.
Don't default to "Anyone with the link can edit" for a receipt file that contains names, addresses, or private notes.
Handle deposits, refunds, and custom shares
Vendor deposits should have their own rows. Keep the deposit and later balance separate, even when they belong to the same vendor.
One row for the deposit, one for the balance, one for the refund if there is one. It feels repetitive. That's the point; the sheet can reconcile the entries later instead of relying on someone's memory.
For a custom split, add one row to Shares for every person affected. The share amounts should add up to the receipt amount. If a family member voluntarily covers part of a bill, don't enter that contribution as an amount owed unless the group agreed to reimburse it.
A shared refund needs a little care. Enter it as a separate row with a negative Amount, keep the category consistent, and add negative share amounts for the people receiving the credit. If the refund belongs only to the original payer, mark it as not reimbursable instead of spreading it across the group.
Formulas for totals, shares, and balances
Use matching row ranges in formulas. If the sum range ends at row 100, every criteria range should end at row 100 too.
These formulas assume the Receipts columns follow the structure above: Category is column E, Amount is F, payer is G, Reimburse? is I, and Eligible people is J.
Totals and guest counts
On the Summary tab, list a category in A2. Put this formula in B2 to total reimbursable entries for that category:
=SUMIFS(Receipts!$F$2:$F,Receipts!$E$2:$E,$A2,Receipts!$I$2:$I,"Yes")
Useful totals include:
=SUM(Receipts!$F$2:$F)
=SUMIF(Receipts!$I$2:$I,"Yes",Receipts!$F$2:$F)
The first returns net recorded spending, including negative refunds. The second returns the amount marked for reimbursement.
To count confirmed RSVPs:
=COUNTIF(Guests!$B$2:$B,"Yes")
To count people who both confirmed and belong to the shared-cost pool:
=COUNTIFS(Guests!$B$2:$B,"Yes",Guests!$C$2:$C,"Yes")
Don't use one guest count for every expense. Enter the correct Eligible people value on each receipt. A rehearsal dinner, lodging block, and airport transfer rarely have the same group.
Equal and custom shares
Add each person assigned to a receipt on the Shares tab. For an equal allocation, put this formula in Shares!C2:
=IFERROR(SUMIF(Receipts!$A$2:$A,$A2,Receipts!$F$2:$F)/SUMIF(Receipts!$A$2:$A,$A2,Receipts!$J$2:$J),0)
Here, Shares!A2 contains the Receipt ID. Copy the formula down for equal splits. For a custom allocation, replace the formula with the agreed amount or credit.
Add a check column beside a receipt list to confirm that shares equal the receipt amount:
=IF(ROUND(SUMIF(Shares!$A$2:$A,$A2,Shares!$C$2:$C)-SUMIF(Receipts!$A$2:$A,$A2,Receipts!$F$2:$F),2)=0,"OK","Check shares")
A result of Check shares usually means someone is missing, the receipt ID is wrong, or the allocation was entered twice.
For more examples of criteria-based totals, see Ablebits' SUMIFS examples. If you build a formula from an array rather than a normal sheet range, Google Sheets may require Col1, Col2, and similar labels instead of column letters.
Balances by person
On Summary, put each person's name in column A. Use these formulas across row 2:
=SUMIFS(Receipts!$F$2:$F,Receipts!$G$2:$G,$A2,Receipts!$I$2:$I,"Yes")
=SUMIF(Shares!$B$2:$B,$A2,Shares!$C$2:$C)
=SUMIF(Settlements!$B$2:$B,$A2,Settlements!$D$2:$D)
=SUMIF(Settlements!$C$2:$C,$A2,Settlements!$D$2:$D)
Label those columns Net paid, Assigned share, Sent, and Received. In column F, calculate the remaining balance:
=B2-C2+D2-E2
A positive result means the person should receive money. A negative result means the person should pay. In column G, add a plain-language status:
=IF(ROUND(F2,2)=0,"Settled",IF(F2>0,"Should receive","Should pay"))
Enter a settlement only after money has actually moved. A request or reminder belongs in Notes, not in the Settlements tab.
Budget alerts and filtered views
On the Budget tab, put a category in A2. Use:
=SUMIF(Receipts!$E$2:$E,$A2,Receipts!$F$2:$F)
That becomes Actual in C2. Remaining in D2 can be:
=B2-C2
If you want an alert at 80 percent of the planned amount, use:
=IF(C2>B2,"Over budget",IF(C2>=B2*0.8,"Watch","On track"))
The 80 percent point is a setting your group chooses, not a budgeting rule.
A category summary can also use:
=QUERY(Receipts!A1:M,"select E, sum(F) where I = 'Yes' group by E label E 'Category', sum(F) 'Reimbursable total'",1)
To display only rows awaiting review:
=FILTER(Receipts!A2:M,Receipts!L2:L="Needs review")
If the guest list lives in another spreadsheet, pull it into a separate tab with:
=IMPORTRANGE("spreadsheet_url","Guests!A:E")
Google Sheets will ask you to grant access to the other file. Do that only when the people who can open the wedding workbook should also be allowed to access the guest list.
Use a simple review rhythm
| Stage | What to do | What to record |
|---|---|---|
| Before the weekend | Agree on split rules, add known deposits, and enter planned categories | Allocation, contributors, budget, and eligible people |
| During the weekend | Add each receipt soon after payment and attach a proof link | Date, payer, amount, category, and review status |
| After the weekend | Check every Share row, review refunds, and log actual transfers | Share check, settlement date, reference, and final balance |
A photo or scan can live in a shared folder, with its link pasted into Receipt link. Make sure the people reviewing the sheet can access the file without making the receipt folder public.
If a receipt is unclear, mark it Needs review instead of guessing. One person can review the queue daily during the event, or the group can process receipts in one batch afterward.
A neutral reminder keeps the conversation simple: "I logged the $120 meal receipt. Your share is $30 under the equal-attendee rule. Please check the row before I mark the transfer as settled."
Use whatever payment method the group already accepts. The important record is the actual transfer in Settlements, not the app or service used to send it.
Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Receipt amounts were pasted as text | Test the column with =SUM(Receipts!F2:F). If a value is text, use =F2*1 in a helper column, then paste the converted values back as numbers |
| The guest count is used for every cost | Enter Eligible people separately for each receipt |
| A family contribution is treated as a reimbursement | Set Reimburse? to No unless the group agreed that someone should repay it |
| One receipt ID is reused | Give every receipt and refund its own ID |
| Custom shares do not add up | Use the share check formula before sending requests |
| Editors overwrite formulas | Protect formula ranges and keep manual inputs on Receipts, Guests, Shares, and Settlements |
| A public edit link is shared | Invite specific people and use Viewer or Commenter access for reviewers |
| The Summary does not match the receipt log | Check that Amount, payer, Reimburse?, and every criteria range use the intended columns |
Thing is, a spreadsheet can show the disagreement; it can't settle one. If two people remember the split differently, write the agreed decision in Notes and update the Shares rows together.
When this template is enough
This setup works well for a one-off wedding weekend, family planning group, wedding party, or small committee that can enter receipts and agree on allocation rules.
It is a good fit when the main need is a transparent record with flexible splits. It is less suitable when the group needs automatic receipt scanning, constant payment collection, or reminders that no one wants to manage manually.
A simpler shared note or printable form may be enough when one person pays almost everything and only one or two reimbursements are expected. A dedicated expense tool may save time when receipts arrive constantly and the group wants more automation. The choice depends less on the guest count than on how often the data changes and how complicated the split becomes.
FAQ
Should every wedding weekend expense be split per guest?
No. Use the rule that matches the expense. Meals may follow attendance, lodging may follow nights stayed, and travel may belong only to the people using it.
Can I use RSVP totals to calculate meal shares?
Only when the RSVP group matches the people included in that meal. Otherwise, enter the correct count in Eligible people and list the individuals on Shares.
How do I handle an uneven family contribution?
Record the payment in Receipts, note the agreement, and add Shares only for amounts the group agreed to reimburse. A contribution that is not repayable should not create an IOU.
Can the guest list live in another Google Sheet?
Yes. Use IMPORTRANGE to bring the relevant range into the workbook, grant access when prompted, and avoid exposing guest information to people who do not need it.
What if a receipt amount will not sum?
It may be stored as text. Test the column with SUM, then convert the value with a helper formula such as =F2*1. Check for currency symbols or spaces if the conversion still fails.
Should everyone have edit access?
No. Give editing access to the people entering or reviewing data, and use Viewer or Commenter access for everyone else. Protect formula cells before sharing the file.
Create the six tabs, add one sample expense, and run the share check before entering real wedding receipts. When the test balance works, replace the sample row with the first deposit and agree on the allocation rule in writing.