How to Make a vCard (.vcf) Contact Card People Can Save in One Tap
A plain-English guide to the vCard format: the fields inside a .vcf file, how to share a contact by QR or email, and how to import it to any phone.
How to Make a vCard (.vcf) Contact Card People Can Save in One Tap
I handed out paper business cards for years and almost none of them ended up in anyone's phone. The card sits in a wallet, the wallet gets emptied, the card goes in the bin. A vCard fixes that: it is a small file your contact taps once, and your name, number, and title land directly in their address book. This guide walks through what a vCard actually is, the fields it holds, and how to share and import one.
What a vCard Really Is
A vCard is the standard format for an electronic contact card. The .vcf file that holds it stands for "vCard File," and the format is just plain text. That last part surprises people. Open a .vcf in any text editor and you can read every line. There is no proprietary binary blob, no app you must install to parse it. Any phone, mail client, or contacts app reads the same file, which is exactly why it has survived since the late 1990s.
Here is the concrete shape of it. A vCard always begins with BEGIN:VCARD and ends with END:VCARD. Between those two lines sit the contact fields, one per line, each starting with a property name. The ones you will use most are:
FN— the formatted display name, the line you actually see on the card.N— the structured name, split into Family;Given;Additional;Prefix;Suffix.TEL— a phone number, usually tagged with a type likeWORKorCELL.EMAIL— an email address.ORG— the organization or company.TITLE,ADR,URL,BDAY,NOTE— job title, postal address, website, birthday, and a free-text note.
That is the whole idea. A readable text file, bracketed by BEGIN:VCARD and END:VCARD, that every phone knows how to import.
A Worked Example
Say I want a card for a fictional colleague, Jane Doe, who works at Acme as Head of Sales. Her finished vCard looks like this:
BEGIN:VCARD
VERSION:3.0
N:Doe;Jane;;;
FN:Jane Doe
ORG:Acme Inc.
TITLE:Head of Sales
TEL;TYPE=WORK,VOICE:+1-415-555-0142
TEL;TYPE=CELL,VOICE:+1-415-555-0199
EMAIL:jane@acme.example
URL:https://acme.example
END:VCARD
Read it top to bottom and nothing is mysterious. N:Doe;Jane;;; is the structured name with three empty trailing fields (no middle name, prefix, or suffix), which apps use to sort her under "D." FN:Jane Doe is what shows on the card face. The two TEL lines carry the same kind of number but different tags, so the dialer labels one "Work" and the other "Mobile" instead of dumping two unlabeled numbers. Save that text as jane.vcf, double-click it on a Mac, and Contacts opens with Jane already filled in.
The fiddly bits are the ones easy to get wrong by hand: a company name with a comma, a note with a semicolon, or a long address all need escaping or line-folding to import cleanly. That is the part worth automating. The vCard generator builds the N and FN fields from your first and last name, tags each phone with its type, escapes commas, semicolons, and backslashes the way the spec requires, and folds any line past 75 bytes so even a multibyte name never breaks mid-character. Empty fields drop out, so you never ship a blank ORG or TEL line.
Why FN and N Both Exist
Newcomers often ask why a card needs two name fields. The split is deliberate. N is the machine-readable version: five components separated by semicolons, so software can sort by last name, group families, or print "Dr." in front of a surname. FN is the human-readable version, a single string that is whatever the card should literally display.
Most of the time FN is just "Given Family," but not always. A band, a department, or a company contact might display "Acme Support" while the underlying N stays structured. The rule that trips people up is that a card with a blank FN renders as an empty entry in many apps, and a name typed only into N may not file under the person at all. A good generator always produces a non-empty FN, falling back to the organization or email if no personal name is given.
Sharing the Card: QR Codes and Email
A .vcf is only useful once it reaches someone. Three routes cover almost every situation.
The first is direct file transfer. AirDrop the .vcf on Apple devices, or attach it to a follow-up email after a meeting. The recipient taps it and chooses "Add Contact." This is the cleanest path for one-to-one sharing because the file moves intact and nothing leaks into a server log.
The second is a QR code, which is ideal for posters, badges, or a printed card. Because vCard is plain text, you can drop the whole card straight into a QR code and anyone who scans it gets a fully formed contact to save, with no app in the middle. Generate the QR with a QR code generator after copying the vCard text. If you are setting up a kiosk or a guest network alongside it, a Wi-Fi QR code generator covers the network half the same way.
The third is a link. Put a "Save my contact" button in your email signature or on a personal landing page, host the .vcf, and link to it. Visitors download one file and you are saved with the right name, title, and both numbers, instead of copying fields one at a time. If your follow-up also includes paperwork, an invoice generator keeps that part client-side and tidy too.
Importing to Phones
Getting a .vcf into a phone is straightforward once you know where each platform hides the import option.
On iPhone, the simplest path is to AirDrop or email the file to yourself, tap it, and tap "Add Contact." There is no separate import menu; the tap on the file is the import.
On Android, open the Contacts app, go to Settings, then Import, and pick the .vcf from Files or Downloads. Android also imports straight from a tapped email attachment in most builds.
For Google Contacts on the web, visit contacts.google.com, click Import, and upload the file. Because every one of these reads the same vCard 3.0 file, you build the card once and it lands correctly everywhere. Version 3.0 is the sweet spot: iOS, macOS, Outlook, and most Android dialers import it without complaint, whereas the newer 4.0 spec still trips up plenty of contacts apps.
Keep It Local
One last point on privacy. Building a contact card means handling a real name, a personal number, and sometimes a home address, so it matters where that data goes. A well-built generator assembles the entire .vcf in your browser with plain JavaScript and uploads nothing. The only thing to watch is the shareable URL: if it encodes your fields in the query string, pasting that link into a chat records those details in the recipient server's log. For anything private, download the file and send it directly rather than sharing a URL. The card is yours; the file should be the only copy that leaves your machine.
Made by Toolora · Updated 2026-06-13