Blog / Categories

Your spending categories are wrong

Forty categories, half of them empty, one called Miscellaneous absorbing 18% of everything. The problem is not that you categorised badly — it is that the categories were never designed to answer a question you were going to ask.

A grid of forty category tiles, nearly all empty, three carrying real spending and one oversized tile absorbing eighteen per cent as Miscellaneous.

Open any abandoned budgeting app and the shape is identical. Somewhere between thirty and fifty categories. A dozen with a single transaction in them from the week the account was set up. Two or three doing all the work. And one — usually called Other, Miscellaneous or Uncategorised — quietly holding a fifth of everything, including several things that would have been genuinely interesting to know about.

The standard diagnosis is that the user gave up. The more accurate one is that the category set was never capable of producing an insight, so the effort of maintaining it earned nothing and stopped.

A category is not a filing system. It is a question you intend to ask about your money, written down in advance. If you cannot say what you would do differently depending on the answer, the category is decoration.

The test a category has to pass

Before creating one, finish this sentence: "If this doubled next month, I would ______."

  • Groceries doubled → I would look at whether we are shopping differently, or whether prices moved. Actionable. Keep.
  • Rent doubled → I would move, eventually, but nothing changes this month. Worth tracking as a committed cost, not worth reviewing monthly.
  • Subscriptions doubled → I would find out which one and cancel something. Sharply actionable, and specific enough to act on within ten minutes. Keep.
  • "Shopping" doubled → I would... look at the list of transactions to find out what it actually was. That category did no work. Its only function was to defer the question.

That last case is the one to watch for. Any category whose answer is "I would need to look at the individual transactions" is not a category — it is a folder, and you would have been equally well served by the search box.

Too many is the usual failure

There is an intuition that finer categories mean better information. In practice the opposite holds, for two reasons.

The first is statistical. Split spending finely enough and every category becomes small enough that ordinary variation swamps any trend. Coffee was $61 last month and $38 this month. Is that a change in behaviour or a month with a bank holiday in it? At that granularity you cannot tell, and a metric you cannot interpret is one you eventually stop reading.

The second is human. Every additional category is another decision at entry time, and the marginal ones are always ambiguous — is a work lunch Food or Business? Is a train to see family Transport or Family? Ambiguity is what fills the Miscellaneous bucket, because when the choice is unclear the fastest path is the catch-all.

The workable number for most households is eight to twelve top-level categories, with subcategories only where you have a specific recurring question. Twelve categories that are always filled in beat forty that are half-guessed.

$4,318
Monthly spending · 11 categories, none miscellaneous
Committed$2,332 Variable necessary$1,252 Discretionary$734 Cuttable within 30 days17%
The same spending grouped by how quickly it can change rather than by what it bought. The bottom-right figure is the one that answers "what happens if income stops" — and no conventional category list produces it.

The split that actually predicts behaviour

Beneath your categories, add one more dimension that most tools omit: how fast can this change?

Committed. Rent or mortgage, insurance, loan payments, school fees. Contractually fixed for months. You cannot alter these in response to a bad quarter, and reviewing them monthly is wasted attention — they get looked at once a year, on renewal.

Variable necessary. Groceries, fuel, utilities, childcare. You must spend something; the amount is influenced by behaviour and by prices. This is where a monthly review is genuinely worth doing, because it is the only band where attention changes the number.

Discretionary. Meals out, subscriptions, travel, things. Cuttable within a month if needed.

Two useful numbers fall out immediately. The proportion of income that is committed tells you how much shock your household can absorb — above roughly 55% and a bad month becomes an emergency rather than an inconvenience. And the discretionary total tells you what is genuinely available if income stops, which is a completely different figure from the total spending everyone quotes.

This split is also the one that survives contact with a real decision. When people actually need to cut, they do not cut "by category" — they cut the discretionary band and renegotiate the committed one, in that order.

A category set that cannot tell you what happens if your income stops for three months is a filing system, not a financial tool.

The question every budget is secretly about

Let the merchant code do the boring 80%

Most tools categorise by matching words in the transaction description. That field is a mess: the same coffee shop appears as SQ *THE COFFEE, IZ *COFFEE LDN and PAYPAL *COFFEEROAS, depending on which payment processor was in the middle.

Meanwhile, card transactions already carry a much better field that almost nothing uses: the merchant category code, a four-digit number assigned by the payment networks. 5812 is eating places. 5411 is groceries. 4121 is taxis and rideshare. 5541 is fuel. It is assigned by the acquiring institution to the merchant's business type, and it does not change when they rebrand, switch processors or get acquired.

Rules built on codes are stable in a way that text rules never are. Map codes to your categories once and the great majority of card spending files itself correctly and keeps doing so, including at merchants you have never visited before — which is the case text rules can never handle, because you cannot write a rule for a shop you do not yet know exists.

Two places the code is wrong, and both are predictable

Codes are assigned per merchant, not per purchase, so a supermarket that sells you a kettle files it under groceries, and a department store files everything as one code regardless of what you bought. And large marketplaces file everything under their own single code. Neither is a reason to distrust the mechanism; both are reasons to keep a small number of text overrides on top of it, for the handful of merchants where you genuinely care about the split.

Where text rules still earn their place

Merchant codes handle card spending. They do not exist for bank-side operations — transfers, standing orders, fees, salary, tax payments — which arrive with a description and nothing else. That is exactly where text rules are strong, because those descriptions are machine-generated and stable: the same reference every month, for years.

So the sensible arrangement is layered. Merchant code first, where one exists. Text rules second, for bank operations and for the specific merchants you want split out of their code's default. Manual assignment last, and — this is the part that matters — every manual assignment you make should be offered as a rule so that you never make the same one twice.

What to do with the Miscellaneous pile

Delete it. Not the transactions — the category.

Miscellaneous is not a category, it is a queue that nobody processes. Its existence removes the pressure that would otherwise force you to either create a real category or admit that the spending belongs in one you already have. Every tool that ships with an "Other" bucket ends up with 15–20% of spending in it, which is enough to invalidate every proportion you might calculate from the rest.

If a transaction genuinely does not fit, that is information: either it is a one-off, in which case put it in the closest real category and move on, or it is the first of a recurring pattern, in which case name the pattern now while you still remember what it was.

What this looks like in practice

Common setup Setup that survives a year
Top-level categories 30–50 8–12
Subcategories Everywhere Only where a question needs them
Primary input Description text Merchant code, text second
Ambiguous transactions Miscellaneous Nearest real category, no catch-all
Second dimension None Committed / variable / discretionary
Manual corrections Repeated monthly Saved as a rule the first time
Question it answers "Where did it go?" "What can I change, and how fast?"

The goal is not a beautiful pie chart. It is to be able to answer, in about ninety seconds, what happens to your household if income stops for a quarter — and to know which specific line you would reach for first.

See your own number instead of reading about someone else’s.

Import a statement, add your accounts, and get a real net-worth figure in an evening. Six months free, no card required.

Start free
6 months free · no cardStart free