Bank statement to Actual Budget
Actual Budget imports CSV files and lets you match the columns. Upload your statement and the file comes out with Date, Payee, Notes, Category and a signed Amount, so the mapping is one click per column.
Upload a file
What the Actual Budget CSV contains
- Columns: Date, Payee, Notes, Category, Amount
- Dates as YYYY-MM-DD
- A signed amount — negative for spending, positive for income
- The statement description as the payee
What Actual Budget expects
Actual Budget reads CSV, OFX, QFX and QIF, and asks you to match CSV columns on import. The names here are the ones Actual uses, so the matching is obvious.
Notes and Category are left empty for you to fill in Actual.
How to convert
Upload your statement
Drop in the PDF or CSV you downloaded from your bank.
Keep Actual Budget selected
The Actual Budget layout is preselected on this page.
Import into Actual Budget
In Actual, open the account, choose Import, pick the CSV and confirm the column matching.
Statements it handles
Layouts differ from bank to bank, so nothing is matched against a fixed template. An unusual statement still produces a table you can check before exporting — which is what makes it usable for bookkeepers and accountants who receive statements from every client.
PDF statements and CSV exports
A statement downloaded from your bank, or the CSV your bank lets you export. Both arrive as the same clean table.
Multi-page statements, read as one table
A statement that runs over several pages — or several statements uploaded together — is read as one continuous table, not one file per page.
Amounts and dates kept as your bank prints them
Debit and credit signs, decimal places and date formats are left as printed, so the numbers still reconcile against the statement.
Scanned, image-only PDFs, read with OCR
A statement with no text layer is read with OCR and may need a quick review — the one case where a row can come out wrong.
- CSV
- Scan
Why this is more accurate than OCR
OCR reads a statement by position on the page, so a wrapped description or a pair of narrow amount columns sends the text to the wrong row. Reading the content instead of the coordinates is what keeps each transaction whole.
01
A wrapped description becomes two rows
The second line of a description sits below the first, so it is read as a new row — and the amount follows it down, onto the wrong transaction.
02
Debit and credit collapse into one column
Two narrow amount columns are read as one, so a payment and a deposit come out identical — the sign that told them apart is gone.
03
The totals block becomes transactions
Opening balance and closing balance are printed like rows, so they are read like rows — and land in your books as money that never moved.
Why OCR mangles bank statements — the four failures in detail.
Frequently asked questions
How do I import a bank statement into Actual Budget?
Convert the statement here with the Actual Budget layout selected, then use Import on the account in Actual and pick the CSV.
Does Actual Budget accept PDF statements?
No — it imports CSV, OFX, QFX and QIF files. Convert the PDF here first.
Is my statement kept after conversion?
No. The file is used only to produce your converted copy and is deleted right after.
Do I need an account?
No. The converter works without signing up.