The QR code generator makes static codes: the link or text is written into the pattern itself, so there is no account, no redirect and nothing that can be switched off. Download it as PNG or SVG.
Make a QR codeWhy some QR codes expire: static and dynamic codes
A QR code is a picture of some text, usually a web address. The pattern itself can’t expire; what can stop working is whatever the text points to. That depends on which kind of code you made.
| Static code | Dynamic code | |
|---|---|---|
| What the pattern holds | Your actual link, Wi-Fi details or text | A short link on the QR company’s server |
| Works as long as | The thing it points to exists | The company keeps redirecting it, usually while you pay |
| Change the link after printing | No | Yes, in the company’s dashboard |
| Scan counts | No | Usually |
| Account needed | No | Yes |
Many sites offer a “free” dynamic code on a trial. When the trial or subscription ends, the redirect can be switched off and every printed copy stops working, even though the pattern hasn’t changed. A static code has no middleman. Denso Wave, the company that invented the QR code, says no licence is needed to use codes made to the standard, so a static code costs nothing to make or keep.
Make a static QR code that won’t expire
- Choose what it should open. A web link, plain text, Wi-Fi, an email, a phone number, a text message or a contact card.
- Type or paste the details. Use the full, final address, including https://. Shorter links make a simpler pattern that scans more easily.
- Set the size and colours. Dark on a light background scans best. Keep Medium error correction unless you have a reason to change it.
- Download and test. Save PNG for screens or SVG for print, then scan it with two different phones before you print it.
Open “Encoded text” under the preview to see exactly what is stored, character for character.
Check a code you already have
Scan it with your phone camera and look at the address it offers to open, before tapping it. If it shows your own website, the code is static and will keep working. If it shows a short address on a QR company’s domain, the code is dynamic and depends on that company.
If you’ve already printed dynamic codes and the subscription is ending, make static replacements now, pointing straight at the final page, and swap them in before the old ones go dark.
If you might need to change the link later
The one real advantage of a dynamic code is editing after printing. You can get the same thing for free by pointing a static code at a page you control:
- Make the code for an address on your own website, such as yoursite.com/menu.
- Later, change what that page shows, or set it to redirect somewhere new. The printed code keeps working because its address never changes.
This only depends on your own domain staying registered. Avoid encoding a link to a file stored in someone else’s account, such as a shared drive link, which can stop working if the file is moved or its sharing changes.
A Wi-Fi QR code
The Wi-Fi QR code generator writes the network name and password into the code in the format phones recognise, first documented by the ZXing barcode project. For a network called Home with the password correct horse:
WIFI:T:WPA;S:Home;P:correct horse;;- T is the security type (WPA, WEP or nopass), S the network name, P the password.
- Backslash, semicolon, comma, colon and double quote are escaped with a backslash, which the generator does for you.
- A hidden network adds H:true.
A Wi-Fi code is static too, so it never expires, but it stops working the moment you change the password or network name. Make a new one when you do. Anyone who photographs the code can join, so use a guest network for codes on public display.
Adding a logo
A logo in the middle covers part of the pattern. It still scans because QR codes carry error correction: spare data that lets a reader rebuild missing pieces. Denso Wave gives four levels:
| Level | Can restore about | Use for |
|---|---|---|
| L | 7% | Clean screens, the densest data |
| M | 15% | Most codes; the most often chosen |
| Q | 25% | Codes that may get dirty or worn |
| H | 30% | Codes with a logo, or likely to get damaged |
The QR code designer switches to level H when you add a logo and checks the code still scans after every change. Keep the logo to about a fifth of the code’s width; going near 30% leaves no margin for a scratch or poor light.
Printing it
- Size: a common rule of thumb is at least a tenth of the scanning distance. A table card read from 30 cm needs about 3 cm; a poster read from 3 m needs about 30 cm.
- Margin: leave a clear border, ideally four modules (dots) wide, with nothing printed in it.
- File: send the SVG to a printer. It stays sharp at any size; a small PNG blown up goes blurry.
- Test the print: scan the printed proof, not just the screen, in the light where it will be used.
Sources
- Denso Wave (QRcode.com): Error correction feature. Levels L, M, Q and H
- Denso Wave (QRcode.com): FAQ. No licence needed to use QR codes made to the JIS or ISO standard
- ZXing wiki: Barcode contents. Wi-Fi network config format and escaping