EN RU
List your company
Campaign setup

QR code generator

A link or text to a clean PNG QR code — set the size, colour, quiet margin and error-correction level, then download. No watermark, nothing uploaded.

Content

The QR image is generated in your browser and never uploaded. Test the printed or on-screen code with a real phone camera before using it in a campaign — contrast, size and margin all affect whether it scans reliably.

Making a QR code that actually scans

A QR code is only useful if a phone camera reads it on the first try, and three things decide that. Contrast: keep the foreground much darker than the background — the default near-black on white is safest, and light-on-dark or low-contrast pairs fail under bad lighting. Quiet margin: the blank border around the code is part of the spec; without it scanners struggle, so keep at least a few modules of clear space. Size: print at least 2 by 2 cm for a code scanned from arm's length, larger for posters and further distances. This generator builds the image in your browser and lets you download a clean PNG with no watermark.

Error correction and tracking links

The error-correction level (L, M, Q, H) is how much of the code can be damaged or covered — by a logo, a fold, a scuff — and still decode, from about 7% at L to 30% at H. Higher correction means a denser code, so raise it only if you need the resilience. Encode the shortest URL you can: a long tracking URL with UTM parameters and macros makes the code dense and fragile, so put a short redirect or link-shortener URL in the QR and let the redirect carry the parameters. For a campaign, point the QR at a URL you can change later rather than a final destination baked into print.

Frequently asked questions

What can a QR code contain?
Any short text. The common cases are a URL, plain text, a phone number (tel:), an email (mailto:) and Wi-Fi credentials (WIFI:...). The presets fill the right format; a phone camera recognises each and offers the matching action.
Which error-correction level should I use?
M (~15%) is the default and fine for most screen and print use. Go to Q or H (~25–30%) only if the code will be small, printed on an imperfect surface, or have a logo placed over the centre. Higher levels make the code denser.
Why won't my QR code scan?
Usually low contrast, too small a size, no quiet margin, or a very long encoded string making the code too dense. Keep the foreground much darker than the background, leave a clear border, print at least 2 cm across, and encode the shortest URL you can.
Can I put my brand colour on the code?
Yes, but keep strong contrast — a dark brand colour on white scans reliably, a mid-tone or light colour does not. Always test the coloured version with a real camera under normal lighting before committing it to print.
Should I encode a tracking URL with UTM parameters directly?
Better not. A long URL makes the code dense and fragile. Put a short redirect or link-shortener URL in the QR and let the redirect add the UTM parameters — you also keep the ability to change the destination after the code is printed.
Is there a size or scan limit on the generated code?
No. A static QR code encodes the text directly, so it works forever and has no scan cap or account. The only limit is how much text fits — a very long string will exceed the QR capacity at higher correction levels.
Can I add a logo in the middle?
Not in this tool, but you can place a small logo over the centre of the downloaded PNG in any image editor. Use error-correction level Q or H so the covered area still decodes, and keep the logo under about 20% of the code area.
Is the code or text sent to a server?
No. The QR image is rendered in your browser and the PNG is built locally. Nothing you type is transmitted or stored.

Related tools

All tools →