You found a file called transactions.qif on an old backup drive, or your bank's "download for
Quicken" button handed you one — and double-clicking it does nothing useful. Opened in a text
editor it looks like a ransom note: lines starting with !Type:Bank, then single letters glued
to values, with ^ characters scattered between them. This article explains what a QIF file is
and how to read one.
What a QIF file is
QIF stands for Quicken Interchange Format — the plain-text format Quicken used for decades
to import and export financial data. Because Quicken dominated personal finance software, the
format spread far beyond it: Microsoft Money read and wrote it, GnuCash still imports
it, and many banks kept a "Quicken (QIF)" option on their download pages long after Quicken
itself moved on. (Quicken dropped QIF import for bank accounts back in 2005 in favor of the
newer OFX/QFX formats — which is exactly why orphaned .qif files pile up.)
The structure is simple once you see the pattern. A line starting with ! is a section
header that declares what kind of records follow — !Type:Bank for a checking account
register, !Type:CCard for a credit card, !Type:Cash, !Type:Invst for investments. Within a
section, each record is a group of lines where the first character is a field code and the
rest of the line is the value, and a lone ^ ends the record:
!Type:Bank
D01/15/2024
T-1,500.00
PAcme Property Management
MJanuary rent
N1042
LRent
^
The single-letter field codes
- D — the date (more on its quirks below).
- T — the amount, signed, sometimes with thousands commas. Newer exports duplicate it on a U line.
- P — the payee.
- M — a free-text memo.
- L — the category, or an account name in
[brackets]when the transaction is a transfer. - N — the check number, or the action word (
Buy,Sell,Div) in investment sections. - C — cleared status (
*orccleared,XorRreconciled). - S / E / $ — a repeating group for split transactions: each leg gets its own category
(
S), memo (E), and amount ($), while theTline still carries the total.
Multi-account exports add !Account sections that name the account the following transactions
belong to, and files can also carry list sections — !Type:Cat for the category list,
!Type:Class, !Type:Memorized — that aren't transactions at all.
The date problem
QIF's biggest trap is that it never standardized dates. Real files contain 01/15/2024,
1/15/24, European day-first 15/01/24 — and the strangest one, the 2000s Quicken quirk
01/15'04, where an apostrophe before a two-digit year means 2000-something (the plain
slash was kept for the 1900s). A date like 03/04/24 is genuinely ambiguous: March 4th in a US
file, April 3rd in a European one. The only reliable way to decide is to scan the whole file for
a date with a day above 12, which settles which position is the month.
Why QIF eventually lost to OFX
QIF has no amount-sign rules, no currency declaration, no account identifiers inside the
transactions, and no unique transaction IDs — so importing the same file twice creates
duplicates the software can't detect. OFX (and Intuit's branded QFX variant) fixed all of that
with a structured format, and banks migrated. But structured or not, none of that helps when the
file you actually have is a .qif and you just need the data.
Getting a QIF file into a spreadsheet
Renaming .qif to .csv doesn't work — one field per line with ^ separators is structurally
nothing like a spreadsheet. The free QIF to CSV converter here on
LegacyFile understands the format: it walks every section, tracks accounts, resolves the date
ambiguity file-wide, keeps split transactions intact, and flattens everything into one clean row
per transaction you can open directly in Excel — no Quicken needed. See
How to convert QIF to CSV for the step-by-step version.