How categories work
On this page
Pennyweight has no built-in category list. Your categories are the names on your transactions, so they match the way you already sort your money. For the bigger picture, start with how Pennyweight works.
Where categories come from
A category exists as soon as a transaction carries it. There is nothing to set up first.
- You, through your AI. When you ask your AI to put a transaction in a category, it saves the name you gave. A new name becomes a new category on the spot.
- Imports. When you import a file with a category column, each row keeps the category from the file, word for word, unless one of your rules matches the row. A matching rule wins. A row with no category and no matching rule stays uncategorized.
- Your bank feed. Linked bank transactions arrive with the bank data provider's codes, such as
FOOD_AND_DRINK. A transaction that comes with no code getsOTHER. - Rules. A rule gives matching transactions the category you chose for it. New transactions get it on their own: imported rows when the import is saved, transactions your AI adds without a category, and bank transactions when they're brought in at your next app open or AI call. For transactions you already have, ask your AI to apply your rules.
When more than one of these has set a category on the same transaction, a fixed order decides which one shows: your own choice first, then a rule, then an imported category, with the bank's code last. Who wins: you, your rules, or the bank explains the details.
Uncategorized transactions
A transaction with no category is marked UNCATEGORIZED. That marker is not a category, so it never shows up in your category list. Your AI can still find and count these transactions for you. See rules or a one-time cleanup.
Your category list
When you ask your AI which categories you use, it returns each distinct name once, in alphabetical order. By default it covers the ledger you have open. Your AI can also combine the lists of all your ledgers, leaving out demo ledgers. If a demo ledger is the one you have open, the combined list covers only that demo. The list holds the categories that you, your imports, your rules and your bank feed have written.
- A new ledger starts with an empty list.
- The list only grows. A category stays listed after no transaction uses it.
- Names are case-sensitive.
Groceriesandgroceriesare two different categories, and a search for one won't match the other.
On the web
The Categories page in the web app shows every category in use in the ledger you have open, with the number of transactions and the net total for each. It counts one currency at a time: the ledger's own currency, or the account's currency when you filter to one account. You can filter it by account and date range. Uncategorized transactions are listed last. The page is view-only: you can't rename or merge categories there.
How to see it
- Ask your AI which categories you use.
- Ask how many transactions are still uncategorized, and which merchants they belong to.
- To fix a near-duplicate, ask your AI to move the transactions from one name to the other. Change a transaction's category walks through it.
What categories am I using?
How many of my transactions are still uncategorized, and which merchants make up most of them?
Move all my Daily Grind Coffee purchases into a new category called Coffee, then show me my category list.
What you'll see
For the first question, your AI lists your category names in alphabetical order. For the second, it gives a count of uncategorized transactions and names the merchants behind them. For a move, your AI first shows which transactions will change and asks you to confirm. Once you confirm, the new name appears in your category list.
Good to know
- Moving every transaction off a category does not remove that name from the list your AI sees.
- A category named
TRANSFER,TRANSFER_INorTRANSFER_OUT, in any letter case, marks an unlinked transaction as a transfer. It is then left out of spending and cash flow. See transfers aren't spending. - Changing a category that you, a rule or your bank set, on a transaction changed in the last 90 days, makes your AI ask you to confirm first. See why your AI asks before changing a category.
- If your list looks empty or full of names you no longer use, see my category list is empty or has old entries.