Skip to content
Files never leave your browser

QIF to CSV converter

Open a .qif file and export it as CSV — a readable spreadsheet of dates, payees, memos and signed amounts. Free and entirely in your browser.

Drop your .qif file here

QIFCSV or click to choose a file

100% private · never uploaded
No upload No signup No install
You have.qifQIF

Quicken Interchange Format — the plain-text transaction format Quicken, GnuCash, Moneydance and MoneyMoney all import.

You need.csvCSV

Plain comma-separated text. The universal import format for Xero, Wave, FreshBooks and QuickBooks Online.

Getting your data out of an old QIF

QIF files outlive the software that wrote them. A decade of Quicken history, a GnuCash export, an archive from a bank that no longer offers downloads — the data is right there in plain text, but it is one field per line with single-letter codes, which no spreadsheet will open usefully.

This converter turns each record back into one row: date, description, amount. Then you can filter it, sum it, chart it, or feed it into whatever you use now.

Payee and memo are both kept

A QIF record can carry a P (payee) and an M (memo) line, and they often hold different halves of the story — "AMZN Mktp US" in one, the order reference in the other. Converters that read only P throw away the more useful field. We join both into the description so nothing is silently dropped.

Dates are normalised on the way out

Quicken's own exports use an apostrophe for the century: 12/31'24 rather than 12/31/2024. Two-digit years, dotted European dates and day-first orderings all appear in QIF files in the wild. Each is normalised to a four-digit-year MM/DD/YYYY before it reaches the CSV, so Excel and Google Sheets read the column as dates instead of text.

Or take Excel or JSON instead

The Excel download writes real numeric amounts, so SUM and pivot tables work without a text-to-columns step. The JSON download gives ISO-8601 dates and numeric amounts — the right shape if you are scripting the analysis or loading it into a database rather than reading it by eye.

Nothing is uploaded

The file is read in this browser tab with JavaScript and converted on your machine. There is no upload, no queue, no server-side copy and no account to create. A transaction export carries your account number, your salary and everyone you pay — the safest converter is the one that never receives the file at all.

You can verify it: open your browser devtools, switch to the Network tab, and convert a file. Your file is not among the requests — the only traffic is an anonymous analytics ping that records that a conversion happened, never what was in it.

Starting from a PDF statement instead of a file? The PDF bank statement converter reads the statement itself and exports CSV directly, so you do not need a QIF in the middle. Both tools run in the same tab, and neither uploads anything — here is how that works.

FAQ

QIF to CSV, answered

How do I open a QIF file in Excel?

Excel cannot open QIF directly. Convert it to CSV or Excel here first, then open the download. The Excel export is the better option if you want to run formulas, because the amounts arrive as numbers rather than text.

Will it read a QIF exported from Quicken?

Yes, including Quicken's apostrophe century format (12/31'24) and two-digit years. Bank transaction records (!Type:Bank) are supported; investment records with security names and share counts are not.

Is there a balance column?

Usually empty. QIF records carry an amount per transaction but no running balance, so there is nothing to populate it from. The amount column is complete and correctly signed.

Does this work on a Mac or an iPad?

Yes. It is a web page, not an application — anything with a modern browser works, including Safari on macOS and iPadOS. There is nothing to install.

Is the file uploaded to convert it?

No. The QIF is read and rewritten in this browser tab. Watch the Network tab of your devtools while you convert: your file is not among the requests.

More converters

Every format pair we convert

The same private, in-browser conversion for each one.