Categorization rules: Teach it once. Every statement after obeys.
A rule matches a transaction's description on the phrases you include and refuses the ones you exclude, then sets its category, subcategory, tags, and merchant. It runs on every statement you import from then on, and on the ones you already have.
50 free page credits · No card · Cancel anytime
- Include and exclude patterns
- Scoped by bank, type, or merchant
- Applied to past rows too
Include patterns
Exclude patterns
Merchant
Type
Set
Keyword matching gets the easy ninety percent wrong in a new way.
The first categorization rule anyone writes is a keyword: anything containing AMAZON is Shopping. Then AWS arrives and is not shopping, the Amazon refund lands as spending, and a rule written for one bank's narrations misfires on another's. Plain keyword rules fail at the edges, and the edges are where the review time goes. What fixes that is not a cleverer model. It is rules that can say what they must not match, where they are allowed to run, and which rule wins when two of them agree on the text.
How it works
Anatomy of a rule
- 01
Say what it matches
Add one or more include patterns. A rule fires when any of them appears in the description. Each pattern can be whole-word or case-sensitive; without either, matching ignores case, accents, and punctuation.

The rules column counts what sits behind each category, and opens the editor for them. - 02
Say what it must not match
Exclude patterns veto a match. AMAZON can be Shopping while AMAZON WEB SERVICES and AMAZON REFUND are refused, without writing three rules and hoping they run in the right order.
- 03
Say where it may run
Scope a rule to specific banks or statements, to debits or credits only, to transactions already carrying a category or tag, or to one resolved merchant. The same text can then mean different things in different accounts.
- 04
Say what it sets
Category and subcategory, any number of tags, and an optional link to a saved merchant, which the Merchants workspace and every merchant-aware chart then reflect.

Each category lists the rules behind it, its transactions, and what they add up to. - 05
Let it reach backwards
A new rule is applied to the existing transactions it matches straight away, and every future import runs through your rules before any AI is asked to categorize.
Rules that behave at the edges
Exclusions
Negative patterns keep a broad rule from catching refunds, fees, or a similarly named vendor.
Whole-word and match-case
Per-pattern toggles for the narrations where 'UBER' should not match 'UBEREATS', or where capitalisation carries meaning.
Context scopes
Bank or statement, debit or credit, current category or tag, and resolved merchant, so a rule only runs where it is right.
Conflict protection
Two rules with the same pattern cannot set different results in overlapping scopes. A more specific pattern like 'amazon prime' overrides 'amazon'; compatible tags accumulate.
Retroactive by default
Rules apply to the transactions already imported, not only the next statement.
Your edits stay yours
A category you set by hand is protected from later automated passes, whether rule or AI.
FAQ
Common questions
Where do I manage rules?
On the entity they belong to: a category's rules on the Categories & Tags page, a merchant's rules on the Merchants page, each in a manage-patterns dialog. There is no separate rules screen to keep in sync.
What happens when two rules match the same transaction?
Identical patterns with conflicting results in overlapping scopes are refused when you save. When patterns differ, the more specific one wins for category and merchant, and tags from compatible rules are combined.
Do rules run before or after AI categorization?
Before. Imported transactions are matched against your saved rules first; AI is only asked about transactions no rule covers.
Will a new rule change transactions I already fixed by hand?
No. Manually set categories are protected from later automated changes, including rules applied retroactively.
Can a rule apply to one bank only?
Yes. Scope it to specific banks or statements. The same pattern can then carry different results in different accounts, because the scopes cannot overlap.
Are rules created automatically?
Every category, tag, and merchant gets a rule matching its own name, and merchants identified automatically get reusable patterns too. All of them can be edited like any rule you write.
Keep exploring
Merchant Intelligence
Every narration resolved to a named merchant with its history.
Risk Review
An evidence-backed read of a set of statements, with no verdict.
Workflows
Folders and forwarded email in; files and webhooks out.
Bank Statement Converter
What a converter has to get right, and what the file looks like when it does.
Bank Statement → Excel
Download a clean XLSX of every parsed transaction.
Write the rule your last statement needed.
Upload a statement, fix the category that was wrong, and turn the fix into a rule that runs backwards and forwards.