A joint account carries the rent, the grocery run, two phone bills, an insurance renewal, and a set of purchases only one of you made. At year end you want a single number out of it: who owes whom, and how much. Every fact you need is in the statements. The trouble is that the facts are spread across twelve monthly statement documents, in a layout built for reading one page at a time rather than for adding up a year.
Most couples try to do this from memory or by scrolling the banking app, and the conversation stalls in the same place every time. One of you remembers paying for the flights. The other remembers three months of groceries. Neither of you can point at a row. Once every transaction of the year sits in one table, each of those claims resolves to a row with a date and an amount on it, and the conversation moves from recollection to arithmetic.
Start from one transaction table
The split argument is a data problem before it is a fairness problem. Once all twelve months are in one spreadsheet, with a date, a description, an amount and a running balance on every row, the fairness question becomes small: agree on one rule and apply it down a column.
Getting there from the banking app is usually the slow route. Most banks limit how far back the transaction list goes, and the CSV export, where one exists, often drops the running balance or splits the description across fields. Working from the statement documents avoids both problems, because a statement is the complete, dated record the bank stands behind.
- 1
Download every month of the year
Pull the twelve statement documents for the joint account, including any month you think was quiet. A missing month usually breaks the running balance at the seam, and you will spend longer finding that than downloading the file. - 2
Convert the statements into one workbook
Upload the statement documents and export the result as a spreadsheet. The engine reads each bank's layout automatically, so you do not build a template for your bank before you start. - 3
Close the year independently
Take the opening balance printed on the January statement, add every credit in the converted table, subtract every debit, and compare the result against the closing balance printed on the December statement. That is a figure you computed, so agreement means something; comparing the table's own last balance against December tells you only that the table copied what it read. - 4
Read the period dates end to end
List the period printed on each of the twelve statements and confirm they form an unbroken calendar, with no gap between one period's end and the next period's start. Balances alone cannot do this for you: a quiet month that closes on the balance it opened with drops out of the arithmetic without leaving a mark. - 5
Add a tag column
Insert one column called "whose" and fill it with Shared, or one of your two names, for every row. This is the bulk of the manual work. - 6
Total by tag
Use a sum by tag, one subtotal per value in the column, so you have three numbers: the shared total and each person's personal total.
Step three settles the two ends of the year and nothing in between. It is a check on one total, so a pair of mistakes that cancel slips through it: a supermarket row lost somewhere in March and the same value duplicated in July leave the December figure exactly where it belongs, while the shared subtotal you are about to split is wrong by both of them.
The row-level version is what closes that. Recalculating every row's balance from the opening figure and comparing it against the balance the bank printed puts the wrong digit on a named row rather than in a total, and it catches the cancelling pair as well: the lost row throws the recalculated balance out from March onward, so every row between the loss and the duplicate is flagged even though the year still closes. That is the check worth having before you tag anything, because a split is built out of individual amounts rather than out of the year's net.
Two things it will not do for you here. The arithmetic never looks at a date, a description or a merchant, so a row that reconciles perfectly can still be the wrong month or the wrong shop, and those are exactly the fields you tag on. And a row for 0.00 satisfies the equation whatever else is wrong with it. So read the flagged rows against the statement page, and glance at the dates around each month boundary, before the tagging starts.
Convert the year in one pass
Agree the split rule before you look at the rows
Pick the rule first. Deciding how to divide shared costs while staring at a particular row invites the version of the argument where the rule bends around the transaction. The candidates, in rough order of how often households settle on them:
- Equal shares. The shared subtotal is halved. Simple, and the right default when incomes are close.
- Proportional to income. Each person carries the share of the shared subtotal that matches their share of combined income. Use gross or net consistently, and write down which one you chose.
- Category by category. Rent split by room, groceries equally, one person's car costs assigned to them. Workable, but it needs a written list of which categories follow which rule, or you will redo it next year from scratch.
Whichever rule you pick, it applies only to the shared subtotal. Personal rows never get split. A gym membership paid from the joint account is money one person drew from the shared pot, and it lands wholly in their column.
A worked month, so the arithmetic is visible
Take one month from a joint account to see the shape of the calculation. The same structure scales to twelve months without changing.
Shared spending for the month: rent 1,850.00, utilities 214.30, groceries 612.60, internet 74.00. That is a shared subtotal of 2,750.90.
Personal spending: Ana had a gym membership at 42.00 and a flight at 276.40, so 318.40. Ben had a bike repair at 96.15. Total spending for the month is 2,750.90 plus 318.40 plus 96.15, which is 3,165.45.
Both paid 1,600.00 into the account, so 3,200.00 went in against 3,165.45 out, and the balance grew by 34.55.
Under equal shares, each carries 1,375.45 of the shared subtotal. Ana's fair share is 1,375.45 plus her own 318.40, which is 1,693.85. Ben's is 1,375.45 plus 96.15, which is 1,471.60. Those two add back to 3,165.45, so nothing that left the account has been left unassigned.
Ana paid in 1,600.00 against a fair share of 1,693.85, so she is short by 93.85. Ben paid in 1,600.00 against a fair share of 1,471.60, so he is ahead by 128.40. The two differences do not match, and that is correct: they differ by 34.55, the amount the account balance grew. Settle it by having Ana transfer 93.85 to Ben and Ben withdraw 34.55 from the joint account. Ben receives 128.40 in total, and the account returns to where it started the month.
If you use the income-proportional rule instead, and Ana earns 60% of combined income, she carries 1,650.54 of the shared subtotal and Ben carries 1,100.36. Those still sum to 2,750.90. Ana's fair share becomes 1,968.94 and Ben's becomes 1,196.51, which again total 3,165.45. Ana is now short by 368.94 and Ben is ahead by 403.49, and the gap between those two is still 34.55.
The two rules produce different settlements from identical data. Agreeing the rule in advance keeps any remaining disagreement on the rule, where it can be argued on its merits, rather than on whether a particular row was captured, where the table has already answered.
Tagging a year without doing it row by row
A year on an active joint account can run to several hundred rows, and tagging each one by hand is the part people abandon. Sort by description before you start. Statement descriptors repeat, so the rent line appears twelve times in a block, the same supermarket appears forty times, and each block gets one tag applied to the whole selection.
What is left after the repeating merchants are tagged is a short tail of one-off transactions, and those are the ones worth actually discussing. Handle them in one sitting rather than over a week of messages, and record the decision in a fourth column so next year's version starts from a rule set rather than a blank sheet.
Two cases need care. A single payment that covered both a shared and a personal purchase gets two allocation columns, a shared portion and a personal portion, with the rule that they sum to the transaction amount, so the original row stays untouched. And transfers between your own accounts are not spending at all: tag them as transfers and exclude them from every subtotal, or you will double count money that simply moved. The same discipline applies whenever you are separating business and personal transactions on a mixed account.
Where the statement cannot answer the question
A joint account records money that moved through that account. It does not see cash withdrawn and then spent, and a 200.00 ATM withdrawal is a single row with no purpose attached. It does not see a shared cost one of you paid on a personal card. And it cannot tell you what a payment was for when the descriptor is a payment processor rather than a merchant name.
For a household split, these gaps are usually small enough to handle by agreement: treat cash withdrawals as personal to whoever made them unless one of you can show otherwise, and add personal-card spending on shared items as a manual line. The discipline is to record the adjustment as an explicit row rather than adjusting the final number, so that the arithmetic still adds up when either of you checks it in six months.
If the same table is going on to a tax preparer or an accountant afterwards, keep the tagged version and the untouched converted version as separate files. The untouched version is the one whose balances still tie to the statements, which is the whole point of the format a year-end handover uses. The tagged version is your working copy. When you build next year's split, start from the untouched export again and reapply the rules, following the same approach as converting a full year of statements at once.
Frequently asked questions
How do we split expenses from a joint account fairly?
Tag every transaction as shared or personal to one of you, then apply a single split rule to the shared total only. Personal rows stay with whoever made them. The settlement figure is each person's fair share minus what they actually paid into the account, and the two differences must reconcile against the change in the account balance.
Can I get a year of joint account transactions into a spreadsheet?
Yes. Convert the twelve monthly statement documents into a single transaction table with date, description, amount and running balance columns. Working from the statements rather than the banking app matters because the app usually caps how far back you can scroll and rarely exports a full year in one go.
How do we split shared costs when we earn different amounts?
Apply a percentage to the shared subtotal instead of halving it. If one partner earns 60% of combined income, they carry 60% of the shared subtotal and the other carries 40%. Personal rows are unaffected by the ratio: they belong entirely to the person who spent the money.
What if one of us used the joint account for something personal?
Tag that row as personal rather than deleting it. Deleting rows breaks the running balance chain, and a table whose closing balance no longer matches the statement cannot be checked. A personal row still counts as money that person drew from the joint pot, so it belongs in their column.
Do we need receipts to split joint account expenses?
No, not for the split itself. The statement line gives you the date, the amount and the merchant, which is enough to assign a row to shared or personal. Receipts only become necessary when a single payment covered both a shared and a personal purchase and you want to split that one transaction.
Should we settle up monthly or once at year end?
Once a year works if both of you pay a fixed amount into the account each month, because the settlement corrects any drift in one transfer. Settle monthly if contributions vary, since a year of variable transfers makes the final number harder for either of you to sanity check.