This QR code generator turns any text or URL into a static QR code that you can color, style and download as a PNG or SVG, with no watermark and no sign-up. QR codes link printed menus, posters and app download cards to a web page or a piece of text, and the code here is drawn in your browser as you type.
How to create a QR code
- Type or paste your content into Text or URL. The preview redraws as you type.
- Pick an Error Correction level and a Size (px) from 150 x 150 to 500 x 500.
- Set the Foreground Color and Background Color with the swatches or by typing a hex value. Tick Gradient Foreground to blend two colors, or Transparent Background to drop the background fill.
- Choose a Module Style (Square, Rounded, Dots or Diamond) and a Quiet Zone of 1 to 8 modules. The default of 4 is the margin the QR standard asks for.
- To add a logo, drop a PNG, JPG or SVG on Logo / Image Overlay and set Logo Size between 10% and 30% of the code's width.
- Check the Version, Modules and EC Level cards under the preview, scan the code with your phone, then press Download PNG or Download SVG.
Error correction and how much fits
Error correction adds redundant data so a code still scans when part of it is dirty, creased or covered. Higher levels make the code denser for the same content. For https://example.com/menu the QR code generator picks version 2 (25 x 25 modules) at L and M, and version 3 (29 x 29) at Q and H.
| Level | Restores about | Most text it holds |
|---|---|---|
| Low (L) | 7% | 2,953 bytes |
| Medium (M), the default | 15% | 2,331 bytes |
| Quartile (Q) | 25% | 1,663 bytes |
| High (H) | 30% | 1,273 bytes |
Content longer than that shows an error under the preview instead of a code. Text is stored as UTF-8, so letters and digits take one byte each, é takes two and most emoji take four. Shorter content gives fewer, larger modules that scan more easily, so a long tracking link is worth shortening before you print it. Adding a logo switches error correction to H, the highest level, so the code still scans with its center covered.
A free QR code generator with no expiration
I always recommend static QR codes for permanent URLs. A static code stores the URL itself, so there is no redirect server and nothing to expire. A dynamic code points to a short link on the provider's server and stops working if that link is switched off. Every code made here is static, so test it before printing: you can't change where it points afterwards.
What you can put in a QR code
Most phone camera apps recognize a few text formats besides web addresses and offer to call, write an email or join a network. Type them into Text or URL exactly as shown:
https://example.com/menu
tel:+971501234567
mailto:hello@example.com?subject=Order%20123
WIFI:T:WPA;S:CafeGuest;P:coffee2024;;
The last line holds the network name CafeGuest and the password coffee2024, and fits in a version 3 code at the default M level. The input box also takes several lines, so a vCard contact from BEGIN:VCARD to END:VCARD works too. Encode spaces and symbols in mailto subjects and URL query values with the URL encoder first, the way %20 stands for the space above.
Downloads, batch mode and design tips
Download PNG saves qr-code.png at your chosen size or 500 px, whichever is larger, and includes the logo. Download SVG saves qr-code.svg as vector shapes that stay sharp at any print size, but it leaves the logo out, so for print with a logo use the PNG or add the logo in a design app.
Batch Generate turns the QR code generator into a bulk tool. It takes one URL or text per line. Generate All shows a 200 px preview of each, and Download All as ZIP saves them as 400 px PNGs inside qr-codes.zip, named after their content, such as qr-1-https___example_com_menu.png. Each line becomes one code, so multi-line content like a vCard belongs in the main box.
Use a dark code on a light background
Always use a dark foreground on a light background. I've seen many designers try to be clever with low-contrast colors, only for the codes to be unreadable on older smartphone cameras. Keep both gradient colors dark, and place a transparent PNG only on a light surface. If you want brand colors, the color palette generator can suggest darker shades of your main color. The guide to adding a logo without breaking the scan covers logo size and padding.
To send a whole file through QR codes instead of a link, the optical file transfer tool plays it as an animated stream of codes. Both live in the developer tools section.