PeakFinance · Guide

Zero-based budgeting for a household, without a spreadsheet

Zero-based budgeting for a household: every dollar gets a row before the month starts, savings first, and the rows fill themselves from the ledger.

By Hen Eytan, updated 8 min read4 sources
1.2KSavings2.4KHousing0.85KLoans1.1KFood0.7KKids1.46KFreeA zero-based month in thousands of dollars: savings is thefirst row, and the last row is what is left

Key takeaways

  • Zero-based means income minus every row equals zero, with savings as the first row and the unallocated remainder as the only unnamed money.
  • Mental-accounting research shows a purchase booked against a full row is the one that gets reconsidered; unbooked spending is invisible.
  • Rows only work if they fill themselves from the ledger, and each row needs an owner when two people share the month.
  • A row that runs out three months running is sized wrongly; fix the size, not the discipline.

Zero-based budgeting has a reputation for spreadsheets and evenings. The idea underneath it is simpler than the reputation: before the month starts, every dollar of income is assigned to a row, savings first, and the last row is what is genuinely free. Here is the method, the research on why rows change behaviour, and how to run it with two people and three cards and no spreadsheet.

What is zero-based budgeting?

Zero-based budgeting came from corporate finance, where every line has to be justified from zero each period rather than carried over.

For a household it means one thing: income minus the sum of all rows equals zero. Savings first, as a fixed row rather than a remainder. Then the other fixed rows, at their real amounts. Then the variable rows, groceries, transport, the children, eating out, sized from what last month actually cost. What is left is the unallocated row, and it is the only money in the month with no name on it.

“Zero” does not mean spending everything. It means every dollar has a job before the month starts, and one of the jobs is to sit in savings.

It is also the opposite of tracking. A tracking app tells you after the fact where the money went, sorted into categories it chose. A zero-based budget decides before the fact where the money goes, in rows you chose, and then tracks against the decision. The difference shows on the 12th of the month: a tracker shows a total, a zero-based row shows a gap.

Free tool: Half of take-home pay to needs, 30% to wants, 20% to savings. Open the 50/30/20 budget calculator →

How is a zero-based budget different from the 50/30/20 rule?

They answer different questions. The 50/30/20 rule says how big three buckets should be; a zero-based budget says what every dollar inside them is for. Most households use both: the rule to check the shape of the month, the rows to run it.

50/30/20Zero-based
UnitThree bucketsAs many rows as the household has kinds of spending
Set-upMinutesAn evening, once
Tells youWhether the shape is healthyWhich row is over, by how much, with how many days left
Weak spotBreaks where needs exceed 50%Breaks if the rows are updated by hand
SavingsA percentageThe first fixed row, in money

PeakFinance does this from your own data. Save more, and see exactly where the household stands. Join the free beta →

Why rows work: the mental accounting research

Heath and Soll showed that people run their spending through mental budgets: money assigned to a category is tracked against that category, and a purchase that has to be booked to a full row is the one that gets reconsidered. The same purchase, unbooked, sails through. A budget with real rows is not a constraint on the household; it is the thing that makes a $142 supermarket run register as “food is at 80% with ten days left” instead of as nothing at all.

Thaler's 1999 review, Mental accounting matters, collected a decade of such findings: people treat money differently depending on the account it sits in, even when the accounts are only in their heads. A 2025 registered replication re-ran seventeen of the classic problems from that review with about a thousand US participants, so the effect is not an artefact of one era's students.

The corollary is the part spreadsheets get wrong: the row has to fill itself. A row that is updated by hand on Sunday is a row that is wrong from Monday, and the mental budget stops working the moment it stops being believed.

What categories should a household zero-based budget have?

Fewer than you think, and each with an owner and a type. A fixed row is a commitment that charges regardless; a variable row is the sum of what was filed under it.

RowTypeOwnerSized from
Savings and goalsFixed, firstHouseholdThe rate you keep
Housing, utilities, insuranceFixedHouseholdThe bills
Loans and instalmentsFixedHousehold or a personThe schedule
SubscriptionsFixedHousehold or a personThe confirmed list
Food, transport, children, healthVariableHouseholdLast three months
Clothes, leisure, eating outVariableHousehold or a personLast three months, and what you decide
Personal, one row eachVariableThat personAgreed allowance
UnallocatedRemainderHouseholdIncome minus everything above

The clothes row is the one most households size wrongly, because the purchases are infrequent and large. Pricing them by cost per wear rather than by the receipt makes the row easier to defend.

Resist the urge to add rows. Every row is a decision about where a charge goes, and a budget with forty rows is a budget where the supermarket run that included a birthday card and a light bulb needs three decisions. Ten to fifteen rows is enough for most households; a row that only ever holds one or two charges a month belongs inside a bigger one.

How to run it with two people and three cards

  1. Agree the rows once. Housing, loans, insurance, subscriptions, savings, food, transport, children, health, leisure, and a row per person for personal spending.
  2. Give each row an owner: a person, or the household. That decides whose spending it counts against and who sees it first.
  3. Fill the savings row first, at a rate you have actually hit, and move the transfer on payday.
  4. Let every charge from every card land in a row automatically, and correct the ones that land wrongly. Each correction should teach the system, so the same merchant lands right next time.
  5. Read the row, not the statement. “Kids is at 105%” on the 12th is actionable; “the card was $2,400” on the 2nd of next month is not.

Expect the first month to be wrong. The rows were sized from a guess or from three months that were not typical, and the point of the first month is to find out by how much. Resize at the end of it from the actuals, not from what you wish they had been, and the second month will be close. The households that give up on zero-based budgeting are usually the ones that treated the first month's overruns as failure rather than as data.

What to do when a row runs out mid-month

Move money from another row explicitly, or from the unallocated row. The point of the method is that the move is a decision you see, not a drift you discover later. A row that runs out three months running is sized wrongly, and the fix is the size, not the discipline.

The fixed rows deserve a quarterly look too. Subscriptions nobody uses are the easiest money to move into the savings row, because dropping them changes nothing else in the month.

How PeakFinance does it

PeakFinance's budget is zero-based by construction: income, budget, savings and the unallocated remainder sit at the top of the screen, and a budget row stores no total of its own. A variable row's actual is the sum of its transactions and a fixed row tracks its source, so the rows fill themselves from the bank sync and a corrected charge moves every screen at once.

Rows belong to a member or the household, the filter by member is one tap, and a category over its row raises an alert with the overrun in dollars rather than a red bar to interpret.

Want this answered from your own data?

That is what PeakFinance does. Save more, and see exactly where the household stands. In private beta — the waitlist is free.

Join the beta About PeakFinance

Questions

What if a row runs out mid-month?
Move money from another row explicitly, or from the unallocated row. The point of the method is that the move is a decision you see, not a drift you discover later. If the same row runs out every month, resize it from the last three months' actuals.
Do we really need a row per person?
If either partner has personal spending, yes. A personal row is what keeps a hobby or a lunch habit out of the shared arithmetic and out of the argument. It also keeps the settlement honest, because personal rows never enter it.
How is a fixed row different from a variable one?
A fixed row is a commitment that charges regardless: it tracks its subscriptions or loan repayments, or the larger of what it states and what actually charged. A variable row is simply the sum of the transactions filed under it.
Is zero-based budgeting the same as the envelope method?
Close. Envelopes are zero-based budgeting done in cash: each envelope is a row, and an empty envelope is a row at 100%. The digital version keeps the rows and drops the cash, which only works if the rows are filled automatically from the ledger rather than by hand.
How long does a zero-based budget take each month?
An evening to set up, then minutes a week if the rows fill themselves. The time goes into correcting the few charges that land in the wrong row and deciding what to do about a row that is running hot. Done by hand in a spreadsheet, it is hours, which is why most spreadsheets stop in March.

Sources

  1. Investopedia. Zero-based budgeting (ZBB): what it means and how it works. https://www.investopedia.com/terms/z/zbb.asp
  2. Heath C., Soll J.B. (1996). Mental budgeting and consumer decisions. Journal of Consumer Research. https://doi.org/10.1086/209465
  3. Thaler R.H. (1999). Mental accounting matters. Journal of Behavioral Decision Making. https://doi.org/10.1002/(SICI)1099-0771(199909)12:3%3C183::AID-BDM318%3E3.0.CO;2-F
  4. Revisiting mental accounting classic paradigms: replication registered report of the problems reviewed in Thaler (1999). Royal Society Open Science, 2025. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC12445221/
Hen Eytan · Founder, UPeak

Builds the UPeak apps and writes up the research behind them.