Guide
How to import bank and credit card statements into YNAB
YNAB can import transactions into a bank or credit card account from a CSV, OFX, QFX or QIF file, and it recommends CSV. It cannot read a PDF statement. This page covers a YNAB CSV import for a bank account and a credit card account: the file YNAB expects, what changes for a card, the errors that stop an import, and a recorded walkthrough of the whole thing. MatchLedger reads your statement from a PDF, CSV or Excel file. It then writes the CSV that YNAB imports. See how MatchLedger works.
Recorded September 2026
What the walkthrough says
Recorded September 2026
- From bank statement to categorized and reconciled transactions, with no manual entry. MatchLedger extracts your statement and exports it in a YNAB-ready format, so YNAB can import, categorize, and reconcile it for you. Click to get started.
- Upload your bank statement to get started.
- Select your statement file.
- Click Upload. MatchLedger takes it from here.
- Feel free to close this. We'll email you when it's ready.
- Let's start by exporting your transaction data as a downloadable file.
- Choose the accounting platform so the export gets formatted the right way.
- Go with YNAB - Bank here, so the file comes out formatted exactly the way YNAB needs it.
- Grab the finished export and store it locally for the next step.
- Now that your CSV is downloaded, head over to YNAB and choose the account you'd like to upload it into.
- Kick off the process for bringing outside records into your ledger.
- Locate the document you saved earlier and pick it for upload.
- Point the tool toward the column that holds outgoing amounts.
- Do the same here, but for money that's coming in.
- Finish things off so everything gets pulled into your register.
- Acknowledge the result and move on to sorting each entry.
- On this first upload, you'll need to set a category yourself. Once done, the system remembers the pattern, so on your next upload, any matching transaction gets categorized automatically.
- With categories in place, you're ready to reconcile. Go ahead and click this button.
- Approve this figure once it lines up with what your bank shows.
- And that's it, you're all done.
- Now your entire statement is categorized and reconciled in YNAB. Matching payees remembered automatically, any new ones assigned with a click, even across hundreds or thousands of transactions. That's MatchLedger: from bank statement to accurate books, in minutes instead of hours.
The file YNAB accepts
| What | What YNAB needs | What MatchLedger's export writes |
|---|---|---|
| File type | A CSV, OFX, QFX or QIF file, with CSV the recommended format. No PDF. | A CSV file. Several statements at once come back as a ZIP with one CSV per statement. |
| Columns | YNAB matches each column of the file to one of its fields, Date, Payee, Memo, Outflow and Inflow, and you can change any match in the import preview. A file with no heading row needs the No header row option. | Four comma-separated columns with a heading row: Date, Payee, Memo, Amount. Payee holds the statement's description and Memo is left blank. |
| Amount layout | Separate Outflow and Inflow columns, or one Amount column that you choose for both the Outflow and the Inflow field. | One signed Amount column, chosen for both Outflow and Inflow. |
| Amount sign | In a single Amount column, a negative amount is an outflow and a positive one an inflow. If they come in reversed, the Swap Inflow and Outflow option turns them round. | Bank: withdrawals negative, deposits positive. Card: charges negative, payments and credits positive. |
| Date format | YNAB documents no fixed date format. It checks a CSV after upload and builds the import preview from what the file contains, so check the dates there before you import. | MM/DD/YYYY for a statement written month first. A statement written day first exports as YYYY-MM-DD. |
| Limits | No published row or file size limit. YNAB advises against importing transactions more than a year old, and it skips any dated more than three days before the account's last reconciled transaction. | One CSV per statement, so each file covers one statement period. |
Pick YNAB when you export from MatchLedger and the file comes out in this shape, with headings named after YNAB's own Date, Payee and Memo fields. Both of its YNAB exports, bank and card, are marked Verified in the app, each checked with a live import into YNAB. See the supported exports.
Importing a credit card statement
- It goes into a credit card account. A card is a liability, so its statement belongs in a credit card account, not a bank account. In YNAB that is an account of the Credit Card type, which comes with its own Credit Card Payment category, and a card statement goes into it through the same file import as a bank account's.
- The signs flip. On a card, a charge increases what you owe and a payment reduces it, the opposite of a bank account, and YNAB expects its own convention for which is which. YNAB reads a card file the same way as a bank file: a negative amount is an outflow, which on a card is a charge, and a positive one an inflow, a payment or refund. A file signed the other way round can be corrected with the Swap Inflow and Outflow option.
- A card payment is a transfer. The payment leaves your bank account and arrives on the card, so it shows up on both statements. Match it once as a transfer, rather than booking it twice as an expense and as income. YNAB records a card payment as a transfer between the two accounts. The first one you import may arrive as two unrelated transactions, an outflow in checking and an inflow on the card. Set it once as a credit card payment and YNAB recognizes later payments with the same payee.
MatchLedger's YNAB card export writes charges as negative amounts and payments as positive ones, and a live import into YNAB brought them in as outflows and inflows with no swap needed. See the export formats.
Common YNAB import errors
Why does YNAB say Invalid File when I import my bank statement?
YNAB's file import reads only CSV, OFX, QFX and QIF files, so any other file, a PDF statement included, is rejected with an Invalid File warning. Turn the statement into a CSV first. MatchLedger reads the PDF and writes a CSV in the shape YNAB imports.
How do I import a CSV with one Amount column into YNAB?
Choose that Amount column for both the Outflow and the Inflow field in the import preview. YNAB reads the sign of each amount, so there is no need to split the file into two columns. If every amount lands on the wrong side, turn on Swap Inflow and Outflow. MatchLedger's YNAB export is one signed Amount column, written for exactly this.
Why did YNAB skip transactions when I imported my CSV?
YNAB skips an imported transaction with exactly the same date and amount as one already imported, so a statement that overlaps an earlier file only brings in what is new. It also will not re-import transactions you imported and then deleted, and it ignores any dated more than three days before the account's last reconciled transaction. The import preview lists what it skipped and why. For transactions it will not take back, enter them by hand.
Why are my credit card charges showing up as inflows in YNAB?
The file signs them the other way round, with charges positive, and YNAB reads a positive amount as an inflow. Import it again with Swap Inflow and Outflow turned on, or bring in a file where charges are negative. MatchLedger's card export writes charges as negative and payments as positive, and a live import into YNAB brought them in as outflows and inflows.
Why does my YNAB CSV import show a CSV File Error or No Transactions?
A CSV File Error usually means stray quotation marks or other characters in the file, so download it again or clean them out. No Transactions means YNAB found no row with both a date and an amount other than zero, or skipped every row it found. If the first row of the preview shows transaction data where the column names should be, the file has no heading row and needs the No header row option.
Imported is not the same as reconciled
An import checks the shape of the file, not whether it holds every transaction the statement lists. Once the month is in YNAB, reconcile the ledger back against the statement itself, so a missing or duplicated transaction shows up before you close the month rather than after. Extraction gets the data in. Reconciliation is what lets you say the month is right. See how MatchLedger does both.
Turn your bank and credit card statements into a CSV for YNAB, then reconcile the month against the statement.
Start FreeOnly one statement to do? Convert it with the free converter.