vCard

Also called: VCF, contact card, vCard QR code

Definition

A vCard is a standard text format for contact details. Put in a QR code, it lets a phone add a name, number, email and company to its contacts in one scan.

What a vCard contains

A vCard is plain text made of labeled lines, opened by BEGIN:VCARD and closed by END:VCARD. Each line holds one property, such as the formatted name, a phone number or an email address. The same text is what a .vcf file holds when contacts are exported from a phone or email program.

A minimal vCard 3.0 for a QR code looks like this, one property per line: BEGIN:VCARD, VERSION:3.0, N:Lee;Jordan, FN:Jordan Lee, ORG:Maple Street Bakery, TEL:+15035550123, EMAIL:jordan@example.com, URL:https://example.com, END:VCARD. N holds the structured name (family name first, separated by semicolons) and FN the name as it should be displayed.

  • N: structured name (family;given;middle;prefix;suffix)
  • FN: display name
  • TEL: phone number, ideally in international format
  • EMAIL: email address
  • ORG: company or organization
  • TITLE: job title
  • URL and ADR: website and postal address

Which version to use

Version 3.0 is still the safest choice for QR codes because almost every phone reads it. It is defined in RFC 2426 from 1998. Version 4.0, defined in RFC 6350 in 2011, is the current standard and requires UTF-8, but some older readers handle it less consistently.

Version 3.0 expects both N and FN, while 4.0 requires only FN. Whichever version is used, the VERSION line should come right after BEGIN:VCARD.

Size and scanning trade-offs

Every field added to a vCard adds characters, and more characters mean a denser QR code with smaller modules. A card with a name, one phone number and one email scans easily even at business-card size. Adding a postal address, several numbers, a long note or an embedded photo can push the code to a version that needs to be printed much larger.

Photos are the usual problem: a base64-encoded image can run to thousands of characters and rarely fits in a practical code. A common alternative is to encode a short link to a hosted .vcf file or contact page, which keeps the code small and lets the details change later.

Frequently asked questions

How do I put my contact details in a QR code?

Write the details as a vCard (BEGIN:VCARD, VERSION:3.0, then N, FN, TEL, EMAIL and so on, ending with END:VCARD) and encode that text in a QR code. When scanned, most phones offer to save the contact.

Should I use vCard 3.0 or 4.0 in a QR code?

vCard 3.0 is the most widely compatible choice for QR codes. Version 4.0 is newer and fine for most modern phones, but 3.0 avoids surprises with older readers.

Why is my vCard QR code so dense?

Each extra field adds characters, and the code grows to hold them. Remove optional fields, shorten the address or notes, or encode a link to the contact card instead of the full text.

Can a vCard QR code include a photo?

The format allows a photo, but an embedded image usually makes the code far too large to scan. Linking to an online contact card is the practical way to include one.

Sources and standards

All terms