SageFinSageFin

Why a transaction landed in that category

Most transactions are categorized before you ever look at them. When one lands somewhere odd, the useful question is not "why is it wrong" but "who decided it" — because four different things can have, and what you do about it depends on which.

The four things that categorize a transaction

They run in this order, and the first one to answer wins.

1. Your rules. If a rule you wrote matches, it decides, and nothing later gets a say. Rules are deliberate and deterministic, which is why they go first.

2. What SageFin has learned about the merchant. A merchant seen often enough, categorized consistently enough, is remembered. This is why a coffee shop you have never had in SageFin before often arrives already sensible.

3. AI. Whatever is left goes to a model with the merchant, the amount, the date and your category list. This is the only one that records a confidence, because it is the only one making a judgment rather than an assertion — a rule that matched, a merchant that was remembered and a category you chose are all simply true.

4. You. Setting a category by hand overrides everything above.

Your choice is never overwritten

Worth stating plainly, because it is the thing people most reasonably fear about an app that categorizes for them.

Automatic categorization only ever looks at transactions that have no category. Once a transaction has one — from a rule, from the merchant memory, from the model, or from you — no background pass touches it again. A later sync does not re-run the model over your corrections, and nothing quietly changes its mind overnight.

So a category that looks wrong today was decided once, and it will stay wrong until somebody changes it. Which is the other half of the answer.

Changing one, and making it stick

To fix one transaction, open it and set the category. Done — and it now reads as your decision rather than the model's.

To fix it for next time, write a rule. Fixing the same merchant by hand every month is the signal that a rule is missing. Rules live in Settings → Rules.

A rule is one condition and one outcome:

The amount half is what separates cases a name cannot. "Amazon" is shopping when it is £14 going out and a refund when it is £14 coming in.

Order matters, and you control it

Rules are tried in order and the first match wins, so a narrow rule has to sit above a broad one. A rule saying anything containing "Uber" → Travel will swallow every Uber Eats order unless the narrower food rule sits above it. Drag them into the order you want.

A rule can also be switched off without deleting it, which is the right move when you are not sure whether it is the one causing the surprise.

Applying a rule to what is already there

A new rule applies to transactions arriving from now on. To sweep it over your history too, use Apply on the rule — it changes every matching transaction that does not already carry that category, and running it twice is harmless.

Describing a rule instead of building one

There is also a prompt: say what you want in a sentence and SageFin drafts the rule. It is a starting point you can edit before saving, not a shortcut past reading it.

Rules an AI app suggested

If you have connected an AI app and allowed it to make changes, it can suggest a rule. Suggestions sit at the top of the rules list, marked as not being rules yet. Review opens one in the same editor, filled in, for you to change and save; Dismiss removes it. An app cannot create a rule itself. See Connecting an AI app.

The list is the same in the iPhone app, under Settings → Rules. In either place the editor shows how many of your existing transactions the rule matches, and counts again as you change it. The figure on a suggestion is from when the app made it, so the editor's count is the current one.

Categories themselves

SageFin ships with a set of categories, and you can create your own in Settings → Categories — a household that thinks in terms of Horse or Boat or Kids' clubs should have those. Custom categories work in rules, budgets and reports exactly like the built-in ones.

Categories live inside groups, and you can make your own groups too. The group is what reports and budgets roll up to, so it is worth putting a new category somewhere sensible rather than leaving it beside things it has nothing to do with.

Rename one and it changes everywhere at once — in your history, your rules and your budgets — because they all point at the category rather than at its name.

Deleting a category, and why it sometimes refuses

A category with transactions in it cannot simply be deleted. SageFin asks you where those transactions should go and moves them first, because the alternative is history with a hole in it. The category you move them to has to be a real one you are keeping — not a group, and not another disabled category.

A built-in category is disabled rather than deleted. It stops being offered when you categorize something, and it keeps working everywhere it was already used. That is deliberate: the built-ins are what the automatic categorization writes, so removing one outright would leave a name in your history that nothing could explain.

Still not sure who decided?

Open the transaction. Under the category is a line saying where it came from — Set by one of your rules, From what SageFin has learned about this merchant, Chosen by AI, or Set by hand.

A few transactions say something else, and each is worth reading literally:

There is no confidence score on the line, and that is deliberate: the model reports its own certainty, which is not the same as being right, and a percentage next to a category invites more trust than it has earned. What is worth acting on is the source. Fixing the same merchant by hand more than once is the signal that a rule is missing — that, rather than a number, is the best argument for writing one.

A split transaction shows no line, because it has no single category and so nothing single decided it. Each line of the split carries its own.