How to make a QR code
- Choose what the code should do: open a link, show some text, join a Wi-Fi network, start an email, a call or a text, or save a contact.
- Fill in the fields. The preview updates as you type.
- Change the size, colours, margin or error correction if you need to. A dark code on a light background with a margin of 4 scans best.
- Download a PNG for documents, slides and messages, or an SVG for print and design tools.
- Scan it with your phone camera before you print or share it.
Which error-correction level should you pick?
Every QR code carries extra recovery data, so it can still be read when part of it is smudged, scratched or covered. There are four levels, and the percentage is roughly how much of the code can be damaged before it stops scanning.
| Level | Recovers | Good for |
|---|---|---|
| L | about 7% | Screens and clean prints; holds the most data |
| M | about 15% | Everyday use (the default here) |
| Q | about 25% | Stickers, packaging and anything printed in colour |
| H | about 30% | Codes with a logo on top, or rough and curved surfaces |
Higher levels make the code denser, because the recovery data takes up room. If you’ll place a logo in the middle, use H, keep the logo small and don’t cover the three large squares in the corners. Custom colours lower the contrast that scanners rely on, so Q gives a little safety margin there. No level can rescue a code that’s too pale, though: keep the code dark and the background light.
Static and dynamic QR codes
The codes made here are static. The link, text or Wi-Fi details are stored in the code itself, so it never expires and doesn’t depend on this site or on any account. It works for as long as the link inside it works.
Many QR services sell dynamic codes instead. These hold a short link on the service’s own domain, which forwards people to your address. That lets you change the destination later and count scans, but the code stops working when the subscription ends or the service closes, and some free trials switch codes off after a few days. If you want to change where a printed code leads, make a static code that points to a page on your own website, then update that page.
Frequently asked questions
- Do these QR codes expire?
- No. They're static: the content is stored in the code itself, so it keeps working for as long as the link or details inside it are valid. There's no account and no redirect through our site.
- Is it safe to make a Wi-Fi QR code?
- The code is made in your browser and nothing is uploaded, but the password is stored in the code as plain text. Anyone who scans or photographs it can read the password, so only put it where you'd be happy to write the password itself. A separate guest network is a good idea.
- Can I see how many people scanned it?
- Not with a static code, because it goes straight to your link without passing through any server. To count visits, add a campaign tag such as utm_source=qr to the link and check it in your website analytics.
- What size should I print it?
- At least 2 × 2 cm (about 0.8 inch) for something held in the hand. For scanning from further away, a common rule of thumb is a width of a tenth of the distance, so about 30 cm for a poster read from 3 m. Download 1024 px or more for print, or use the SVG.
- Should I download PNG or SVG?
- PNG works everywhere: documents, slides, messages and websites. SVG is a vector file that stays sharp at any size, which suits print shops and design tools such as Figma, Illustrator and Canva.
Nothing you type leaves your device. Everything on this page runs locally in your browser: there’s no upload, no account and nothing stored on a server.