Free QIF to CSV Converter Online

Turn a Quicken, GnuCash or Moneydance .QIF export into comma-separated tables, with every transaction and each of its splits written as its own row.

What comes back is not one table. A QIF declares its account and its categories apart from its transactions, and the table those become types every category as an expense, the income ones included.

Embed this converter on your website for free

Choose your file

Drop your .QIF file here

a Quicken, GnuCash or Moneydance export

Your file is never uploaded. We never receive it or store it.

A QIF Is Not One Table

A QIF converter reads a Quicken Interchange Format export and writes it out as comma-separated tables. What a QIF to CSV conversion hands back is not one table. A QIF declares its account in one block and, where it has them, its categories in another, and neither of those is a transaction. The transactions become one table. The account and the categories become a second.

That second table is the one to look at before anything downstream reads it. A QIF category list is only names. The block carries an I or an E to say income or expense, and the converter reads past both, so every category arrives typed as an expense.

It is one column, in one table. The names themselves are correct, spelled the way your program wrote them, and the transactions are untouched by any of it. Sorting on that column and correcting the income rows is a minute of work, and it is a minute worth spending while the file is still on your own screen.

What your QIF declares, and what the second table says it is

In the QIF

!Type:Cat
the category list opens
NOffice Supplies
a name, and it is read
E
expense, and it is read past
^
the entry closes
NConsulting Income
a name, and it is read
I
income, and it is read past
^
the entry closes

In the second table (ACCNT)

The ACCNT table written from that block, with the type column the converter asserts
NAMEACCNTTYPE
CheckingBANKread from the account block
Office SuppliesEXP
Consulting IncomeEXPstated as an expense

Only the N lines are read out of a category block. The I and E lines that say income or expense are read past, so every category name is written into the second table with ACCNTTYPE set to EXP. The account keeps the type its own block gave it, which leaves one column, on the category rows, to check.

What Comes Back

A QIF to CSV conversion hands back two tables, because a QIF holds two kinds of thing.

  1. The Transactions Table

    One row per split, each carrying its transaction's date, payee, reference and total beside it. The columns are prefixed TRNS. and SPL. so you can tell which side of the entry a value came from, and a Txn number at the front groups the rows that belong to one transaction.

  2. The Account and Category Table

    Named ACCNT, with two columns, NAME and ACCNTTYPE. It opens with one account row, the last account the file names for itself, and then lists every category the !Type:Cat block declared. No amounts and no dates: it is a list, not a record of anything.

  3. How Many Files Come Back

    One table downloads as one file, and several arrive together as a .zip with each also listed on its own by name. It is the same mechanism the IIF to CSV Converter explains in full. Combining and the raw tables decide the count; the separator decides whether each one is a .csv or a .tsv.

How to Convert QIF to CSV

Four steps, and the file never leaves your computer at any of them.

  1. Drop Your .QIF

    A Quicken, GnuCash or Moneydance export, or the same file saved with a .txt extension. It is read where it sits, so there is no upload and no sign-up.

    .qif · .txt

  2. See What Is in It

    The transaction count and the number of list tables appear straight away, beside the first table's columns and rows and any warning the file raised. Nothing is written until you ask for it.

    counts and warnings first

  3. Choose the Shape

    Each split on its own row beside its transaction is what you get unless you say otherwise. Turn the combining off for the raw TRNS and SPL tables instead, or keep both. Comma, semicolon or tab, and the tab is the one that writes a .tsv.

    one table, or the raw tables too

  4. Download

    One table downloads as one file. Several arrive as a .zip, and each is listed by name as well, so you can take only the one you need.

    one file, or a .zip and each

Fix the Category Column First

One column in the second file is stated rather than read. It takes a minute to fix.

  1. The Names Are Already Right

    Every category name in the second table comes straight out of the file's own !Type:Cat block, spelled the way your program wrote it. Nothing is renamed, merged, abbreviated or invented on the way through, so the only thing to correct is the column beside them.

  2. Only the Type Is Asserted

    ACCNTTYPE reads EXP on every category row, because a QIF category is only a name by the time it reaches that table. Sort on the column, correct the rows that are income, and the file is right. The account row is not part of this: it keeps the type its own block gave it.

  3. The Transactions Are Unaffected

    The transactions table carries a category as a name, in SPL.ACCNT, and nothing in it reads a type column. Correcting the second table changes nothing about the first, so the two can be handled in either order and neither one waits on the other.

If a person is going to read this rather than a system, take the workbook instead. An .xlsx sits in the download list on this page, and the QIF to Excel Converter is the page that explains what a workbook does with the amounts.

If the Export Is Monthly, So Is the Conversion

One export is a job you finish. The same export every month is a routine.

When the free converter is the right tool and when a managed workflow is
NeedThis converterAutymate
One QIF read into a spreadsheetFree, now, and nothing to sign up forNot what it is for
The same export every monthThe same upload and the same download, by handScheduled, with nothing to upload and nothing to collect
The category column correct on arrivalSorted and corrected again after every conversionMapped once, and the mapping is what runs each period
The same columns every timeWhatever this month's file happens to populateAn agreed set of fields, so what receives it does not have to guess

The Columns Are Not the Same Every Time

The honest limit: this file's shape depends on this file, not on the format.

  • Only What the File Populated

    A column is kept when some row fills it, plus four that are always kept: TRNSTYPE, DATE, ACCNT and AMOUNT. Two exports out of the same program need not have the same header row, because one month's file carries memos or check numbers and the next one does not.

  • A Fixed Template Breaks Quietly

    Nothing errors when a column is absent. It is simply not there, and whatever reads the file next takes the column along from where it expected. Compare the header rows before you point an import template or a script at them, and compare them again after a month with unusual activity in it.

  • A Date It Cannot Read Goes Through

    Quicken's apostrophe form, 01/02'03, is normalised on the way in. A date that still cannot be resolved after that is carried through in the shape the file wrote it rather than dropped or replaced with a guess, so it reaches the CSV as text. Check the preview against a date you already recognise.

  • For QuickBooks, Not a Spreadsheet

    If the destination is QuickBooks rather than a spreadsheet, a table of columns is the wrong shape to arrive in. The QIF to QBO Converter writes Web Connect from the same file instead, and the transactions land in Bank Feeds for review.

Common Questions

What people ask before they trust a converter with their accounting system.

Quicken, which gave the format its name, along with GnuCash, Moneydance, Banktivity and Money Manager EX, and older copies of Microsoft Money. How to view QIF files without one of those is simpler than it sounds: the file is plain text, so any text editor shows you the contents. Reading the data rather than the file is the part a text editor cannot help with, and that is what converting it to a table is for.

Offer the QIF to CSV Converter on Your Website

Your clients convert their files right on your site, free, without ever leaving it.

  • Free, with no sign-up

    Copy the code and paste it. No account, no API key.

  • Client files stay private

    Every file is converted in your visitor’s browser and never uploaded, not even to us.

  • Always up to date

    Improvements reach your page automatically, and it sizes itself to fit.

Paste it into

  • Webflow
  • WordPress
  • Squarespace
  • Any HTML page
embed codeEmbed code for the QIF to CSV ConverterPreview(opens in a new tab)
<div class="autymate-embed" data-tool="qif-to-csv-converter">
  <p>QIF to CSV Converter · Powered by
    <a href="https://www.autymate.com/tools/qif-to-csv-converter">Autymate</a></p>
</div>
<script async src="https://www.autymate.com/embed/v1.js"></script>

Paste it where you want the converter to appear.

Written and maintained by The Autymate integrations team. We build and run accounting integrations for multi-location franchises, ISVs and bookkeeping firms: QuickBooks Desktop and Online, POS, payroll and ERP. These converters exist because we kept writing the same ones for customers, and there was no reason to keep them to ourselves.

Last reviewed

A Correction You Repeat Is a Mapping

Converting one QIF is a job this page finishes. If the export arrives every month and the same column is sorted and corrected by hand before anything is allowed to read it, the correction is the thing worth moving rather than the file. Tell us where the export comes from, what reads the tables next, and how often it happens.

Exact source access, fields, permissions, QuickBooks behaviour and service scope are confirmed during discovery.