NAB · Categorised export
Categorise NAB Statements by Spending Type
NAB statement PDFs go in, a CSV with a Category column comes out. Built for NAB's statement formatting specifically, including a text extraction quirk unique to some NAB credit card PDFs.
Supports PDF files up to 10MB
What comes out
| Description (from statement) | Category |
|---|---|
| KFCAU PRAHRAN PRAHRAN | Dining & Takeaway |
| XEROAUSTRALIAPTY MELBOURNE | Subscriptions & Software |
| NAB EQUITY LENDING | Loan & Mortgage |
| CHEMIST WAREHOUSE | Health & Fitness |
Real examples from NAB statements used during testing.
A real NAB parsing bug this uncovered
Some NAB credit card statements extract with zero spaces anywhere in the text at all, a quirk of how the PDF was generated rather than anything to do with categorisation. "KFC AU Prahran Prahran" comes out as "KFCAUPrahranPrahran", and "Shanghai Street No 2 Melbourne" comes out as "SHANGHAISTREETNO2MELBOURNE". No category rule can reliably parse that, so the fix happens a step earlier: the converter rebuilds the transaction text from the PDF's word position data instead of its plain text extraction, which restores the spacing before categorisation ever runs. Balance validation on these statements passes correctly as a result, where it previously couldn't check itself against corrupted description text.
This is specific to NAB's credit card statement layout. NAB savings and interim statements use a different, already word-position-aware parsing path and weren't affected by it.
Separately, NAB is also where a business merchant naming issue turned up: "XEROAUSTRALIAPTY" (Xero's own subscription charge, with no spaces) wasn't matching a rule that expected "xero" as a whole word. It's now matched as a substring instead, so it's picked up regardless of what's concatenated around it.
Categories used
Every category comes from a fixed list of keyword and pattern rules, not a model guessing at intent. Anything that doesn't match a rule is left as Uncategorised rather than assigned incorrectly, so you can see exactly what still needs a manual look.
Built without AI
Categorisation runs as static pattern matching in the same request that already parses your PDF. Your NAB statement is never sent to an AI model to work out what your transactions mean, and nothing about your spending is stored afterwards to train one. It's a fixed set of rules, applied the same way every time.
What Our Customers Say
“Banks like Westpac only let you download CSV files for the past 18–24 months. If you need older data, you're stuck downloading PDFs and manually extracting transactions from pages of formatting and bank jargon. That job is a real slog. Your product handled it instantly and gave me clean data.”
Mark
Manufacturing, former HR/Finance Systems Consultant
“As someone preparing tax returns, going through PDF bank statements manually is a real hassle. This tool dumps everything into Excel format instantly. Huge time-saver.”
David
Director, Tax & Accounting Firm
“Great tool for dealing with PDF statements from clients. The data comes out clean and ready to import, which saves a lot of repetitive work. I had one client with statements going back several years, and this handled them all without a hitch. Highly recommend for accountants and bookkeepers.”
Tamara
Bookkeeper, Self-Employed
“Converted several years of bank statements in minutes and saved me a lot of effort. I initially wasn’t sure if it would handle my older statement formats, but once I tried it, it worked well. Would recommend if you’re dealing with PDFs.”
James
Owner, Construction Company
Questions
Does this use AI to categorise my NAB statement?
No. Categories are assigned with static keyword and pattern matching, not a language model. Nothing in your statement is sent to an AI provider, and nothing is stored to improve a model over time.
How accurate is the categorisation?
On real NAB statements tested during development, coverage sits around 62–79% of transactions, depending on account type and how many one-off, unpredictable merchant names appear. Anything not matched is labelled Uncategorised rather than guessed at.
Can I edit the categories afterwards?
Yes. The CSV is a normal spreadsheet column, open it in Excel or Google Sheets and adjust anything that isn't quite right before you file it or hand it to your accountant.