Skip to content

vCard QR Code Generator

Fill in the details you want to share and print the code on a card, badge or slide. One scan offers to save you as a contact, and nothing you type leaves this page.

With the country code (+1 …) so it works anywhere.

Your details stay on this page: they’re not sent, saved or put in the address bar. Leave out what people don’t need; fewer fields make a simpler code.

More optionsError correction M · black on white · PNG 1024 px

Error correction

How much of the code can be damaged and still read. Higher levels make a denser code; M suits most uses.

Colours

Contrast 21.0:1. Dark on light with strong contrast: easy to scan.

PNG size

Both downloads include the quiet zone, a light margin 4 modules wide that readers need around the code. Keep it when you place the code in a design.

ExampleContact QR code, static

53 × 53modules

It holds the contact details itself, so it never expires and works without this site.

Version
9 (of 40)
Data
180 of 180 bytes
Reads back
Checking…
How this works: Method, 10 sources, Checked against 1 worked example,

How this works

Method

A picture or camera frame is decoded on this device, by the browser’s own barcode detector where it has one, else by the open-source jsQR decoder (a still image is retried smoothed and at half size). The text is shown, never opened: a link’s real domain is found with common Public Suffix List endings and checked for short links, look-alike letters, text before an @, IP addresses and plain http. New codes are encoded as UTF-8 in the smallest version that fits, then decoded again to check they read back.

How it’s tested

One worked example for this page is checked by automated tests before every release: given the inputs, the tool must show the expected answer.

Changes

  • First version: a scanner for camera, photos and screenshots with link checks, and generators for links, text, Wi-Fi and contacts with SVG and PNG downloads.

How we make toolsReport a mistake

Worked example: a contact card for Alex Example

With a name, phone, email, company, job title and website filled in, the card is 10 lines: BEGIN and VERSION, N and FN for the name, ORG, TITLE, TEL, EMAIL and URL, then END.

That is 180 bytes of UTF-8. At error correction M version 8 holds 152 bytes, too few, and version 9 holds 180, so the code is version 9: 53 × 53 modules, or 61 × 61 with the 4-module quiet zone on every side.

How a contact fits in a code

A vCard is the plain-text contact format that phones, Outlook, Gmail and Apple Contacts all import. Each line is one property: N for the name in parts, FN for the name as shown, ORG for the company, TITLE, TEL, EMAIL and URL. The page writes only the fields you fill in, so the code stays as small as possible.

Commas, semicolons and backslashes in a value are escaped with a backslash, as the vCard standard requires, so a company called Example Bakery, Ltd isn’t split into two. The card is written as vCard 3.0: the fields used here are defined the same way in vCard 4.0 (RFC 6350), and 3.0, the older version, is the safer choice for older readers.

Every field you add makes the code denser. The example card on this page is 180 bytes, a version 9 code 53 modules wide at level M, while https://example.com fits in version 2, 25 modules wide. Print a dense code larger so a phone can make out each module, and keep the white margin around it.

The vCard fields this page writes

Each property, what it holds, and the line the generator writes for an example value.

Each property, what it holds, and the line the generator writes for an example value.
PropertyHoldsExample line
NName, in parts: last;first;middle;prefix;suffixN:Example;Alex;;;
FNThe name as it is shownFN:Alex Example
ORGCompany or organisationORG:Example Bakery\, Ltd
TITLEJob titleTITLE:Owner
TELPhone number, best in international formTEL;TYPE=CELL:+1 555 0100
EMAILEmail addressEMAIL:alex@example.com
URLWebsiteURL:https://example.com

Frequently Asked Questions

What happens when someone scans a vCard QR code?

Their phone’s camera reads the card and offers to add it as a new contact, with your name, phone, email and the other fields already filled in. They can edit before saving. Nothing goes through a website, so it works without signal.

Can I put a vCard QR code on a business card?

Yes. Download the SVG for the printer, keep the white margin around the code, and print it dark on a light background, large enough that each square is easy to see. Fill in only the fields people need: fewer fields make a coarser code that scans more easily.

Why is my contact code so dense?

Every character takes space: the example card here is 180 bytes, against 19 for https://example.com. Drop fields people don’t need (a website if your email shows the domain, a job title on a personal card), or choose error correction L under More options for a coarser code.

Are my contact details stored?

No. The card is built in your browser as you type. It isn’t sent to a server, saved, or put in the page’s address, so a shared link to this page never carries your details.