Loading blog post
Loading blog post
We use privacy-friendly analytics (Plausible) for aggregate site traffic. Privacy Policy
Moving money between your own accounts isn’t spending. How to label transfers so net worth and cash flow stay honest.
Vault & Compass

Pay yourself from checking to savings and a naive spreadsheet screams that you “spent” $2,000. You didn’t. You relocated cash.
Expense: money left your household economic unit for a good or service (or tax, or gift to someone else).
Transfer: money moved between accounts you still own. Checking ↔ savings, brokerage funding, credit card payment from checking.
Card payments are the classic trap: if you counted the purchase and the payment as expenses, you doubled reality.
The test that resolves most edge cases is whether your total net worth changed. Buying groceries reduces it. Moving $500 to savings doesn’t. A mortgage payment splits: the interest and escrow portions are expenses, the principal portion is a transfer into home equity. Loan payments generally work that way, and treating the whole payment as spending overstates your costs by whatever you’re actually paying down.
Two cases people get wrong in the other direction: a cash withdrawal is a transfer into your wallet, not a purchase, and it becomes an expense when you spend it. And money moved to another person’s account is an expense or a gift, not a transfer, because you no longer own it.
Use a transfer category or a dedicated transfer account pair. In double-entry style sheets, transfers balance; expenses don’t. In simpler sheets, a “Transfer” type that’s excluded from spending reports is enough.
Whichever you pick, the exclusion has to happen in one place. If three different summary formulas each filter out transfers with their own criteria, one of them will eventually be wrong and you won’t know which. Filter once, feed the summaries from the filtered set.
Bank feeds label both sides of an internal move independently, so a single $2,000 transfer arrives as two rows. Both need the transfer type or your outflow total counts it and your inflow total counts it again. The habits in why your categories keep drifting apply here too: the label is only useful if it means the same thing every month.
Transfers don’t change net worth (ignoring fees). Expenses and market moves do. If your dashboard mixes them, you’ll “cut spending” by stopping savings transfers, which is the worst possible lesson.
That failure has a distinctive shape. Spending looks like it fell, net worth stops climbing, and nothing in the report explains the contradiction. Any month where those two disagree is worth checking for a mislabeled transfer before you draw conclusions from it.
Filter last 90 days for same-day opposite amounts across your accounts. Those are usually transfers mislabeled as expenses. Fix the type, don’t delete history.
Same-day matching catches most of them. Widen to a three-day window for the rest, since ACH transfers between institutions often leave one account before they arrive at the other. Sort by absolute amount and the pairs line up next to each other.
When bank sync is clean, this gets easier, but sync alone doesn’t know intent. Whether the rows land on their own each day, as they do on Premium, or when you press sync, as they do on Free, you still teach the sheet what a transfer is.
More in Budgeting