vCard QR Code Generator
Show vCard text
BEGIN:VCARD VERSION:3.0 END:VCARD
Business cards have not gone away — they have just become more efficient. Instead of printing 500 paper cards a year and hoping the recipient remembers to scan or type the contact details, a single QR on a card, name badge, sticker or email signature lets anyone with a phone save your contact in two taps. The QR encodes a vCard payload, which is the same format every modern address book on iOS, Android, macOS and Windows already understands. This generator builds the vCard correctly and turns it into a printable QR — entirely in your browser.
vCard 3.0 is the format encoded here. The payload is a multi-line text block starting with `BEGIN:VCARD` and ending with `END:VCARD`, with fields for name (FN, N), organisation (ORG), title, multiple phone numbers, email, website, address (ADR), and a free-form note. Special characters are escaped per RFC 6350 so commas, semicolons, line breaks and backslashes in any field work correctly across scanners. The form on this page populates only the fields you fill in; empty fields are omitted from the output, which keeps the QR as small as possible and the resulting vCard clean.
Every popular phone scanner understands the vCard QR. iOS Camera shows an Add Contact button when it sees the payload. Android's Google Lens does the same. Third-party scanners (Bitwarden, 1Password, dedicated QR apps) recognise it. The recipient does not need to install anything special; the standard scanner already on their phone is enough. This is the main reason vCard QRs have been quietly displacing physical business cards in the last few years: the friction of saving the contact drops from typing 30 fields to tapping one button.
The page produces three downloadable artefacts: a PNG of the QR (good for direct printing onto cards, posters or email signatures), an SVG of the QR (vector quality, ideal for large prints or laser engravings), and a `.vcf` text file (the raw vCard for direct import into a phone or address book without scanning). Most workflows only need the PNG, but the SVG matters when you intend to print the QR on a metal name badge or as part of a large-format conference banner. The .vcf file is a convenience for backup and for sharing the contact with someone who already has it open in another channel.
Privacy matters more here than for most generators because the input is your contact information. Everything happens in your browser: no upload, no telemetry, no cloud account. You can disconnect from the internet after the page has loaded once and the generator continues to work. The Network tab in DevTools will show zero outbound requests during typing or downloading. For freelancers, salespeople, recruiters and anyone whose contact details are how they get hired, this matters: most online vCard QR generators upload your name, phone, email and address to their backend, which is the wrong shape for material that should not enter someone else's database.
There are a few practical patterns worth knowing. First, keep the vCard short — the more fields you fill in, the more data the QR has to encode, and the denser (harder to scan in dim light) the QR becomes. Fill in only the fields recipients actually need: full name, primary phone, primary email, website. Address is optional; job title is useful at events but not on a personal QR. Second, error-correction level Q (~25%) is a good balance for a vCard QR with a logo overlay (you can blank up to 25% of the modules and the code still scans); H-level (~30%) is overkill unless the print medium is rough. Third, test the QR on the actual phone the recipient is most likely to use; iOS and Android both work universally for valid vCards, but a printed scan in dim conference-hall lighting is harder than the same QR in your office. Fourth, refresh the QR whenever your contact info changes — and consider treating it as part of an email signature so you can update once across all your touch points.
Common workflow scenarios: a freelance designer prints 250 cards a year with the vCard QR alongside the email; a sales rep adds the vCard QR to the email signature so every reply is also a contact-add prompt; a conference speaker shows the QR on the closing slide so attendees can save the contact in five seconds; a job seeker prints the vCard QR on the back of a printed CV so recruiters can save them with one tap; a personal-trainer posts the QR on the gym wall as part of the contact poster. In every case the win is the same: the recipient needs zero typing to save you to their address book.
This tool pairs naturally with the rest of Omnvert's QR utilities. The QR Code Reader & Scanner is the inverse — drop a vCard QR you printed and confirm the parsed name, phone and email match what you intended before going to print. The QR Code Generator covers the same workflow for arbitrary URLs and text. The Bulk QR Generator produces a ZIP of QRs from a CSV when you have many vCards to encode (think a sales team where each rep needs their own QR sticker for a trade show). The WiFi QR Generator covers the network-onboarding workflow. All of these run in the browser with the same privacy guarantees, so the entire contact-handover flow happens in a single tab without any byte going to a server.
- Print on a business card so recipients save you with one tap.
- Add to email signature so every reply doubles as a contact-add prompt.
- Show on the closing slide of a conference talk for fast contact capture.
- Print on a name badge for a trade show or conference.
- Add to the back of a printed CV for recruiters.
- Stick on a laptop or notebook as part of an introduction.
- Onboard a freelancer or contractor by sending a vCard QR in the welcome email.
- 1Fill in the fields you want included — at minimum first/last name plus phone or email.
- 2Empty fields are skipped to keep the QR compact and scannable.
- 3Pick size and error-correction level (Q is recommended for QRs with a logo overlay).
- 4Download PNG for printing, SVG for vector prints, or .vcf for direct import.
- 5Test the QR on a phone before going to print to confirm the parsed fields look right.