# Payload

> The payload is the actual string encoded in a QR code — the URL, the WIFI: block, the vCard. Everything about a code's size, density and minimum print dimensions follows from the payload's length and character set.

Source: https://useqr.app/glossary/payload · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## Payload determines everything downstream

Length → version → module count → module size at a given print width → minimum scan
distance. That chain is the whole of QR code engineering.

## Payload prefixes

The leading characters tell a scanner what to do:

| Prefix | Action |
|---|---|
| `https:` | open in browser |
| `mailto:` | compose email |
| `tel:` | open dialler |
| `WIFI:` | join network |
| `BEGIN:VCARD` | add contact |
| `geo:` | open map |
| `upi://` | open payment app |
| *(none)* | display as text |

## Shortening a payload is free scannability

Before increasing size or error correction, shorten the payload. Removing 60 characters of
UTM tracking from a URL can drop two versions, which makes every module ~15% larger at the
same printed size. That is a bigger gain than any styling change.
