GlobalKit

vCard QR Code Generator

Put your contact details into a QR code that a phone can save as a contact. Name, company, phone, email, website and address.

Higher levels survive more damage but make the code denser.

PNG, JPEG or WebP up to 1 MB. The file stays on your device. Check with a phone that the code still scans.

Fill in the form to see the QR code.

Everything is generated in your browser; your data and logo are not uploaded.

How it works

Fill in the fields you want on the card; the code appears as you type. A scanning app that understands vCards can then offer to save the details as a contact, so nobody has to type your number from a card. Everything is generated in your browser. The details and the logo are not uploaded.

The code carries a vCard 3.0 card (RFC 2426) as plain text, one property per line, with CRLF line endings:

Empty fields are left out, so a short card produces a small, easy-to-scan code.

Escaping and validation

In vCard text, backslash, semicolon, comma and line break have a meaning, so the tool escapes them. A comma in "1 Main Street, Springfield" becomes a backslash and a comma in the card. Control characters, including line breaks, are rejected outright, because a value containing a line break could otherwise start a new property and put a phone number on the card that you never typed.

Before the card is built, the tool checks that the phone number contains only digits, +, spaces and ( ) - . /, that the email has the shape of an address, and that the website is an http or https address.

Size

Each field adds bytes. Letters such as é, ö or ñ use two bytes each, so names and addresses that contain them take more room than plain ASCII ones. Fewer fields give a lower version and larger squares. The page shows the version that was chosen; if the card does not fit, you are told to remove fields or lower the error correction level.

Examples

These are the lines the tool writes for each input (every line ends with CRLF):

InputWritten into the code
First name Alex, last name MorganN:Morgan;Alex;;; and FN:Alex Morgan
Company Example Corp, title Sales managerORG:Example Corp and TITLE:Sales manager
Phone +1 555 010 0100TEL;TYPE=CELL:+1 555 010 0100
Email alex@example.comEMAIL:alex@example.com
Website https://example.comURL:https://example.com/ (normalized with a trailing slash)
Address 1 Main St, SpringfieldADR;TYPE=WORK:;;1 Main St\, Springfield;;;;
Company ACME onlyN:;;;; and FN:ACME and ORG:ACME
Last name A;B, first name Alex, company X, YN:A\;B;Alex;;; and ORG:X\, Y

The full card for the first five rows is BEGIN:VCARD, VERSION:3.0, then the lines above in the order N, FN, ORG, TITLE, TEL, EMAIL and URL, and END:VCARD (an address, when present, comes after URL). That card is roughly 190 bytes, compared with the 17 bytes that fit in the smallest QR code at the lowest error correction level. That is why a business card code looks denser than a short link.

A practical way to work: start with name, phone and email. Add the company and website if the card needs them, and leave the address out unless it matters, since a street address is often the longest field.

Things to watch for

Frequently asked questions

Last updated: 10/11/2026

Related tools