CIRCULATEQR

How to Make a vCard QR Code for Business Cards

By the CirculateQR team · Updated · 8 min read

Short answer

To put your contact details in a QR code, encode them as a vCard, the contact format phones understand, or link the code to a hosted contact page you can edit later. A vCard code holds your name, phone, email and other details in the pattern itself. Scanning it makes the phone offer to save a new contact, even offline, but the details can’t be changed after printing. Keep a vCard to a handful of fields so the code stays easy to scan on a business card.

On this page
  1. Should you use a vCard code or a hosted contact page?
  2. Which format should you use: vCard 3.0, vCard 4.0 or MECARD?
  3. Which fields should you include, and why are fewer better?
  4. How do you make a vCard QR code step by step?
  5. How big should the code be on a business card?
  6. What happens when someone scans a vCard QR code?
  7. How does CirculateQR handle contact codes?
  8. Frequently asked questions

Key facts

  • vCard 3.0 is defined in RFC 2426 (1998) and vCard 4.0 in RFC 6350 (2011). MECARD is a shorter format popularized by NTT Docomo.
  • A vCard 3.0 with name, company, title, mobile, email, website and address is 235 characters: version 11 (61 × 61 modules) at level M, version 16 (81 × 81) at level H.
  • Name, mobile and email alone take 115 characters and fit version 7 (45 × 45) at level M.
  • A photo won’t fit: base64 turns a 10 KB image into about 13,700 characters, over four times the 2,953 bytes the largest QR code holds.
  • A US business card is 3.5 × 2 in (about 89 × 51 mm). A code 2.5 cm wide fits with room for its margin; a card with many fields needs more.
  • A direct vCard code is static and works offline. A hosted contact page is dynamic and can be edited after printing.

Should you use a vCard code or a hosted contact page?

There are two ways to put contact details behind a QR code. A direct vCard code contains the details themselves. A hosted contact page is a dynamic code that opens a small web page with your details and a button to save them.

Direct vCard code vs hosted contact page
Direct vCardHosted contact page
Works offlineYesNo, it needs a connection
Edit after printingNoYes
Scan countsNoYes
Code densityGrows with every fieldSmall and constant
Saving the contactPhone offers it straight awayThrough a “save contact” button
Collect the scanner’s detailsNoPossible, with a form

Choose a direct vCard for cards handed out at venues with poor signal, or for details that rarely change. Choose a hosted page if your number or job title might change, if you want to know whether your cards get scanned, or if you want people to send their details back to you. The general trade-off is explained in dynamic vs static QR codes.

Which format should you use: vCard 3.0, vCard 4.0 or MECARD?

vCard 3.0, defined in RFC 2426 (September 1998), is the conservative choice. Every card must contain VERSION, N (the structured name) and FN (the display name). vCard 4.0, defined in RFC 6350 (August 2011), requires only VERSION and FN and is always UTF-8. The fields a business card needs exist in both, so for a QR code 4.0 adds little.

MECARD is a compact format popularized by NTT Docomo, described on the ZXing wiki (checked October 2026), which notes it has generally been used only with QR codes. Name, mobile and email take 60 characters as MECARD and 115 as vCard 3.0, but MECARD has a shorter list of fields.

Here is a complete vCard 3.0 for a business card:

BEGIN:VCARD
VERSION:3.0
N:Rivera;Ana;;;
FN:Ana Rivera
ORG:Harbor Design Co.
TITLE:Creative Director
TEL;TYPE=CELL:+1-503-555-0142
EMAIL:ana@example.com
URL:https://example.com
ADR;TYPE=WORK:;;120 Main St;Portland;OR;97204;USA
END:VCARD
  • N is last name; first name, followed by empty slots for middle name, prefix and suffix. FN is the name as displayed.
  • TEL;TYPE=CELL marks the number as a mobile.
  • ADR has seven parts separated by semicolons: PO box, extended address, street, city, region, postal code and country.
  • A comma or semicolon inside a value must be escaped with a backslash, as in ORG:Smith\, Jones and Co.

The sample is 235 characters with single line breaks. The standard specifies CRLF line endings, which make it 245 characters; both encode at the same version.

Which fields should you include, and why are fewer better?

Every field adds characters, and every extra character makes the code denser: more modules (the small squares) packed into the same printed area. These are the sizes the open-source qrcode encoder produces:

How contact fields change the size of the QR code
ContentsCharactersLevel MLevel H
MECARD: name, mobile, email60Version 4, 33 × 33Version 6, 41 × 41
vCard 3.0: name, mobile, email115Version 7, 45 × 45Version 10, 57 × 57
+ company, title, website185Version 9, 53 × 53Version 14, 73 × 73
+ work address235Version 11, 61 × 61Version 16, 81 × 81
+ a 10 KB photoabout 14,000Doesn’t fitDoesn’t fit
3 fields: 45 × 45
7 fields: 61 × 61
Two sample vCards printed at the same size, both at level M. With seven fields instead of three, each module is about a quarter smaller.

A sensible card has your name, one mobile number, one email address, and at most your company, job title and website. Leave out the office address unless people visit you, the fax number, and long notes. Write the phone number in international format, such as +1-503-555-0142, so it dials correctly from anywhere.

How do you make a vCard QR code step by step?

  1. Pick your fields. Name, one mobile, one email, and at most company, title and website.
  2. Format the phone number internationally. Start with the country code, for example +1.
  3. Enter the details in a vCard QR generator. Check spelling: you can’t fix a typo after printing.
  4. Download a print format. SVG keeps the edges sharp at small sizes.
  5. Test a printed proof. Scan it with an iPhone and an Android phone and check every field lands in the right place.
  6. Print it at least 2.5 cm wide. Keep a blank margin of 4 modules on every side, and go larger if the code holds many fields.

For step 3 you can use the free vCard QR code generator.

How big should the code be on a business card?

A US business card is 3.5 × 2 in, about 89 × 51 mm. A card is usually held 15 to 25 cm from the phone, and a common rule of thumb is a code width of one tenth of the scanning distance, which gives 1.5 to 2.5 cm. On the back of a card, 2.5 cm (about 1 in) fits easily. What changes with the content is the size of each module:

Module size for a 2.5 cm code
CodeModules acrossModule widthClear square with margin
Hosted page short link, level H370.68 mm3.0 cm
3-field vCard, level M450.56 mm2.9 cm
7-field vCard, level M610.41 mm2.8 cm
7-field vCard, level H810.31 mm2.75 cm

The smaller the modules, the closer and steadier the phone has to be, and the sharper the print must be. Print dark on a light background, avoid foil and glossy finishes over the code, and scan a proof from the printer before ordering the full run. The size guide covers distance and contrast, and the error correction guide explains why level H codes are denser.

What happens when someone scans a vCard QR code?

On most current phones, the camera app recognizes the vCard and shows a prompt. Tapping it opens a new contact screen with your details filled in, which the person can review before saving. Nothing is saved until they confirm, and no internet connection is needed, because everything is in the code.

A few things can go wrong:

  • Older phones may need a QR reader app.
  • Fields a phone doesn’t recognize, such as nonstandard social profile lines, may be dropped.
  • If the person already has you in their contacts, saving may create a second entry rather than updating the first.

That is why the test in step 5 matters: check the saved contact, not just the scan.

How does CirculateQR handle contact codes?

CirculateQR offers both forms. The direct vCard code is a static vCard 3.0 code: the phone offers to add the contact, it works offline, and it can’t be edited. The builder covers name, organization, title, mobile phone, email, website, work address and LinkedIn or Twitter profiles. CirculateQR draws plain codes at error correction level H, so a seven-field card comes out at version 16, 81 × 81; keep it lean if it is going on a business card.

The hosted digital business card is dynamic and editable. It shows your name, company, bio and contact buttons, with a “save contact” button you can hide, and an optional “Share your contact” form so the person scanning can send you their details. Scans are counted like any dynamic code; see how scan tracking works.

On the free plan, dynamic codes and hosted pages work for 14 days after publishing, then pause until you upgrade or pay a one-time $5 to keep that code; static vCard codes never expire. See the pricing page and do QR codes expire?

Frequently asked questions

Can I put a photo in a vCard QR code?

Not in practice. vCard photos are stored as base64 text, which turns every 3 bytes into 4 characters, so even a 10 KB image becomes about 13,700 characters. The largest QR code holds 2,953 bytes. If you want people to see your photo, use a hosted contact page instead.

Does a vCard QR code work without an internet connection?

Yes. A direct vCard code carries the contact details in the pattern, so the phone can read them and offer to save the contact with no connection. That makes it a good fit for conferences and trade shows with weak signal. A hosted contact page needs a connection to load.

Can I update a vCard QR code after printing it?

No. A direct vCard code is static, so the details are fixed in the printed pattern. If your number or job title changes, you need a new code. If you expect changes, use a dynamic code that opens a hosted contact page, which you can edit at any time without reprinting.

Should I use vCard or MECARD for a contact QR code?

Use vCard 3.0 unless you need the smallest possible code. It has dedicated fields for company and job title. MECARD is more compact: name, mobile and email take 60 characters instead of 115. Whichever you choose, test the printed code on an iPhone and an Android phone.

How many fields can a vCard QR code hold?

Technically a lot, since the largest QR code holds 2,953 bytes. In practice every field makes the code denser and harder to scan at business-card size. A vCard with name, company, title, mobile, email, website and address is 235 characters and needs a 61 × 61 module code at level M. Five or six fields is a sensible limit.

Last updated . Written by the CirculateQR team. Spotted something wrong or out of date? Email support@circulateqr.com.

Make a contact code that fits on a card

Create a static vCard code that saves straight to a phone, or a hosted contact page you can edit after printing.