Teach Trout to categorize a transaction once; it does the work forever after. Multi-condition matching with proper boolean logic — not the vague "smart" guessing other apps call a rule.
Try the appBuild one. Watch it fire.
Change any dropdown on the left. The transactions on the right re-evaluate instantly. No "save rule", no preview mode — what you see is the rule.
when: payee ~= "Amazon" and amount > 50
then: category = "Shopping"
}
Six rules that pay rent.
Real rules from real budgets. Each one stops a recurring decision from hitting your attention ever again.
Groceries are groceries.
Any of these payees, any amount, becomes groceries.
Big Amazon = Shopping.
Small Amazon buys stay uncategorized for your review.
Subscriptions.
Netflix, Spotify, Prime — same amount every month.
Not a meal.
Negative conditions work too. Separate coffee from meal.
Round-trip ignore.
Internal transfers should not count as spending.
Utility inflation.
Flag utility bills that spike above last month's ceiling.
Every import, already sorted.
When bank sync pulls a batch in, rules run in priority order. You see only what genuinely needs a human decision.
"I haven't manually categorized a grocery run in four months.
— early access user, reddit
The small print, honest.
No black box. You can read, reorder, disable, or delete any rule at any time — and see exactly which rule tagged which transaction.
- Priority
- Rules run top-to-bottom. First match wins. Drag to reorder.
- Conditions
- Match on payee, memo, amount, account, date, or imported category.
- Operators
- equals, contains, starts-with, ends-with, regex, >, <, between.
- Actions
- Set category, add tag, flag for review, set memo, or exclude from budget.
- Retroactive
- Apply a new rule to past transactions — with a preview first.
- Audit
- Each auto-categorization records which rule fired, and when.