What this tool can encode and what it can't
QR codes can carry almost anything that fits in a few thousand bytes of UTF-8 text. This generator presets the most common payloads:
- URL — the workhorse. Drop a https:// link and the scanner opens it in the user's browser.
- Plain text — raw text shown to the scanner, no app launched.
- Wi-Fi network — scanner offers to connect (iOS, Android, all mainstream camera apps). Useful at events, offices, coffee shops.
- Email — opens the user's mail app with the address (and subject / body if you fill them in) pre-populated.
- Phone — initiates a phone call when tapped.
- SMS — opens the messaging app addressed to the number, with optional pre-filled body.
Not supported in the presets but easy to do via the Plain text mode: vCard (contact cards), calendar events (.ics-style), geo locations, MeCard, BizCard formats. Paste the raw payload into the text field.
Picking the right error correction level
QR codes encode redundant data using Reed-Solomon error-correcting codes, so a partially-damaged code can still be read. There are four levels:
- L (Low — ~7%) — smallest code for a given payload. Use when the code will be displayed cleanly on a screen and won't be obscured.
- M (Medium — ~15%) — the right default for most uses.
- Q (Quartile — ~25%) — use for codes printed on uneven surfaces, codes that might get partially obscured.
- H (High — ~30%) — use when you want to add a logo in the center; H ECC can tolerate a small logo without the QR becoming unreadable.
Higher error correction means a denser (visually larger) code for the same payload. Don't over-correct unless you actually need it.
Design tips for QR codes that actually scan
- High contrast. Dark on light is the universally safe choice. Light on dark works on modern scanners but fails on older ones and some printed surfaces.
- Quiet zone. The white margin around the code is part of the spec; don't crop it away. Two modules of margin is the minimum, four is safer.
- Print size. Aim for at least 2 cm (~0.75 in) on a printed page. For posters and billboards, scale up generously — a rule of thumb is 1 cm per 1 m of viewing distance.
- Short URLs. The fewer characters in the payload, the simpler the code, and the easier it is to scan at small sizes. Shortened URLs always beat raw long URLs.
- Test on real phones. Always scan the final code with at least two camera apps before printing. A code that scans perfectly on a Pixel can fail on an older iPhone if the contrast is marginal.
Static vs dynamic QR codes
The codes this tool generates are static: the encoded data is what the scanner reads, no server involved. Once printed, the destination can never change. This is perfect for Wi-Fi credentials, business cards, product packaging, and anything where the data doesn't need to evolve.
Dynamic QR codes (offered by commercial QR services) encode a short URL pointing to a redirect server, which lets you change the destination after the code is printed and also lets the service track scan analytics. They cost money and require a subscription, but they're worth it for campaigns where the destination might change. This tool doesn't do dynamic codes; for those, see Bitly, QR Code Monkey, or similar paid services.