👤CSV→VCF

VCF to CSV Converter — Get vCards Into a Spreadsheet

The reverse trip: turn a .vcf / vCard file back into a clean CSV you can open in Excel or Google Sheets. Handles vCard 2.1, 3.0 and 4.0 — including the quoted-printable encoding old phones used, so =4D=61=72=C3=ADa becomes María again. Free, in your browser, nothing uploaded.

👤
Written by Casey Marlin · Last updated
This update: parser covered by scripts/test-convert.mjs: 2.1 quoted-printable decoded as UTF-8 (CHARSET not read) and an iCloud X-ABLabel fixture
The vCard property to spreadsheet column mapping, read in reverse when converting VCF back to CSV

Drop your VCF / vCard file here

.vcf with any number of contacts — vCard 2.1, 3.0 and 4.0 all supported, processed on your device.

How to convert VCF files into CSV — three steps

  1. Drop the .vcf file into the converter above (or click to pick it). Files with hundreds of contacts are fine — every BEGIN:VCARD block is parsed on your device.
  2. Check the preview table. Names, phones with their types, emails, company and address parts should sit in their own columns; the first 8 rows are shown.
  3. Click Download CSV. You get a UTF-8 (BOM) spreadsheet file that opens cleanly in Excel, Google Sheets, Numbers and LibreOffice — free, no signup, no watermark.
Where you areWhat changes
On a MacSame three steps in Safari or Chrome; the CSV opens in Numbers or Excel for Mac without an import dialog.
On Windows 11Nothing extra — the UTF-8 BOM means Excel shows accents and non-Latin names correctly on double-click.
Online, privatelyThis page is the online route with a difference: the file is parsed in your browser and never uploaded anywhere.

When you need VCF → CSV

  • Auditing a phone backup. Your phone exports contacts as one big .vcf — a spreadsheet is a far better place to spot duplicates, dead numbers and half-filled entries than a phone screen.
  • Getting contacts out of iCloud.iCloud.com's only export is a combined .vcf of the contacts you select — this converter is the second half of that trip. The iCloud guide walks both directions, including the item1-grouped quirks iCloud writes.
  • Feeding a CRM or mailing tool. Most CRMs, newsletter tools and ad platforms want CSV imports, not vCards. Convert once, map columns in their importer, done.
  • Rescuing contacts from an old phone. Feature phones and SIM tools export vCard 2.1 with quoted-printable names that look like line noise in a text editor. The decoder here reads quoted-printable as UTF-8 and ignores CHARSET, so Latin-1 cards from very old phones may show the wrong accents.
  • Merging address books. Convert several .vcf files to CSV, combine and de-duplicate the rows in a spreadsheet, then bring the result back with the CSV to VCF converter.

What the parser actually handles

Real-world .vcf files are messier than the spec suggests, so the parser deals with the mess explicitly: folded lines (continuations indented with a space) are unfolded; vCard 2.1 quoted-printable soft breaks (lines ending in =) are joined and decoded as UTF-8 (the CHARSET parameter is ignored, so Latin-1 cards from very old phones may show the wrong accents); escaped characters (\, \; \n) are unescaped; grouped properties like item1.TEL (an iCloud habit) are recognized; and vCard 4.0 tel: URIs are stripped to plain numbers. Phone TYPE parameters (CELL, WORK, HOME) survive into their own CSV columns.

Structured fields are split properly: N gives separate first/last name columns, ADR gives street, city, state, ZIP and country columns — no "everything glued into one cell".

The 18 columns your CSV comes back with

A vCard is a nested format and a spreadsheet is flat, so the conversion has to make a decision about how much to keep. This tool keeps the first two phone numbers and the first two email addresses as their own columns rather than cramming them into one cell — which is what makes the result usable for a mail merge or a re-import.

GroupColumnsRead from
NameFirst Name, Last Name, Full NameN and FN
PhonesPhone 1, Phone 1 Type, Phone 2, Phone 2 TypeThe first two TEL lines
EmailsEmail 1, Email 2The first two EMAIL lines
WorkCompany, Job TitleORG and TITLE
AddressStreet, City, State, ZIP, CountryADR, split into its parts
OtherWebsite, NotesURL and NOTE

A contact with three phone numbers keeps the first two and loses the third — that is the honest trade-off of flattening, and no converter avoids it without producing a spreadsheet with a variable number of columns. If you need every number, the safest route is to keep the original .vcf as the archive and treat the CSV as a working copy.

VCF to CSV — FAQ

  • How can I convert a VCF file to CSV format for Outlook?

    Convert the .vcf here, then in Outlook (classic, on Windows) use File → Open & Export → Import/Export → 'Import from another program or file' → 'Comma Separated Values' and map the columns. The CSV this converter produces keeps names, phones, emails and addresses in separate columns, which is exactly what Outlook's field mapping expects.

  • Can I convert a VCF file to Excel?

    Yes — CSV is the bridge. Convert the .vcf to CSV here, then open the file in Excel directly: it is written as UTF-8 with BOM precisely so Excel renders accents and non-Latin names correctly without an import wizard. Save as .xlsx from Excel if you need the native format.

  • How do I convert a VCF file to CSV?

    Drop the .vcf file into the tool above. Every vCard in the file is parsed — names, phones with their types, emails, company, job title, address, website, notes — and shown as a table. Click Download CSV and you get a UTF-8 spreadsheet-ready file. Nothing is uploaded; parsing happens in your browser.

  • Can I open the resulting CSV in Excel?

    Yes — that's the main use case. The CSV is exported as UTF-8 with a BOM, which is the magic ingredient that makes Excel display accented and non-Latin names correctly instead of mojibake. It opens equally cleanly in Google Sheets, Numbers and LibreOffice.

  • My VCF came from an old phone and looks like =4D=61=72 gibberish. Will it work?

    Yes. That's vCard 2.1 quoted-printable encoding, which old Nokia, Samsung and SIM-export tools used for any non-ASCII text. The parser detects ENCODING=QUOTED-PRINTABLE (including soft line breaks ending in =) and decodes the bytes as UTF-8 — it does not read the CHARSET parameter, so Latin-1 cards from very old phones may show the wrong accents.

  • Which vCard versions can be read?

    All three that exist in the wild: 2.1 (quoted-printable decoded as UTF-8; the CHARSET parameter is not read), 3.0 (the common one, with escaped commas and folded lines), and 4.0 (including tel: URIs). Files that mix versions — common when a phone merged several sources — parse fine too, card by card. Latin-1 cards from very old phones may show the wrong accents.

  • One .vcf file has hundreds of contacts. Do I get them all?

    Yes. A .vcf can contain any number of BEGIN:VCARD…END:VCARD blocks back to back, and every one becomes a CSV row. The table above previews the first 8; the download contains all of them.

  • Can I import the CSV into Google Contacts?

    Not as a drop-in Google CSV. This export uses Phone 1 / Email 1 headers, which are not Google Contacts' Phone 1 - Value / E-mail 1 - Value import names, so Google's CSV importer will not map them automatically. To get contacts into Google, use the CSV to VCF path on /csv-to-google-contacts instead of this reverse export.

  • What columns does the CSV contain?

    First Name, Last Name, Full Name, Phone 1 + type, Phone 2 + type, Email 1, Email 2, Company, Job Title, Street, City, State, ZIP, Country, Website and Notes — 18 columns. Fields a contact doesn't have are simply left empty, so the columns line up for every row.

  • Is my contact file uploaded anywhere?

    No. Like every tool on this site, the parser runs as JavaScript on your device. The file never leaves your machine — you can convert with the network unplugged.

Parser follows RFC 2426, RFC 6350 and the vCard 2.1 spec. Coverage is the synthetic fixtures in scripts/test-convert.mjs, not live Android, iCloud or handset exports. Last checked: August 26, 2026. About this site