How to convert a QBO or OFX file to CSV
You have a .qbo, .ofx or .qfx file from your bank and you want the transactions in a spreadsheet. Double-clicking it does nothing useful, and Excel either refuses it or makes a mess. This is the other direction from the rest of this site, and it takes about ten seconds.
🔒 Drop your QBO or OFX file into the converter — free, runs in your browser, the file is never uploaded.
First: which "QBO" do you mean?
The word does double duty, and the two answers are completely different.
- A
.qbofile — a Web Connect bank file, usually downloaded from your bank's website to feed into QuickBooks. That is what this page is about. - QBO as shorthand for QuickBooks Online — if you want to get reports or transactions out of the QuickBooks Online app, that is an export inside QuickBooks itself (Gear icon → Export data, or Export to Excel on a report), not a file conversion. No tool on this page will help with that.
What is actually inside a .QBO file
It is plain text, not a spreadsheet and not a binary document. A QBO file is OFX version 1 inside: a short key-and-value header, then SGML tags, one block per transaction. Open one in Notepad or TextEdit and you will see something very close to this:
OFXHEADER:100
DATA:OFXSGML
VERSION:102
<OFX>
...
<STMTTRN>
<TRNTYPE>DEBIT
<DTPOSTED>20260401
<TRNAMT>-82.40
<FITID>20260401-0001
<NAME>DIRECT DEBIT ACME LTD
</STMTTRN>
That explains why Excel is no help: there are no rows and no columns to find, so a spreadsheet either shows you the tags or splits them into nonsense. The transactions are all there, just wrapped in markup. A .ofx file is the same thing without the QuickBooks-specific tags, and a .qfx file is the same thing with Quicken's.
Why the obvious answer does not work
Ask Intuit's own community and the official reply is to open the .qbo file and pick CSV from the Save as type list (How do convert .qbo file into .csv, QuickBooks Community). The catch is in the next sentence of that same reply: if this option isn't available, consider a third-party application. For most people the option is not available, because nothing installed on a normal computer opens a .qbo file and offers to save it as a spreadsheet. The next answer in that thread points at a paid converter.
So the practical answer is a converter. The ones that come up first are desktop programs with a licence fee or a trial capped at ten transactions. This one is a web page, it is free, and it has no row limit.
The steps
- Open the converter and drop your
.qbo,.ofxor.qfxfile on it. Nothing is uploaded — the file is read by JavaScript running on your own machine. - Check the preview. You will get Date, Description, Amount, Type, Check number, Memo and FITID columns, with dates shown as YYYY-MM-DD so there is no day-versus-month ambiguity to misread.
- Choose Spreadsheet CSV — every column, exactly as read as the output and download. It opens straight in Excel, Numbers, Google Sheets or LibreOffice, with nothing dropped. (The two Clean CSV options exist for a different job: they are trimmed to the three or four columns an importer will accept.)
If the file holds more than one account, the converter adds an Account column rather than quietly merging them into one list.
What comes out, and what does not
A bank file of this kind contains a list of transactions and a balance. It does not contain your chart of accounts, your categories, your splits or your attachments, so no converter can produce those from it. What you get is what the bank put in: the posting date, the amount, the payee or memo text, the transaction type, a cheque number when there is one, and the FITID.
That last column is worth keeping. The FITID is the unique id your accounting software uses to recognise a transaction it has already imported, so it is the thing to match on if you are reconciling two exports by hand.
The other reason to read a QBO back in
If QuickBooks is refusing to import a .qbo file it has seen before — the import says it worked and nothing appears — that is the FITID doing its job too well. Drop the file in here, tick "Re-importing a statement QuickBooks has already seen?", and download it again as a QBO. Every transaction gets a new id, so QuickBooks treats them as new.
The full explanation of that problem, including Intuit's own description of why it happens, is in its own guide. The usual workaround people are given is to hand-edit the file in a text editor and find-replace every id, which works but is miserable on a statement with 300 lines.
Converting to something other than CSV
Once the file is open in the converter, every output is available, so this doubles as an OFX-to-QBO or QBO-to-QIF converter:
| Output | Good for |
|---|---|
| Spreadsheet CSV | Excel, Numbers, Google Sheets. Every column the file contained, nothing dropped. |
| Clean CSV | Importing into QuickBooks Online or Xero, which want a short fixed set of columns. |
| .QBO | Re-importing into QuickBooks, with or without fresh ids. |
| .OFX | Xero and other accounting software that reads OFX but not QBO. |
| .QIF | Older desktop finance software that reads nothing else. |
Is it safe to put a bank file into a web page?
It is a fair question and the honest answer is to check rather than trust us. The conversion is done by JavaScript in your browser; the file never leaves your machine. Open your browser's developer tools, go to the Network tab, and convert a file: you will see no upload. The only request the page makes on its own is a small anonymous counter ping carrying counts and yes-or-no flags — how many rows, whether the columns were detected — and never a cell value, a header name or a file name. You can block it and the converter still works.
New here and want to see it work first? Try the sample statement.
Sources
- How do convert .qbo file into .csv — QuickBooks Community thread, including the moderator reply recommending a third-party application.
- Re-import Web Connect file issue — QuickBooks Community, on the unique identifier that blocks a second import.