Turn your contact details into a scannable vCard QR code in seconds
Fill in your name, phone number, email, and any other details you want to share – hit generate, and you get a QR code anyone can scan to save your contact instantly. No app, no sign-up, no upload.
Your info is encoded directly into the QR code image itself. That means it works offline, never expires, and nothing is stored on any server. Everything runs in your browser.
How to use the vCard QR code generator
- Choose the vCard type in the tool above.
- Fill in your details – at minimum a first name and one contact method (phone or email). Add job title, company, website, and address if you want.
- Pick a size and colour (optional) – the defaults work well for print and screen.
- Click Generate – your QR code appears instantly.
- Download as PNG or SVG – PNG for sharing online, SVG for print (it scales without going blurry).
Scanning it opens the phone's native "Add to contacts" prompt. No app needed – the camera app on any modern iPhone or Android handles it natively.
Worked example
Say you want a QR code for this contact:
| Field | Value |
|---|---|
| First name | Sara |
| Last name | Okonkwo |
| Phone | +44 7700 900123 |
| [email protected] | |
| Company | Bright Labs |
| Website | https://brightlabs.example.com |
The tool encodes those fields into a vCard 3.0 string that looks like this inside the QR code:
BEGIN:VCARD
VERSION:3.0
N:Okonkwo;Sara;;;
FN:Sara Okonkwo
ORG:Bright Labs
TEL;TYPE=CELL:+447700900123
EMAIL:[email protected]
URL:https://brightlabs.example.com
END:VCARDWhen someone scans the code, their phone parses that text and pre-fills a new contact with every field – ready to save in one tap.
How to generate a vCard QR code in code
If you need to generate contact QR codes programmatically (for badges, PDFs, or bulk export), here are two quick approaches.
Python
# pip install qrcode[pil]
import qrcode
vcard = (
"BEGIN:VCARD
"
"VERSION:3.0
"
"N:Okonkwo;Sara;;;
"
"FN:Sara Okonkwo
"
"ORG:Bright Labs
"
"TEL;TYPE=CELL:+447700900123
"
"EMAIL:[email protected]
"
"END:VCARD"
)
img = qrcode.make(vcard)
img.save("sara_contact.png")
JavaScript (browser or Node)
// npm install qrcode
import QRCode from 'qrcode';
const vcard = [
'BEGIN:VCARD',
'VERSION:3.0',
'N:Okonkwo;Sara;;;',
'FN:Sara Okonkwo',
'ORG:Bright Labs',
'TEL;TYPE=CELL:+447700900123',
'EMAIL:[email protected]',
'END:VCARD'
].join('
');
QRCode.toDataURL(vcard).then(url => {
const img = document.createElement('img');
img.src = url;
document.body.appendChild(img);
});
The vCard format is defined in RFC 6350. Both snippets above encode a standard vCard 3.0 string – the same format the tool on this page produces.
How it works
A QR code is a 2D barcode that stores text. A vCard QR code simply stores a vCard-formatted text block – a plain-text standard that phones have understood since the early 2000s. The QR encoder converts that text to a grid of black-and-white squares; the phone camera decodes the grid back to text and recognises the BEGIN:VCARD marker.
Because the data lives inside the image, the code never expires and works with no internet connection. There is no redirect, no tracking pixel, and no account to manage.
When to use a vCard QR code – and when not to
Good use cases
- Business cards – print the QR on the back so recipients save your number without typing.
- Conference badges and lanyards – attendees scan once and skip manual entry.
- Email signatures – embed the PNG so anyone on mobile can add you in a tap.
- Brochures and packaging – one scan, full contact saved.
When to choose something else
- If your details change often – a static vCard QR is fixed at generation time. Reprint or regenerate when your number or email changes. (A "dynamic" QR from a paid service can redirect to a live URL, but then requires a third-party account.)
- If you only want to share a URL – a plain URL QR code is simpler and smaller.
- If you need bulk, data-driven generation – use the Python or JS snippets above, or a CSV-to-QR pipeline, rather than the browser tool.
Your data stays private
This tool runs entirely in your browser. Your name, phone number, email, and any other contact details are never sent to our servers. The QR image is generated locally and downloaded straight to your device. You can even turn off Wi-Fi after the page loads and it will still work.
Ready to create your contact QR code? Fill in your details in the tool above, download, and share. It takes under a minute – and it's completely free.