Expense categorizer
@ledgerly/expense-categorizer
Categorize a bank or card CSV export with a rules file you can edit. Writes a categorized CSV, spend by category and by month, and a review list of unknown merchants with suggested rules. Offline and repeatable.
- Activity
- New: be the first to try it
- Installs
- 0 installs
- Likes
- 0 likes
- Clones
- 0 clones
- 1# Expense categorizer
- 3Categorizes a bank or card CSV with a rules file you own, then shows spend by category and month. Anything it cannot place goes on a short review list, with a suggested rule so next month is automatic.
- 5**Who it is for:** founders and ops or finance folks who do the books from bank exports, prep for month-end close, or need real burn numbers for a budget or runway model.
- 7## Example
- 9Input: `examples/transactions.csv` (38 bank transactions over two months) and `examples/rules.csv` (about 40 starter rules).
- 11Output (`out/expenses-summary.md`):
- 13```
- 1438 transactions. Money out $288,703, money in $202,667. 99.6% of spend matched a rule.
- 16| Category | Total | Share |
- 17| Payroll | $246,701 | 85.5% |
- 18| Rent and office | $8,400 | 2.9% |
- 19...
- 20## Needs review
- 21| AMZN MKTP US | out | 3 | $428.57 | AMZN MKTP US*2K4LL | `amzn mktp us,<category>,contains` |
- 22```
- 24Plus `out/expenses-categorized.csv` with the category and matching rule for every row.
- 26## What it can access
- 28- Runs `node scripts/categorize.mjs` (Node built-ins only).
- 29- Reads exports in `data/`. Writes `data/expense-rules.csv` (only rules you confirm) and `out/expenses*`.
- 30- No network, no bank logins, no API keys.
- 32## Setup
- 34Export transactions from your bank or card as CSV into `data/`, then ask Claude to categorize them. It starts you off with the example rules.
