← All articles

vCard QR Code: What to Include and When a Link Is Better

2026-10-17 vcard business card contact

A vCard QR code stores a contact card (name, phone, email and similar fields) inside the pattern, so a phone that scans it can offer to save the contact. Apple's 2017 iOS 11 Tech Talk says iOS supports the vCard format for contact codes and shows a preview with options to save. The trade-off is that the card is fixed once printed: change a number and you need a new code. Include only fields you expect to keep, or point the code at a page you can edit.

Facts checked on 17 October 2026.

What is inside a vCard QR code?

A vCard is plain text that runs from BEGIN:VCARD to END:VCARD, one property per line. RFC 6350 (August 2011) defines version 4.0 and requires the VERSION and FN (formatted name) properties. It obsoletes RFC 2426 (September 1998), which defines version 3.0 and requires FN, N (structured name) and VERSION. The ZXing project's barcode wiki shows its vCard example as version 3.0. A minimal 3.0 card:

BEGIN:VCARD
VERSION:3.0
N:Rivera;Alex;;;
FN:Alex Rivera
TEL:+15550100
EMAIL:alex@riveradesign.example
END:VCARD

Which version will a phone accept? None of the sources checked for this article gives a list. Apple's talk names no vCard version; its page shows no date (the page metadata says 21 December 2017), and it was written for iOS 11, so treat it as history. Google's ML Kit barcode scanning page, updated 15 October 2026, lists contact information among the types it parses and also names no version. It documents an API for app developers, not a phone's camera app. The ZXing wiki is cautious about using vCard in 2D barcodes: "It is not clear whether vCard is or should be used to encode contact information." Its vCard section adds: "Many apps understand the vCard specification."

So do not trust any claim that one version works on every phone. Test your exact text on an iPhone and an Android phone before printing.

Which fields are worth including?

Name, one phone number you answer, one email address and, if there is room, company, job title and website make a usable contact card. An address, a second phone number and a notes line are the first to leave out. The reason is size.

DENSO WAVE's QRcode.com says QR codes come in 40 versions, from 21 × 21 modules (version 1) to 177 × 177 (version 40), that each version adds 4 modules per side, and that more data needs more modules. To see what fields cost, the smallest version was computed for each sample below with the open-source qrcode-generator library (version 1.5.2) at error correction level M, counting each line break as two bytes. The names and numbers are invented; real content will differ.

Sample payloadBytesVersionModules per sideOne square in a 25 mm code
Short link, 22 characters222251.00 mm
Page address, 33 characters333290.86 mm
MECARD: name, phone, email685370.68 mm
vCard 3.0: name, phone, email1177450.56 mm
vCard 3.0 plus company, job title, website19210570.44 mm
vCard 3.0 with two phones, address and note37215770.32 mm

The square widths are arithmetic: 25 mm divided by the modules per side, ignoring the blank margin. DENSO WAVE's page does not discuss scan reliability, so "more modules, harder to scan" is an inference: at a fixed printed width, more modules means smaller squares for a camera to resolve, which matters most on a small business card. The print size guide covers minimum widths, and how much data a QR code can hold covers capacity. The free QR Code Checker reports the version and module count of an image you upload and warns when a code is dense.

Is MECARD a better format than vCard?

It is more compact. The ZXing wiki calls vCard "a bit verbose" for 2D barcodes and says NTT DoCoMo popularized a compact MECARD format. Apple's talk says contact information can also be encoded as MeCard, which is usually less verbose than vCard. In the table, name, phone and email take 68 bytes as MECARD against 117 as vCard 3.0, which is version 5 against version 7.

The ZXing wiki also notes that KDDI AU proposes a slightly different format, and the only official iOS mention of MeCard found for this article is that 2017 talk, so current support is unconfirmed. If you choose MECARD, test it on your contacts' phones and check which format your generator writes.

vCard codeCode that links to a contact page
Where the details liveInside the patternOn a web page
Change a phone number after printingNo: new code, new print runEdit the page; the printed code stays
Modules per side (samples above)45 to 7725 to 29
Scan countsNoneDynamic code: yes. Static code: none
Needs a page to stay onlineNoYes
CostFree; a static code needs no accountYour own page: your hosting. Biz Page: one free page, paid features from $2.99 a month

Ask these in order:

  1. Will any field change while the printed cards are still in use? If yes, link to a page.
  2. Is the code small, as on a business card? Keep a vCard to a few fields, or link to a page, which needs far fewer modules.
  3. Do you need scan counts? Only a dynamic code provides them.
  4. Can you keep a page online as long as the cards circulate? If not, a vCard has nothing to host.

Your own site. If you already have a contact page, a dynamic code can point to it. In QR Maker AI, a dynamic code encodes a short link that redirects to your page, and a new destination applies from the next scan. As of October 2026 the free plan includes three active dynamic codes and counts up to 500 scans a month; past that, the code keeps redirecting and only the counting pauses. Saving one needs a verified account. Only URL codes can be dynamic, so a vCard is always static; the static vs dynamic guide covers the difference.

A Biz Page. With no site, a Biz Page is a mobile page built from blocks, and its Save contact block lets visitors save your details. A free account gets one page with up to four blocks and a watermark. As of October 2026 the Biz Pages add-on for Free and Pro accounts costs $2.99 a month or $19.99 a year, and the Business plan ($29 a month or $279 a year) includes it. The add-on and the Business plan allow 10 pages, 30 blocks each, no watermark and click statistics; see pricing.

One catch: a Biz Page lives on a qrmaker.ai address, and dynamic codes cannot point at those addresses. Its QR code is therefore a static URL code. You can edit the page whenever you like, but you cannot re-point the printed code, and scans of it are not counted as scans (with the add-on or Business, the page's own statistics show page views and block clicks).

How do I make and test a vCard code?

  1. Pick the fields from the list above.
  2. In the free generator, choose the Business Card type, which has fields for name, phone, email, company, job title and website. A static code needs no account. Download the PNG.
  3. Upload the PNG to the free QR Code Reader, which shows the text inside the code. Check that the lines between BEGIN:VCARD and END:VCARD are what you meant to include. Then upload it to the QR Code Checker and read the module count.
  4. Print a proof at final size. Scan it with an iPhone camera and an Android camera, and check that the save prompt appears and every field lands in the right place.
  5. Print the phone number or website as readable text beside the code. Nottinghamshire County Council's QR code guidance, last reviewed 12 May 2026, says: "Never use a QR code on its own — always include a short URL." That is one council's guidance, not law; the reasoning carries over to cards. The same page tells council staff to use static URL codes rather than dynamic ones, because a dynamic code depends on a redirect link controlled by another service.

FAQ

How do I make a QR code that saves a contact to a phone?

Create a vCard code: enter a name and a phone or email in a generator with a contact or business-card type, then scan the result with a phone camera. Apple's 2017 talk says iOS shows a notification, and tapping it previews the contact card with options to save. Test on your own phone first.

Can I update a vCard QR code after it is printed?

No. A vCard code is static, so the details sit in the pattern and any change means a new code. A dynamic code holds only a web link, so it can point to a contact page you edit, but it cannot hold the contact card itself.

Which vCard version works on iPhone and Android?

None of the sources checked gives a current official list. RFC 6350 defines 4.0, ZXing's example uses 3.0, and Apple's talk and Google's ML Kit page name no version. Test your exact text on the phones you care about.

Sources

  1. Apple — QR Code Recognition on iOS 11. Tech Talk; no date is shown on the page, and its metadata gives 21 December 2017. Accessed 17 October 2026.
  2. IETF — RFC 6350: vCard Format Specification. Published August 2011. Accessed 17 October 2026.
  3. IETF — RFC 2426: vCard MIME Directory Profile. Published September 1998; obsolete. Accessed 17 October 2026.
  4. ZXing project — Barcode Contents. Wiki page last edited 16 October 2026. Accessed 17 October 2026.
  5. Google — Barcode scanning | ML Kit. Last updated 15 October 2026. Accessed 17 October 2026.
  6. DENSO WAVE — Information capacity and versions of QR Code. QRcode.com, undated. Accessed 17 October 2026.
  7. Nottinghamshire County Council — Using QR codes. Last reviewed 12 May 2026. Accessed 17 October 2026.

Create a free dynamic QR code — change the destination anytime and track every scan.

Make your QR code →