Transaction Rules
Say once where a transaction belongs, and stop correcting it every month.
Updated
What a Rule Is
Every transaction has to be categorised somehow, and Cadence Money has an automatic chain for that - merchant patterns, keywords, what it has learned from your corrections. It is good, and it is still a guess. A rule is you stating the answer instead, and it runs ahead of that whole chain rather than inside it: if a rule matches, its answer is the answer.
Rules are checked on every way a transaction can reach you:
- Bank syncing, on both new and updated transactions.
- CSV import.
- A transaction you type in yourself.
The category, budget, bill, income source, goal and Household Member are each decided separately. Each one comes from the first matching rule in your list that sets it, so one transaction can take its category from one rule and its budget from another. Anything no rule sets is left to the automatic chain as usual.
Three Ways to Create a Rule
All three build the same thing, and all three obey the same limits.
- Settings → Transaction Rules - tap Create Rule. This is the full surface: the ordered list, the switches, and the only place a rule can be edited or deleted. Once you save, the rule’s Transactions already on file panel opens straight away.
- The + button on any page - choose Transaction Rule. This creates only. A rule’s meaning depends on its position against the others, and this screen cannot show you that list, so editing stays in Settings. Saving here also opens Transactions already on file.
- While correcting a category - when you change a transaction’s category and Cadence Money offers to update similar ones, there is a second tick box: Make a Rule so future transactions like this one are categorized with the category you picked. It is off by default, and it is a separate decision from the update itself.
That third rule is built from the transaction’s own name, tested with contains so a store number your bank appends does not stop it matching, and it sets the category only. A budget or a goal is a decision that prompt never asked about, so you add those yourself in the builder.
Conditions: the When Half
The builder opens with When a transaction’s: and one condition row. Every condition you add must be true for the rule to match - they are joined with “and”. To match either of two different fields, write two rules.
A Name, Merchant, Account or Category condition can list up to 20 values, and any one of them matches. For a name or merchant, type a value and press Enter or a comma to add the next. So Merchant contains Lululemon, Aritzia, Gap is one condition.
| Field | What it looks at | Tests available |
|---|---|---|
| Name | The raw text your bank sends | contains, is exactly, starts with |
| Merchant | The tidied merchant name, where there is one | contains, is exactly, starts with |
| Amount | The size of the transaction, ignoring sign | is, is more than, is less than, is between |
| Direction | Money out or money in | is |
| Account | One of your synced or manual accounts | is |
| Category | The category the transaction ends up with | is |
Text tests ignore capitals, and there are no wildcards - a percent sign or an underscore you type is just that character. Amount tests compare the size of the transaction, so is more than 500 means the same thing on a payment as on a deposit.
Because Name is matched against exactly what your bank sends rather than a cleaned-up version, the builder shows you that raw string when it has one, under “Text conditions are matched against the name your bank sends”. Copy from that line rather than from what you see on the transaction card.
| Limit | Value |
|---|---|
| Rules per account | 50 |
| Conditions on one rule | 5 |
| Values in one condition | 20 |
| Length of a text condition | 200 characters |
| Length of a rule name | 60 characters |
What an Account condition can and cannot see
The builder says this on the row itself: an Account condition matches bank-synced transactions, and imported ones you have assigned to an account. It will not match transactions you add by hand.
Nothing is broken when that happens - the rule simply does not match, silently. If a rule seems not to fire, an account condition is the first thing to check.
Actions: the Then Half
Under Then: a rule can set a Category, and four more actions are added a row at a time with Add Action (five in a household of two or more people). All are optional, but a rule must set at least one of them. Until it does, the builder says Choose a category or add an action. and Save Rule stays greyed out.
A rule with no category leaves the category to your other rules and to the automatic chain. To take a category off a rule, use the bin icon beside it. A rule can hold at most one of each action:
- Assign a budget - files the spending against a budget you choose, including an annual budget or a Goal Fund.
- Link to a bill - attaches the transaction to a recurring bill and moves its next due date on.
- Link to an income source - the same, for money coming in.
- Link to goal - counts the transaction toward a savings goal, up to that goal’s target.
- Assign Household Member - in a household of two or more, labels the transaction as one member’s or Shared. Bank syncing fills it only where no one is picked yet, while running the rule over transactions you already have replaces a member already picked. See Household Members.
Two pairs are refused outright, by the app and by the database behind it. A rule cannot hold a bill and an income source together, because one transaction cannot be both a bill payment and income; and it cannot hold an income source and a budget together, because a budget measures money spent, so it would name somewhere nothing this rule matches could land. A budget alongside a bill is allowed on purpose - a bill carries its own budget, and naming a different one is a legitimate override, which the builder points out rather than blocking.
A linking action only fires in one direction
A bill is money going out and an income source is money coming in. If your rule has a Direction condition pointing the other way, the builder warns you that nothing will ever be linked - and even with no direction condition at all, Cadence Money still checks each transaction’s direction before linking it, so a refund never gets attached to your rent.
When an Action Does Not Suit the Category
Each action is a claim about what the transaction is, so each one applies only where it fits the category the transaction ends up with, whichever rule or automatic step chose it. An action that does not fit is skipped on that transaction. A budget-only rule on your current account therefore never files your pay in a spending budget.
| Action | Needs a category that is |
|---|---|
| Assign a budget | Something you spend on, or a refund |
| Link to a bill | Something you spend on |
| Link to an income source | Income, and not a refund or reimbursement |
| Link to goal | Money that moves or arrives, or income |
Assign Household Member suits every category, so it is never skipped.
If the rule sets a category itself, its actions are also checked against it when you save. An action that category could never carry shows a note saying why, and Save Rule stays greyed out until you change the category or remove the action. Without that check a rule would save, appear in the list, and quietly do nothing. A rule that matches on Category is checked the same way: each action must suit at least one of the categories it lists.
Rules That Match on Category
A Category condition matches the category the transaction ends up with, whichever rule or automatic step chose it. Such a rule cannot set a category itself, so the builder hides the Category action and asks you to Add an action.
These rules also run when you change a transaction’s category yourself, on one transaction, in a bulk edit or through Edit Other Transactions?. On that change they only fill in the Household Member, and only where no one is picked on the transaction itself; an account’s default does not count. Linking a transaction to a bill does not run them.
Order, and Turning a Rule Off
Rules are a list. When two matching rules set the same thing, the higher one wins. When they set different things, the transaction gets both. Drag the handle on the left of a row to move it, and where two rules set the same thing, put the narrower one higher.
| Order | When | Then |
|---|---|---|
| 1 | Account is Work Card | Assign a budget: Work Expenses |
| 2 | Merchant contains Netflix | Category: Subscriptions |
A Netflix charge on Work Card takes its budget from rule 1 and its category from rule 2. A Netflix charge on any other card gets the category only.
Each row also carries a switch. Turning it off leaves the rule intact and stops it applying to anything new - useful for a rule you only want in a particular season. The same control appears at the top of a saved rule as Rule is active. It is not offered while you are creating one, because a new rule is created switched on.
Running a Rule Over Transactions You Already Have
A rule normally only decides transactions that arrive after you wrote it - which is the wrong half, since the reason you wrote it is usually the rows already sitting in front of you. When you create a rule in Settings or from the + button, Transactions already on file opens as soon as you save it; tap Done to skip it. Open a saved rule later and you will find the same panel at the bottom.
- Tap Check What Would Change. Nothing is written yet.
- Read the count and the sample rows. Cadence Money shows the first five, then says how many more there are.
- Tap Update with the count on it to commit, or Go Back to leave everything alone.
The preview and the update are the same pass with one switch flipped, so the number you agree to is the number that happens. A rule that sets a category does not touch transactions you categorised yourself, and counts them separately - your own answer outranks a rule written afterwards. A rule with no category updates those transactions too and keeps the category you gave them. The search is bounded too: Cadence Money reads your history in pages of 200 and stops after 40 of them, so 8,000 transactions, and it names the window it searched rather than implying it read everything.
Two things stop the button working, both on purpose. It runs the rule as it is saved, so unsaved edits block it until you save. And a switched-off rule matches nothing, so Cadence Money asks you to turn it on rather than answering “0 transactions” - true about the search, misleading about the rule.
There is no single undo
The update writes as it goes, one page at a time, so it cannot be reversed in one step - putting it back means editing the affected transactions. That is exactly why the preview exists and why it lists real rows. Read it before you commit.
It also means that if something goes wrong part-way, the pages already written stay written. Cadence Money says so, with the number it reached, rather than clearing the panel as though nothing happened.
Correcting a Transaction a Rule Decided
If you change the category on a transaction a rule set, that correction stands on that transaction - but it teaches Cadence Money nothing. A rule permanently outranks a learned preference, so a preference recorded here would only ever disagree with what actually happens.
Instead the prompt names the rule responsible and offers Change the rule, which saves your correction and then opens that rule’s builder. That is the honest fix: the rule is where the answer came from, so the rule is where it changes for every transaction like it.
Deleting a Rule
Use the bin icon on the rule’s row in Settings. Deleting stops the rule applying to anything new, and transactions it has already changed keep what it set - nothing is rolled back. If you are at the limit of 50 and want another, combining is usually better than deleting: one condition can list several merchants, so one rule often replaces two or three near-identical ones.