QR Code Payload Formatter (text / URL / WiFi / vCard)
Build the canonical text payload encoded in a QR code — plain text, URL, WiFi-network credentials, or vCard contact. Includes a ready-to-render image URL for visual scanning.
Result
How to use this calculator
- Pick the payload type. The relevant fields highlight in the form below.
- Fill in the fields. The full payload is shown in the breakdown.
- Copy/paste the "Render link" into a browser tab to view the QR.
- Or copy the "Full payload" into your own QR library (qrcode-generator, qrcode npm, every smartphone OS API).
About this calculator
Most "QR code generator" tools just call a third-party renderer; the interesting part is building the payload your QR is going to encode. WiFi credentials use a specific colon-and-semicolon format that scanners auto-recognise as "join this network". Contacts use the vCard format with BEGIN:VCARD / END:VCARD. SMS uses SMSTO:number:message. This tool builds the canonical text for each so you can paste it into any QR-rendering library (or the included render-URL).
How it works — the formula
WiFi : WIFI:T:<auth>;S:<ssid>;P:<password>;;
vCard: BEGIN:VCARD\nVERSION:3.0\nFN:<name>\n...\nEND:VCARD
SMS : SMSTO:<number>:<message>These payload formats are recognised by every modern QR scanner because they have specific prefixes the scanner UI uses to decide what action to suggest (join network, add contact, open mailto:, etc.). The actual QR encoding is just text wrapped in error-correcting codewords — see ISO/IEC 18004 for the binary encoding details.
Worked examples
- Inputs:
- kind=url, text=https://example.com
- Output:
- payload "https://example.com" (19 bytes)
- Inputs:
- kind=wifi, ssid=Home, password=hunter2, auth=WPA
- Output:
- WIFI:T:WPA;S:Home;P:hunter2;;
- Inputs:
- kind=vcard, name=Jane, org=Acme
- Output:
- BEGIN:VCARD\nVERSION:3.0\nFN:Jane\nORG:Acme\nEND:VCARD
Limitations
- No inline rendered QR image — the rendered preview URL points to an external service. For privacy-sensitive payloads use a local library (qrcode-generator npm).
- Payload-size validation is an upper bound; actual capacity depends on the chosen error-correction level and character mode.
- Does not support all vCard 4.0 advanced fields (PHOTO, GEO, KEY, etc.).
Payload formats are stable, scanner-recognised standards — they decode the same way on every modern scanner regardless of who renders the visual code.
Frequently asked
What is the WiFi payload format?+
What is vCard?+
Why is my URL working when I scan it with an iPhone but not with a generic scanner?+
What error-correction level should I pick?+
Why is there a maximum payload?+
Are these payloads readable by my phone?+
Related calculators
More tools you might like
Hand-picked tools that pair well with this one — same audience, same intent.
Estimate password entropy in bits and the time an offline brute-force attacker would need at common cracking rates. Pure client-side — your password is never sent anywhere.
Calculate what X% of a value is, find what percentage one number is of another, or compute the percentage change between two numbers.
Six-mode percentage tool — X% of Y, X is what % of Y, % change, % difference (symmetric), add %, and subtract %.
Validate a barcode number, compute the check digit, and produce a ready-to-render image URL. Supports EAN-13, EAN-8, UPC-A, Code 128, and ISBN.
Encode a string for use inside a URL (or decode percent-escapes back to text). Shows component vs full-URI variants and base64url for token use.
Look up the ASCII/Unicode codepoint for any character — or go the other way and turn a list of codepoints back into text. Shows decimal, hex (U+XXXX), octal, binary, HTML entity, JS escape, and URL-encoded forms for every code point.