How to use
Pick a mode at the top — plain text, URL, Wi-Fi credentials, or email — fill the matching fields, and the preview updates live. Open "options" to tune the pixel size, quiet-zone margin, error correction level, and the dark / light colors. Download as PNG for everyday sharing or SVG when you need to print large without aliasing.
Wi-Fi codes follow the de-facto standard that iOS and Android both recognize at the system camera level — scanning offers a "Join network" prompt. Email codes use a mailto URI so the scanner opens the user's mail app pre-filled with the recipient, subject, and body. All encoding runs in your browser; the data you type is never sent anywhere.
FAQ
What does the error correction level (L / M / Q / H) actually do?
It controls how much of the QR can be lost or covered while still scanning correctly: L ~7%, M ~15%, Q ~25%, H ~30%. Higher levels add Reed–Solomon redundancy, which means more modules for the same payload. Use L or M for clean screens and digital sharing, Q or H for printed material that might get scratched, smudged, or covered by a logo.
How small can I print a QR code?
A useful rule of thumb is "1/10 of the scanning distance" — a code read from 30 cm away should be ~3 cm on each side. Below ~1.5 cm most phone cameras struggle. Always include the quiet-zone margin (at least 4 modules) and keep contrast high; tiny codes with grey-on-white or coloured backgrounds fail to scan even at decent sizes.
Can I add my logo in the middle?
Yes — overlay the logo on the downloaded PNG or SVG. Keep the logo under about 20% of the QR area and set the error correction to Q or H so the redundancy covers the obscured modules. This tool does not insert the logo for you; do it in any image editor or SVG editor.
Why won't my coloured QR scan?
Two reasons: low contrast, or the wrong polarity. Scanners look for dark-on-light, so swapping (light foreground, dark background) breaks them. Keep the dark colour genuinely dark and the light colour close to white — pastel-on-pastel codes fail even when they look fine to the eye.
How much data can a QR hold?
In theory: about 4,200 alphanumeric characters or 2,900 bytes at the largest version with ECC L. In practice the code becomes too dense to scan reliably from a phone well before that. For URLs over ~80 characters, consider a shortener — the resulting QR is sparser and reads much faster.
Related concepts
A QR (Quick Response) code is a 2D matrix barcode standardized as ISO/IEC 18004. It encodes data in modules — the black and white squares — arranged on a grid sized by "version" from 21×21 (v1) up to 177×177 (v40). Three large finder patterns in the corners let cameras locate and orient the code from any angle. Reed–Solomon error correction interleaves redundancy through the matrix so the code stays readable even with scratches, glare, or a partial cover.
For specific payloads, ecosystems converged on simple text conventions rather than a binary header. URLs are stored verbatim and the scanner detects the http(s) prefix. Wi-Fi uses the WIFI:T:<auth>;S:<ssid>;P:<password>;H:<hidden>;; format originally introduced by Android and now read by iOS as well. mailto:, tel:, sms:, and geo: URIs all dispatch to the matching native app on phones. There is no formal QR "type" field — the prefix is the contract. That is why the same text-only encoder can produce Wi-Fi, email, and URL codes interchangeably; the difference lives in the payload, not in the QR itself.