Skip to content
LegacyFile
← Learn

What Is a VCF File? vCard Contacts Explained

By LegacyFile ·

You exported your contacts — from an iPhone, Gmail, Outlook, or an old Android phone — and got a file called contacts.vcf. Open it in a text editor and it's readable-ish: lines like FN:Jane Doe and TEL;TYPE=CELL:555-111-2222. But keep scrolling and you'll hit lines that wrap strangely, values full of stray = signs, and phone-specific quirks that don't match the next contact's format at all. This article explains what a VCF file actually is, what's inside one, and why two .vcf files from two different apps can look so different.

What a VCF file is

VCF stands for vCard File — "vCard" is the name of the format, standardized by the IETF (most recently as RFC 6350 for vCard 4.0, though most real-world files are still version 3.0 or even the older 2.1). It's the universal contact-exchange format: nearly every phone, address book, and email client can export and import it, which is exactly why it's survived since the 1990s despite competing proprietary formats coming and going.

A VCF file is plain text. Structurally, each contact is one block:

BEGIN:VCARD
VERSION:3.0
FN:Jane Doe
N:Doe;Jane;;;
ORG:Acme Corp
TEL;TYPE=CELL:555-111-2222
TEL;TYPE=WORK,VOICE:555-333-4444
EMAIL;TYPE=WORK:jane@acme.example
ADR;TYPE=WORK:;;123 Main St;Springfield;IL;62704;USA
BDAY:19850613
END:VCARD

A single .vcf file can hold exactly one contact or your entire address book — apps just concatenate BEGIN:VCARDEND:VCARD blocks one after another with no separator needed.

Reading the properties

Each line inside a card is one property: a name, optional parameters, and a value, in the form PROPERTY;PARAM=VALUE:the value itself. A few matter for almost every contact:

  • FN — the formatted (display) name, exactly as it should be shown.
  • N — the structured name: family;given;middle;prefix;suffix, semicolon-separated. This is what lets an app sort "Doe, Jane" while displaying "Jane Doe".
  • ORG / TITLE — company and job title.
  • TEL / EMAIL — these can repeat. A contact with three phone numbers has three separate TEL lines, each tagged with a TYPE parameter like CELL, HOME, WORK, or FAX so the receiving app knows which is which.
  • ADR — a structured address: post office box, extended address, street, city, region, postal code, country — seven semicolon-separated components, most of which are usually blank.
  • BDAY / NOTE — birthday and free-text notes.

Why VCF files from different apps look inconsistent

Two things account for most of the weirdness:

Line folding. The spec caps how long a physical line can be, so a long value — a detailed NOTE, for instance — wraps onto the next physical line, which starts with a single space or tab as a "this continues the previous line" marker. A parser has to strip that marker and rejoin the lines before reading the value; a plain text viewer just shows you the wrapped mess.

Old-school character encoding. vCard 2.1 (still exported by some older phones and by Outlook) predates reliable Unicode support, so any name with accented or non-Latin characters gets encoded as QUOTED-PRINTABLE — you'll see FN;ENCODING=QUOTED-PRINTABLE;CHARSET=UTF-8: Jos=C3=A9 Garc=C3=ADa instead of FN:José García. Each =XX is a hex-encoded byte, and QUOTED-PRINTABLE values use yet another line-continuation rule — a trailing = right before the line break, unrelated to the folding marker above. Newer vCard 3.0/4.0 exports skip this entirely and just write UTF-8 directly.

vCard 2.1 also allows a shorthand for TYPE that 3.0/4.0 dropped: TEL;HOME;CELL:... instead of TEL;TYPE=HOME,CELL:... — bare parameter tokens with no TYPE= prefix at all. Both forms mean the same thing; a parser just has to recognize both.

Getting contacts out of a VCF file

None of this is something you want to untangle by hand, and a raw .vcf renamed to .csv doesn't help — Excel has no idea how to split BEGIN/END blocks, folded lines, or repeated TEL/EMAIL properties into columns. What you actually want is a flat table: one row per contact, with every phone number and email joined into a readable cell. That's exactly what the free VCF to CSV converter here does — it unfolds lines, decodes QUOTED-PRINTABLE automatically, and exports a clean CSV, XLSX, or JSON, entirely in your browser. See How to convert VCF contacts to Excel or CSV for the step-by-step version.