ALL DEVELOPER TOOLS56
VCF to CSV
VCF to CSV — Convert a Contacts Export to a Spreadsheet
Reads a vCard file and writes a CSV you can open in any spreadsheet. Your contacts stay in this tab.
About VCF to CSV
A .vcf file is an address book, and an address book is one of the most revealing files a person owns — every name, number, email and home address of everyone they know. That is the reason this tool exists in the form it does. Every free VCF-to-CSV converter online asks you to upload that file to a server; this one reads it in the tab and sends nothing anywhere, which for this particular file type is the difference that matters. The conversion itself is less trivial than it looks, and the interesting parts are where converters usually go wrong. vCard folds long lines: any value over 75 characters is split across lines and continued with a leading space, so a note or an address routinely arrives in pieces. A parser that splits on newlines and stops does not crash — it silently truncates every long field and invents extra rows, which is the worst kind of failure because the output still looks like a contact list. This one unfolds first. Contacts also repeat properties: three emails and four phone numbers on one card is normal. Squashing those into a single cell separated by semicolons is what most converters do, and it destroys the thing people convert contacts for, because on re-import that cell is one string and every address after the first is lost. Here each occurrence gets its own numbered column, and the number of columns is derived from your file rather than fixed — a list whose busiest contact has two emails gets two email columns, not ten mostly empty ones. The structured name field is expanded into last, first, middle, prefix and suffix instead of being dumped as a semicolon string, and a structured address is joined into one readable cell. Anything the file carries that has no column is named on the page rather than dropped quietly. Photos are deliberately left out: a base64 portrait is not something a spreadsheet can use, and it would make the file enormous.
Questions
Are my contacts uploaded?
No. The file is read in this tab and nothing is sent anywhere — no upload, no temporary copy on a server, no request carrying any part of it. That matters more for this file than for almost anything else on the site: a .vcf is every name, phone number, email address and home address of everyone you know, in one plain-text file. Every free VCF-to-CSV converter that asks you to upload it has taken a copy of exactly that.
What happens to contacts with several emails or phone numbers?
Each one gets its own numbered column — Email 1, Email 2, and so on — and the number of columns is worked out from your file, so a list whose busiest contact has two emails gets two columns rather than a fixed ten mostly empty ones. This is deliberate and it is the main reason to prefer this over a quick script. The common alternative is to cram them into one cell separated by semicolons, which looks fine and then loses every address after the first when you import the sheet somewhere else, because that cell is a single string to every importer.
Why are some properties listed as left out?
Because they were in your file and there is no column for them, and telling you is better than dropping them in silence. vCard allows arbitrary extensions — X-SOCIALPROFILE, X-ABRELATEDNAMES and whatever an exporter felt like inventing — and no fixed set of columns can cover them. Photos are left out on purpose too: a portrait is stored as base64 inside the card, and putting a few hundred kilobytes of it into a spreadsheet cell helps nobody.
My file has one long note that came out mangled elsewhere. Will it work here?
It should. vCard splits any line longer than 75 characters across several lines, continuing each with a leading space, so long notes and addresses routinely arrive in pieces. A converter that reads line by line does not crash on this — it silently truncates the field and can invent extra rows, which is worse than an error because the output still looks like a contact list. This unfolds those lines before parsing anything, and there is a test for the three-line case specifically.
Is my file uploaded to a server?
No. Transmute processes everything locally in your browser using JavaScript and WebAssembly. Your files never leave your device — there is no server, no upload, no cloud processing.