Learn - Categories
The buckets your money flows through, and the type that drives the math.
Categories
Categories are the buckets your items live in. Every item you create (rent, paycheck, groceries, a Spotify subscription) belongs to exactly one category, and each category has a Type that tells the app which way money moves when a transaction lands on that item. The type is the one field worth getting right; everything else (the name, the icon, where it sits in the tree) is for your own benefit when you scroll through later.
This page is a guide to the Categories segment of the Setup tab: where you add categories, how they nest, and what happens to your items when you change or delete one. The Setup tab has three segments along the top, Accounts, Categories, and Items; tap Categories to land here.
A new budget starts with no categories. You add them yourself as you go.
The three types and the sign rule
Every category has one of three types. The type is what the app reads when a transaction lands, so the rest of the math depends on it.
Income. Money coming in. Paychecks, refunds, gifts, freelance pay, dividends, interest. When a transaction lands on an item filed under an Income category, the linked account’s balance goes up by the transaction amount. Most people end up with a small number of Income categories.
Expense. Money going out. Rent, groceries, gas, dining out, subscriptions. When a transaction lands on an item filed under an Expense category, the linked account’s balance goes down by the transaction amount. This is where most of your categories will live.
Transfer. Money moving between two of your own accounts. Moving $500 from Checking to Savings is a transfer. Paying off a credit card from your checking account is a transfer. A Transfer item picks two accounts (a From Account and a To Account); when a transaction lands, one balance goes down and the other goes up by the same amount, so your overall total is unchanged.
Why does the Type drive the sign, instead of the transaction amount itself? The amount you record is always positive. The direction (add or subtract) comes from the category’s type, looked up at the moment a transaction is applied to the balance. That has one big payoff: if you ever file an item under the wrong-type category, you do not have to re-key any amounts. You change the item’s category and every future transaction follows the new direction. Past transactions still landed with the old direction (the balance change was written when they happened), so re-anchoring Current Balance is the cleanest way to absorb the difference.
Why is Transfer a separate type rather than two transactions? Because if you had to record a Checking outflow and a Savings inflow as two unrelated entries, you could (and would) get them out of sync over time: different dates, different amounts, one entered without the other. Treating a transfer as a single record with two sides means you cannot accidentally record half of one. Both balances move together, or neither does.
How categories are organized
The Categories segment groups your categories under three section headers, Income, Transfers, and Expenses, one section per type. The headers themselves are not records you create or edit; they appear automatically based on the Type you assigned to each category. There are no built-in “Income” or “Expense” categories the app starts you with. Every category in your tree is one you added.
Categories can nest one level deep. A top-level Food category can have Groceries and Restaurants as sub-categories underneath it. A top-level Subscriptions can have Streaming, Software, and News under it. Two levels is as deep as the tree goes; sub-categories cannot themselves have sub-categories. If you try to drag a row in deeper than that, the tree shows the message “Only two category levels are supported.”
You would want sub-categories when:
- A parent category has so many items that you cannot see patterns inside it.
- You want to track a specific slice (just restaurants, just software subscriptions) without losing the parent total.
You would skip sub-categories when:
- The parent only has two or three items in it. Adding sub-categories does not reveal new patterns; it just adds taps.
- The sub-category would only have one item. That item is already its own line.
Why this default? A flat category list with eight to twelve entries is usable forever. A nested tree with twenty-five entries needs maintenance you will quietly stop doing in month three. The app will let you build the deeper tree if you want it; it just will not push you there.
You can drag and drop to reorder categories within a section, or to move a category under (or out from under) a parent. The new order saves immediately; if a save fails, the row snaps back to where it was.
Adding a category
Tap the Add Category button on the toolbar. The New Category dialog opens.
Fill in:
- Category Name. What you will recognize at a glance. Up to 50 characters.
- Description. Optional. A note for yourself. Up to 1,000 characters.
- Type. Income, Expense, or Transfer.
- Parent Category. Defaults to None (Top-level). Pick another category here to nest this one under it.
- Category Icon. The icon shown for this category (and for items filed under it) on the Planner and in lists.
When you pick a parent, two things happen at once. The new category becomes a sub-category, and its Type is set to the parent’s type and shown as read-only with (Inherited from parent) next to it. Sub-categories always match their parent’s type, because the type is what drives the math, and a parent and its children should never be flipping money in opposite directions.
If you tap Add Category while a category is already selected on the screen, the new category opens with that category pre-filled as the parent. If the category you had selected is itself a sub-category, the new one is parented to its top-level ancestor, since the tree only goes two levels deep.
The Category Name has to be unique within the budget. The dialog will warn you if the name is already in use.
A budget can hold up to 250 categories. The cap is the same on the free tier and on Premium. When you reach it, the toolbar shows “Category limit reached (250/250 per budget).” and the Add button stops opening the dialog; delete an unused category to make room.
Editing a category
Tap a category in the list and tap Edit Category on the toolbar (or double-tap the row to open the edit modal directly). The dialog title changes to Edit Category. You can change the name, description, type, parent, and icon.
A few rules apply:
- Sub-categories show their type as read-only. The Type field still appears on the dialog, but with the parent’s type and the note (Inherited from parent). To change a sub-category’s type, change the parent’s type instead, or move the sub-category to a different parent.
- A category that has sub-categories cannot itself become a sub-category. The Parent Category field is disabled in that case. Move or delete the sub-categories first if you want to reparent the top-level category.
- Changing the Type of a category that has sub-categories cascades. A small note appears under the Type field: “Changing type will update all subcategories.” Saving applies the new type to the category and to all its descendants in one step.
Why are sub-categories not allowed to differ in Type from their parent? The constraint lives in three places at once: the parent picker only offers categories of the same type, the Type field is read-only on a sub-category, and a parent’s Type change overwrites every descendant. If a child were free to disagree, the cascade rule would have to either silently re-type the child or stop and ask, both of which produce surprises. Forcing alignment keeps the tree predictable: pick the parent’s type once, and every child is guaranteed to follow.
Changing the type of a category in use
You can change the type of a category that already has items in it. The app does not block this. But the change has consequences worth understanding before you save.
- Items filed under the category keep pointing at it. Their category does not change.
- Future transactions on those items will move money in the new direction. Flip an Expense category to Income, and the next transaction that lands will add to your balance instead of subtracting from it.
- Past transactions are not retroactively re-applied. Their effect on the account balance was already locked in when they were recorded, with the original type’s sign.
So if you flip an in-use category from Expense to Income, your historical balance will not auto-correct. The most reliable way to fix that is to flip the type back, then move the affected items to a different category if you wanted them somewhere else. Use type changes for categories you have not used yet, or be ready to re-anchor the affected account’s Current Balance after the fact.
Deleting a category
Open the category and tap Delete Category at the bottom of the dialog (or tap the trash icon on the toolbar). The Delete Category dialog opens and analyzes the impact: how many items are using this category, and whether it has sub-categories.
Three things can happen.
Sub-categories block deletion. If the category has any sub-categories, the dialog tells you so and the Delete Category button is not shown. The text reads: “[Name]” has N subcategor(y/ies). Please delete or move the subcategor(y/ies) first. Sub-categories are not auto-promoted or auto-merged. You handle them deliberately.
No items, no sub-categories: a clean delete. The dialog asks for confirmation and you can delete it directly.
Items are using the category. The dialog asks what to do with them. You have two choices, and which one you take depends on the Replacement Category (Optional) picker.
- Pick a replacement. The picker lists every other top-level or sub-category of the same type (Expense categories on a deleted Expense, Income on Income, Transfer on Transfer). Pick one and a helper line appears: Items will be reassigned to the selected category. When you confirm, the items move to the new category. Their schedules, transactions, and history stay attached to the items themselves; only the category they file under changes.
- Leave the picker empty. A warning appears: Warning: N items will be permanently deleted if you proceed without selecting a replacement. Confirming deletes the items along with the category, including their schedules and any pending transactions. This is the path for tearing down a side project you want completely gone.
If there is no other category of the same type to reassign to, the dropdown does not appear and a red warning replaces the helper text: Warning: N items will be permanently deleted with this category. Add another category of the matching type first if you wanted to reassign.
Why filter the replacement picker by type? Because reassigning across types would silently flip the direction of every item on the list. A former Expense item suddenly logged as Income would mean the next transaction added to your balance instead of subtracting from it, with no warning anywhere. Keeping the picker on-type means whatever you pick produces the same kind of math the items already had.
Why offer a replacement picker here, when deleting an account does not? An item belongs to exactly one category, so swapping the category on every affected item is a clean rename: the items keep their identities, schedules, and history. An item also references one or two accounts (Transfer items have a From and a To), and there is no equally clean swap for “this account is going away,” so the account dialog deletes the affected items outright. Categories have the simpler relationship, so they offer the simpler escape hatch.
What you keep across either delete path: every line you have ever resolved on the History page stays. History rows snapshot the category name, type, and icon at the moment you resolved them, so they remain readable even after the underlying category is gone. What you lose without a replacement: the items themselves, their schedules, and any pending events that had not yet been resolved.
What category to pick for a new item
Choosing a category for an item does three things.
- It tells the app whether the item raises or lowers your balance, or moves money between two accounts.
- It groups the item with its peers under one of the three section headers, and in any reports built around the category.
- It assigns the icon used in lists and on the planner.
When you are not sure, the right answer is usually “the one I would pick if I had to find this item three months from now.” Don’t overthink the tree. Eight to twelve top-level categories is plenty for most people.
The one mistake to watch for: filing an Income item under an Expense category by accident. The app reads the category’s type when the transaction lands, so a misfiled paycheck quietly subtracts from your balance every payday instead of adding to it. The give-away is the running balance moving the wrong direction. Edit the item to point at an Income category, and future events will be fine. For past transactions already filed under the wrong category, you can either re-anchor the account’s Current Balance to your bank’s number, or delete and re-add the affected events under the correct item.
Who can edit categories
Anyone with edit access to the budget can add, edit, or delete categories. Viewers see the same list but the toolbar’s Add, Edit, and Delete buttons are greyed out, and opening a category shows it as View Category with every field read-only. The budget owner has edit access by default. Permissions are managed on the Sharing page.
If two people on a shared budget edit the same category in the same moment, the second save is rejected with a brief notice and the second editor is asked to refresh and try again. See History and Undo for the broader conflict-resolution flow.
Quick reference
| If you want to… | Do this |
|---|---|
| Add a top-level category | Categories segment, Add Category, set Name and Type, leave Parent Category as None (Top-level), save |
| Add a sub-category | Tap a top-level category first, then Add Category; the parent and type are pre-filled |
| Rename a category, change its icon, or its description | Tap the category, Edit Category, change the field, save |
| Reorder categories or move them between parents | Drag and drop in the tree; the new order saves immediately |
| Change the type of a category with sub-categories | Edit Category, change Type; the cascade updates all sub-categories |
| Move a category to a different parent | Edit Category, change Parent Category; only available if it has no sub-categories of its own |
| Reassign all items from one category to another, then delete the original | Delete Category, pick a Replacement Category of the same type, confirm |
| Delete a category and every item under it | Delete Category, leave Replacement Category empty, acknowledge the yellow warning |
| Recover from a wrong-type item | Edit the item to point at a category of the correct type; re-anchor the account’s Current Balance if past balances drifted |
| Add more than 250 categories | Not possible; the cap is 250 per budget on every tier |
Behind the scenes
Skim past this section on a first read; it explains a few mechanics you can sometimes feel without needing to know them.
Category colours come from your theme. You pick the icon; you do not pick the colour. The colour is computed at render time from the theme palette and the category’s position in the tree. Income categories use the palette’s income colour. Expense and Transfer categories use the palette swatches in the order their top-level parent appears. Sub-categories use a lightened version of their parent’s colour, so a parent and its children read as a family. Reordering changes which swatch each top-level category gets; switching themes restyles every category at once.
The sign of a transaction is looked up at the moment it is applied, not stored alongside the amount. When a transaction lands or is removed, the app reads the linked item’s category Type and applies the signed change to the account balance directly. That is what makes the “fix the wrong-type item by changing its category” recipe work for future transactions; it is also what makes Type changes on an in-use category not retroactive (past changes were already written with the original sign).
The categories deletion runs as one transaction. When you confirm, the app reassigns or deletes the items, removes any sub-categories, and deletes the category itself in a single atomic step. Either all of it succeeds or none of it does, so a half-deleted state is not a thing the dialog can leave you in.
Most AI features do not run on this page. AI Budget Generation creates categories for you when you set up a new budget (see the Subscription page for the AI overview); AI Match Review reads each item’s category Type to decide which way the matched transaction moves the balance (see Matching and Resolving). The Categories segment itself does not call AI: every category here is one you added or edited directly.
Related pages
- Items: every item lives in exactly one category.
- Accounts: Type on the category tells the app which way an account’s balance moves; deleting an account follows a different cascade rule than deleting a category.
- Matching and Resolving: how a category’s type drives the balance change at each transaction.
- Reports: categories are the grouping the reports use.
- Sharing: who can edit categories on a shared budget.
- History and Undo: what survives when you delete a category, and the conflict-resolution flow when two people edit at once.
- Concepts: the short definitions of item, event, transaction, category, and account.