Troubleshooting
vCard QR code imports with missing or wrong fields
Two causes cover almost all of these: unescaped commas and semicolons inside a value, which split the field, and a missing FN line, which leaves the display name blank. Both fail silently at generation and only appear when someone saves the contact.
1. Unescaped punctuation
Inside a vCard value, four characters must be backslash-escaped:
, ; \ and a newline, written \n
A job title of Director, Engineering written literally becomes two values, and most address
books show only Director. An address containing semicolons is worse, because ADR is
itself semicolon-structured.
2. Missing FN
N is the structured name (family;given;middle;prefix;suffix — all four semicolons
required, even when empty). FN is the display name, and many address books use it
exclusively.
Omit FN and the contact imports with a blank name. This is the single most common vCard
QR defect.
3. Line folding
The spec folds lines longer than 75 octets by inserting CRLF followed by a single space. Strict parsers reject unfolded long lines; lenient ones accept them. A long note or a long URL is where this bites.
4. Version mismatch
vCard 4.0 writes phone types as TEL;TYPE="cell":; 3.0 writes TEL;TYPE=CELL:. A 3.0 parser
reading 4.0 syntax may drop the type or the whole line. Use 3.0 for QR codes — it is
universally supported and the extra 4.0 properties rarely survive import anyway.
5. Fields the phone simply ignores
Address books drop properties they do not recognise. X- extensions, KIND, GENDER,
ANNIVERSARY and most 4.0 additions usually vanish. They still cost bytes, which pushes the
version up and makes the code harder to scan — so removing them improves the code twice.
6. A photo
PHOTO;ENCODING=b with base64 image data cannot fit: images are kilobytes and the maximum
QR payload is 2,953 bytes. If the generator allowed it, the code will be enormous and
unscannable. Use PHOTO;VALUE=URI: pointing at a hosted image.
The diagnostic
Decode your own code with our scanner and read the raw vCard text. A split value or
a missing FN is obvious immediately.
FAQ
Why does my contact import with no name?
The vCard is missing the FN (formatted name) line. N alone is not enough — many address books display FN exclusively.
Why is my job title cut off at the comma?
Commas inside a vCard value must be backslash-escaped. Unescaped, they split the value and most parsers keep only the first part.
Should I use vCard 3.0 or 4.0 in a QR code?
3.0. It is universally supported by phone cameras and scanner apps, and 4.0's extra properties are usually discarded on import anyway.
Can I include a photo in a vCard QR code?
No. Base64 image data runs to kilobytes against a 2,953-byte maximum. Link to a hosted image with PHOTO;VALUE=URI: instead.
Try it — free, no signup
Related
- QR code not scanning: the checklist — Work through these in order, because they are ranked by how often they are the actual cause: quiet zone, contrast, size for distance, glare, blur from…