vCard QR Code Generator
Create a digital contact-card QR code that lets compatible phones import contact information from a scan.
This generator keeps the GS1 Digital Link URI directly inside the QR code. Premium QR dynamic redirects are not used for GS1 Digital Link codes.
Advanced Customization
Colors & Gradients
Logo & Social Icon
QR Code Size
vCard QR Code Generator
Quick answer: A vCard QR code encodes contact details as a VCARD block per RFC 6350. Scanning it prompts the device to save the contact directly to the address book. vCard is the largest common QR payload and the most likely to produce a dense, hard-to-scan code at business-card print sizes.
How to create a vCard QR code
- Enter the contact's full name (FN field) and structured name (N field with last name, first name).
- Add organisation name, job title, phone number and email address.
- Add an optional website URL and postal address. Each field adds to the payload — include only what the contact genuinely needs.
- Customise the pattern style, finder-eye style, colours and logo.
- Download as PNG, SVG, WEBP or JPG at up to 4096 px, then print at 2 cm by 2 cm or larger.
The code is generated in your browser. Nothing you enter is uploaded to a server.
What a vCard QR code is
A vCard QR code is a standard QR code whose payload is a VCARD data block. vCard is defined in RFC 6350 (vCard 4.0, published 2011), which superseded RFC 2426 (vCard 3.0). Both versions remain in wide circulation. The QR symbol follows ISO/IEC 18004, the international standard for QR Code symbology.
When a user scans the code, the operating system recognises the VCARD content and opens the native contacts application — Apple Contacts on iOS and macOS, Google Contacts on Android — with a prompt to save the contact. The user must confirm; scanning does not add the contact silently.
vCard 3.0 is the most widely supported version across iOS, Android, Outlook and Gmail. vCard 4.0 adds structured improvements and is supported on modern devices but may cause compatibility issues with older systems or enterprise email clients. Check which version this tool emits (flagged as an open item in Section 9).
vCard payload format
Field structure
A vCard 3.0 block for QR encoding follows this structure:
BEGIN:VCARD VERSION:3.0 FN:Jane Smith N:Smith;Jane;;; ORG:Acme Corporation TITLE:Product Director TEL;TYPE=CELL:+15551234567 TEL;TYPE=WORK:+15559876543 EMAIL:[email protected] URL:https://acmecorp.com/team/jane ADR;TYPE=WORK:;;10 Main Street;London;;EC1A 1BB;UK NOTE:Preferred contact: mobile END:VCARDField reference
| Field | vCard property | Notes |
|---|---|---|
| Full name | FN | Displayed name in contacts app — required |
| Structured name | N | Last;First;Middle;Prefix;Suffix — parsed separately |
| Organisation | ORG | Company or institution name |
| Job title | TITLE | Role within the organisation |
| Phone (mobile) | TEL;TYPE=CELL | International E.164 format with + prefix |
| Phone (work) | TEL;TYPE=WORK | Additional number |
| Plain email address | ||
| Website | URL | Full https:// URL |
| Address | ADR;TYPE=WORK | PO Box;;Street;City;Region;PostCode;Country |
| Note | NOTE | Free text — use sparingly, increases payload |
FN is the only technically required field in RFC 6350, but for a useful contact card you need at minimum FN, TEL and EMAIL.
Photos in vCard — do not include them in a QR context
RFC 6350 supports a PHOTO property that embeds a Base64-encoded image. In a contact file on a device or server, this is useful. In a QR code, it is a serious problem.
A 32x32 pixel thumbnail encoded as Base64 adds approximately 4,000 characters to the payload. A 64x64 thumbnail adds approximately 16,000 characters. The maximum byte capacity of a QR code at Version 40 (the largest standard size) with the lowest error correction is 2,953 bytes.
A photo of any useful resolution cannot physically fit in a QR code. Attempting to encode it will either fail or produce a code too large for any camera to resolve at a reasonable print size. Omit the PHOTO property entirely.
Payload size and code density
vCard is the largest common QR payload type. A minimal VCARD (FN, one phone, one email) encodes in approximately 80–120 bytes. Adding full name structure, organisation, title, address and a note can push the payload to 400–600 bytes.
At 600 bytes with error correction level M, the generator will produce a Version 15 or higher QR code — a 77×77 or larger module grid. At 2 cm print size, each module is approximately 0.26 mm square. This is at the limit of what a consumer smartphone camera can reliably resolve from close range.
| Payload size | Approx. QR version | Min. print size recommended |
|---|---|---|
| Under 150 bytes | Version 4–6 (33×33 – 41×41) | 2 cm × 2 cm |
| 150–300 bytes | Version 7–10 (45×45 – 57×57) | 2.5 cm × 2.5 cm |
| 300–600 bytes | Version 11–17 (61×61 – 85×85) | 3 cm × 3 cm |
| Over 600 bytes | Version 18+ | Re-examine field content |
The minimum size figures are consistent with guidance across ez-qr.com, scanely.io and qrcodefyi.com. The version-to-module mapping is from ISO/IEC 18004:2015.
When to use a vCard QR code
Business cards for professional contacts. A QR code in the corner of a business card lets the recipient save all contact details with one scan — no typing, no OCR error.
Conference and event networking. Attendees with name badges that include a vCard QR code can be added to the scanning person's contacts in seconds.
Product packaging with a support contact. A code on packaging encodes the direct phone number and email for customer support, without requiring the buyer to find the company website.
Staff directories and office entrance signage. A code beside a team member's name links a visitor to their contact details without a receptionist needing to relay information.
Vehicle and equipment asset labels. A code on a company vehicle or piece of equipment encodes the fleet manager's contact so anyone finding the vehicle unattended can reach the right person.
Print advertising in trade publications. A code in a B2B advertisement encodes the sales contact so a reader can save the number without manually entering it.
Design and print requirements
The minimum print size for a vCard QR code on a business card is 2 cm by 2 cm for a minimal payload (under 150 bytes). For a full vCard with address, multiple phone numbers and a note, print at 3 cm by 3 cm or larger.
Business cards are typically 85 mm by 55 mm (standard ISO 7810 ID-1 size in Europe) or 89 mm by 51 mm (standard US size). A 2 cm QR code on an 85×55 mm card occupies less than one sixth of the card area and leaves room for all other contact information.
Maintain a quiet zone of at least four modules on all sides, as specified in ISO/IEC 18004. Many business card designers accidentally clip the quiet zone when placing the code near the edge — always verify the full code including margins is within the safe print area.
Avoid glossy laminate over the QR code area. Glare on a glossy surface is the most common cause of a code that displays fine on screen but fails to scan from the printed card.
Use dark modules on a light background. If the card design uses a dark background, apply a white knockout patch behind the QR code rather than inverting the modules — inverted QR codes (white modules on dark background) have inconsistent scanner support.
Troubleshooting: why your vCard QR code is not scanning
The code is too small for the payload. Increase the print size or reduce the number of fields. The PHOTO property, a long NOTE field and a full postal address are the most common causes of an oversized payload.
The quiet zone is clipped. A business card design that bleeds the QR code to the edge or overlaps it with a design element will remove the quiet zone. The scanner cannot find the code boundary.
Glare from glossy laminate. Reprint without laminate on the QR code area, or use a matte finish.
The vCard version is unsupported. vCard 4.0 may not import correctly on older enterprise email clients such as Outlook 2016. If contacts import with garbled field names, switch to vCard 3.0 format.
The ADR field has a syntax error. The address field requires six semicolon-separated segments: PO Box; Extended Address; Street; City; Region; Postcode; Country. A missing delimiter shifts all subsequent address fields and corrupts the imported contact.
The code was generated at an incorrect size. QR codes in some design applications are scaled proportionally but the quiet zone is not maintained as a fixed number of modules. Verify the quiet zone at the final print size before production.
vCard QR code versus a URL QR code pointing to a hosted contact page
This is an honest comparison. Both approaches have clear trade-offs.
| Embedded vCard QR code | URL QR code (hosted contact page) | |
|---|---|---|
| Works offline | Yes | No — URL must resolve |
| Editable after printing | No | Yes — update the page |
| Depends on a service | No | Yes |
| Payload size | Large — grows with fields | Small — just the URL |
| Contact save method | Native contacts import | Page-to-contacts (varies by app) |
| Analytics | No | Yes |
| Reprint if details change | Yes | No |
Choose a vCard QR code when reliability and offline function matter — when the recipient may be in a venue with poor signal, or when you prefer no third-party dependency. Choose a URL QR code when you expect your details to change (new phone number, new title, new employer), when you want analytics, or when the QR code on the card is too dense to scan reliably at the print size.
A URL to a well-structured contact page (using Person schema markup for machine readability) can provide as good or better contact import functionality as an embedded vCard, with the added benefit of editability. This is particularly relevant for business cards that are printed in large quantities and distributed over several years.
What this vCard QR Code Generator gives you
This browser-based tool encodes a structured digital contact card with name, organisation, phone, email, website and address fields. It is designed for business cards, exhibition badges, reception desks, sales packs and professional portfolios. The live preview updates while you edit, which makes it easier to catch a missing field or an unexpectedly dense symbol before download.
You can adjust matrix patterns, finder-eye styles, foreground and background colours, gradients, frames, size and an optional logo. Exports are available as SVG, PNG, WEBP and JPG at 512, 1024, 2048 or 4096 pixels. SVG is the practical choice for professional print. A high-resolution PNG suits office documents and digital artwork.
The static payload is constructed in your browser. The information entered into the generator does not need to be uploaded to create the QR image. Large contact records produce denser symbols, and older phones can interpret advanced vCard fields differently; keep the record focused and test it.
Using this QR code in Bahrain and abroad
For Bahrain contacts, use +973 international phone formatting and include a clear English address alongside Arabic-facing material when appropriate.
Use British English spelling in customer-facing copy when that matches your organisation’s house style, and provide Arabic wording where the audience expects it. Keep the action after scanning obvious. A short line beside the symbol such as “Scan to save the contact” or “Scan to open the location” gives people confidence before they point their camera.
Test the final design on current iPhone and Android devices. Test it again after printing on the actual paper, sticker, card, sign or packaging material. Bahrain’s bright outdoor light can expose glare and low-contrast problems that are less obvious on a computer screen. For international use, confirm country codes, currencies, time zones, regional app availability and payment-network compatibility.
Before you publish
- Correct QR payload type
- Complete and verified data
- Four-module quiet zone
- Strong foreground contrast
- Proportional square scaling
- Logo kept within safe limits
- SVG or high-resolution PNG
- Final-size device scan test
Frequently asked questions
Open a question to read a concise technical answer.
01What is the vCard format for a QR code?+
A vCard QR code encodes a VCARD data block starting with BEGIN:VCARD and ending with END:VCARD, per RFC 6350 (vCard 4.0) or the earlier RFC 2426 (vCard 3.0). Core fields are FN (full name), TEL (phone), EMAIL and ORG (organisation). The block is encoded as a byte-mode QR payload following ISO/IEC 18004.
02What is the minimum print size for a vCard QR code on a business card?+
2 cm by 2 cm is the minimum for a minimal vCard payload (under 150 bytes) at close-range scanning. A full vCard with address, multiple phone numbers and a note can reach 400–600 bytes and should be printed at 3 cm by 3 cm or larger for reliable scanning. Sources: ez-qr.com, scanely.io, qrcodefyi.com.
03Can I include a photo in a vCard QR code?+
No, in practice. A Base64-encoded photo adds thousands of characters to the payload. The maximum QR code capacity at the lowest error correction is 2,953 bytes, and any photo of useful resolution exceeds this. Omit the PHOTO property entirely for QR encoding. Link to a hosted photo URL via the URL field if needed.
04Does a vCard QR code save the contact directly to the phone?+
Yes, when the scanning device supports VCARD content handling. iOS opens Apple Contacts with a save prompt. Android opens Google Contacts or the default contacts app. The user must confirm the save; the contact is not added silently. vCard 3.0 has the widest compatibility across iOS, Android, Outlook and Gmail.
05What is the difference between vCard 3.0 and vCard 4.0?+
vCard 3.0 is defined in RFC 2426 and vCard 4.0 in RFC 6350. vCard 3.0 is the most widely supported version across iOS, Android, Outlook and Gmail. vCard 4.0 adds structured improvements including better international address handling and JCARD (JSON format) support, but may cause import issues with older enterprise clients.
06Should I use a vCard QR code or a URL QR code for my business card?+
A vCard QR code works offline and saves contact details directly without a third party. A URL QR code pointing to a hosted contact page is editable after printing, supports scan analytics, and produces a much smaller payload — which means a less dense code that scans reliably even at the smallest print sizes. If your details may change within the life of the printed card, a URL approach is often the more practical choice.
07Why is my vCard QR code not scanning from a business card?+
The three most common causes are: the payload is too large for the print size (reduce fields, especially ADDRESS and NOTE); the quiet zone is clipped by the card design (leave 4-module margin on all sides); or a glossy laminate is causing glare. Try scanning indoors under consistent lighting before blaming the code design.
08How do I format a phone number in a vCard QR code?+
Use E.164 international format with the plus sign: TEL;TYPE=CELL:+15551234567. Include the country code and omit spaces, dashes and brackets. Multiple TEL properties are allowed — add one for mobile and one for work if needed.
09Can a vCard QR code contain multiple phone numbers or email addresses?+
Yes. RFC 6350 allows multiple instances of TEL and EMAIL properties in a single VCARD block. Each additional field increases the payload size. Adding two phone numbers and two email addresses adds approximately 60–80 bytes — usually manageable without a significant density increase.
10Is my contact information uploaded when I generate a vCard QR code here?+
No. The vCard QR code is generated in your browser. Your name, phone number, email and address are not sent to a server. The only copy that leaves your device is the image file you choose to download.