Business Card QR Code Generator

This code carries a full vCard 3.0 contact record rather than a link, so it saves your details straight into the phone's address book and works with no internet connection at all. Every field you fill in adds density, so keep it to what matters.

Last updated:

What a vCard QR code stores

This code encodes a vCard — the standard contact-file format (.vcf) that every phone, mail client and address book understands. Scanning it offers to add a full contact record in one tap: name, organisation, job title, phone, email and website, all landing in the right fields rather than as a blob of text the recipient has to sort out.

The generator writes vCard 3.0. That is a deliberate choice: 3.0 is the version with the broadest support across iOS, Android, Outlook, Gmail and older enterprise address books. Version 4.0 is newer and cleaner but still hits parsers that mangle it, which is not a risk worth taking on a business card you cannot reprint.

vCard is the densest payload of any code on this page, because it carries a whole record rather than a link. Every extra field adds modules and makes the pattern finer. Fill in the fields that matter, leave the rest blank, and keep the printed size at 2.5 cm or more.

Designing the card around the code

The point of a contact code is that it survives the drawer. A paper card gets filed and forgotten; a contact record that made it into the phone at the moment you met is still there a year later. That only happens if scanning is effortless at the moment of the handshake.

  • Print at 2.5–3 cm square — vCard codes are dense and shrink badly
  • Keep the quiet-zone margin clear; do not run the design into the pattern
  • Dark modules on a light background, and avoid glossy varnish over the code — glare kills scans
  • Keep your logo under about 20% of the width and leave error correction at H
  • Print the essential details in text too; not everyone scans a stranger's card

These are static QR codes — what that means for you

The code this page produces encodes your data directly in the pattern of black and white squares. Nothing is stored on our servers, no short link sits in the middle, and no account is involved. A phone camera reads the squares, decodes the text and acts on it. That is why the generator keeps working with your browser offline, and why there is no scan limit, no expiry date and no monthly fee.

The trade-off is that a static code cannot be edited after it is printed. The destination is baked into the image. If you print 5,000 flyers pointing at example.com/summer and then move that page, every flyer is dead. Dynamic codes — the ones behind most paid QR services — encode a short redirect URL instead, so the owner can repoint it later and count scans. They also stop working the day the service that hosts the redirect goes away or the subscription lapses, which is a real risk for anything meant to outlive a marketing budget.

A practical middle ground costs nothing: point the static code at a URL you control and can redirect yourself, such as yoursite.com/menu. You keep the free, permanent, no-dependency code, and you keep the ability to change where it lands.

Sizing, printing and testing before you commit

The rule of thumb scanners have used for years is a 10:1 ratio — the code should be roughly one tenth of the distance it will be scanned from. A code read at arm's length (about 30 cm) works at 3 cm across; a poster read from 3 m needs about 30 cm. Below about 2 cm printed, cheap phone cameras start to struggle regardless of resolution.

Download the SVG rather than the PNG for anything going to print. SVG is vector, so it stays crisp at any size a printer can produce, and it is what design software expects. The PNG is the right choice for slides, emails and social posts where a fixed pixel size is what you want.

Keep the quiet zone — the empty white margin around the pattern is part of the specification, not decoration, and cropping it is the single most common reason a printed code fails. Keep the dark modules dark on a light background; inverted codes are read by fewer scanners than people assume. Then test the real artefact, not the screen: print it at final size, scan it with an iPhone and an Android phone, in the light the code will actually live in.

Frequently Asked Questions

What is the difference between a vCard code and a URL code?

A vCard code carries the contact details themselves, so it works with no internet connection and adds a proper contact record. A URL code points at a page that has to load and usually requires the visitor to copy details manually.

Which vCard version does this use?

vCard 3.0, chosen for compatibility. It is the version iOS, Android, Outlook, Gmail and older corporate address books all handle reliably. 4.0 is newer but still trips up some parsers.

Does it work without internet?

Yes. All the information is inside the code, so a phone in airplane mode can still scan it and save the contact.

Why is my code so dense compared to a URL one?

Because it holds a whole contact record rather than a short link. Leave optional fields blank to simplify the pattern, and print at 2.5 cm or larger.

Can I update the details later?

Not on a printed card — the data is fixed in the pattern. If your details change often, encode a URL on your own domain that serves a .vcf file, so you can update the file and every printed card follows.

Does the contact save automatically?

No. The phone shows the contact card and the user taps to save. Both iOS and Android require that confirmation.

Are my details uploaded anywhere?

No. The vCard is assembled and encoded in your browser; nothing is sent to a server.

Can I add a photo to the vCard?

Not practically. Embedding an image balloons the payload into a code too dense to scan at business-card size. Photos belong on a hosted .vcf file that a URL code points to.

Related free tools

More free utility tools