Skip to content
Trove

Concepts

Smart categorization

How Trove classifies your transactions, and how to teach it.

Your starting categories

Every account starts with the same small set, and they are yours from that moment. They are rows in your account, not a list baked into the app:

CategoryReviewed
UPI SpendsMonthly and every 6 months
Credit CardMonthly and every 6 months
InvestmentsMonthly and every 6 months
TravelMonthly and every 6 months
Misc, with Food, Fuel and Shopping under itMonthly
FoodMonthly

Three more are set up behind the scenes: Income, Transfer and a catch-all Other. You can rename those, but not delete them, because Trove needs somewhere to file a payment it can't place.

Six buckets is deliberate. A category list you can hold in your head is one you'll actually keep up with.

How matching works

Regex rules match merchant + description against a curated rulebook. Examples:

Rules only ever return a category you actually have. A supermarket charge maps to Groceries if you've added it and falls back to Food if you haven't, rather than landing in a bucket that isn't there. Anything unmatched goes to Other, and you can re-categorise it.

Making them yours

Settings → Categories. Rename anything, add your own, or nest one level deep so a bucket like Misc can break down into Food, Fuel and Shopping. Sub-categories show as Misc › Fuel wherever you pick one, so two things called "Food" are never ambiguous.

There's also a library of around thirty more (Groceries, Rent, Health, Insurance, Business) to add if you want them. They start switched off rather than on: an empty category is noise, and you can add one the moment you need it.

Why this approach

We considered a fully ML-based classifier. It would have been more accurate by 1–2 points and harder to explain by 100. Regex you can read; vectors you cannot.