Kayabyte

How to import a bank statement into Actual Budget

By Kayabyte · Last updated 28 October 2026

Actual Budget is a local-first budgeting app. Many people use it without bank sync, which means every transaction comes from a file you import yourself. Actual can import transactions from files such as OFX, QFX, QIF and CSV, but not from a PDF. This guide covers both the easy case, where your bank gives you a file, and the harder one, where you only have PDF statements.

Labels in Actual differ between versions, so use the menu names below as a guide.

1. If your bank offers a download

Look for CSV, OFX, QFX or QIF on your bank’s transaction page. OFX and QFX are best: they carry a unique ID per transaction, which Actual can use to avoid importing the same transaction twice. CSV has no such ID, so Actual matches duplicates by date, amount and payee, which is weaker.

In Actual, open the account and use the import option (look for “Import” at the top of the account page). Choose the file. For CSV, Actual shows a mapping screen where you choose which column is the date, payee, notes and amount, or separate debit and credit columns, and you set the date format. Check the preview, then import.

2. If you only have a PDF

Do it by hand in a spreadsheet:

  1. Copy the transactions out of the PDF, paste into Excel or Numbers, and split into columns.
  2. Delete page headers, footers and balance-brought-forward lines.
  3. Join any description that wrapped onto a second line.
  4. Make one amount column, negative for money out. Or keep separate debit and credit columns, which Actual’s CSV import can map.
  5. Use one date format throughout, and note whether it is day/month or month/day. You will need to tell Actual.
  6. Save as CSV and import as above.

3. Limits of the manual way

To catch lost rows, sum your amounts, add the opening balance, compare to the closing balance on the statement. Do this before importing, not after.

4. Where Balanced helps

Balanced is a Mac app we make. It reads PDF statements (text PDFs, plus scans and photos through Apple’s on-device text recognition) and CSV or TSV files from any bank, with headers and months in 10 languages. The preview shows the table it found, and you can fix column roles, date order and sign handling. It remembers each bank’s layout, so the next month’s statement from the same bank is quicker.

Then it checks the totals: opening balance plus transactions equals closing balance, and the running balance per row when the statement has one. If it doesn’t add up, Balanced tells you which rows and the difference, and exporting needs an explicit “Export anyway”.

From the Export button, choose the Actual Budget format. If you’d rather import OFX, QFX or CSV into Actual, those are available too. There is no AI guessing: every number is copied from your statement and checked. Everything runs on your Mac, and statements never leave it.

Limits: it depends on layout, so look at the preview; low-quality or heavily skewed scans can fail; a password-protected PDF must be unlocked first with the password from your bank. We can’t promise every bank works.

Download Balanced and convert for free: the free version converts and checks everything and exports the first 10 transactions per file. Pro is USD 59 per year or USD 7.99 per month for up to 3 Macs. See pricing and help. macOS 14 or later.

5. Tips for a clean start