Make a QR code that never expires
A QR code for a link, your Wi-Fi, a contact card, some text or an email, as PNG or SVG. The code holds what you type, so it keeps working for good, and it is made in your browser: nothing is sent anywhere.
Your code appears here as you type.
Never expires. The code holds what you typed. There is no short link in it, so there is nothing to switch off, redirect or track.
What a QR code can hold
A link opens in the phone's browser. A Wi-Fi code offers to join the network, so guests never have to type the password. A contact card offers to save the person to Contacts, with their phone number, email, company and website. An email code opens a new message with the address, subject and text already filled in. Plain text simply shows up on the screen.
The phone's own camera handles all of these on an iPhone and on most Android phones, with no scanner app needed.
Why some QR codes stop working, and why these do not
Many QR code sites make what they call dynamic codes. The code holds a short link to their server, which forwards the scan to your address. That lets them count scans and change where the code goes, and it also lets them switch the code off, which is what happens to a lot of printed codes when a free trial ends.
The codes made here are static: the code is your link, network or contact card itself, and a phone reads it without asking any server. There is nothing to renew and no one who can turn it off. The one thing that can stop a link code working is the web page it points to going away.
Printing a QR code that scans
Dark on light scans best, and the empty margin around the code is part of it: leave it in. The more a code holds, the more squares it has and the larger it needs to be printed, so a short link makes a code that scans from further away. The page warns you when a code gets dense, when the colors are too close, and when a link starts with http: rather than https:.
SVG stays sharp at any size, so it is the better file for print; PNG is easier to drop into a document or a message. Before printing many, scan a test print with a phone or two.
Need a barcode instead?
Switch to Barcode at the top of the tool for EAN-13, UPC, Code 128, Code 39 and the other linear barcodes, or open the barcode generator page, which starts there.
FAQ
Does the QR code expire?
No. It holds your content itself, not a short link through someone else's service, so it keeps working for as long as whatever it points to does.
Is what I type sent anywhere?
No. The code is drawn in your browser by a QR code writer that this site serves itself, and nothing you type, including a Wi-Fi password, leaves your device.
Can I change the link later?
Not in a printed code: the link is part of the pattern. If you may want to change where it goes, point the code at a page you control, such as your own website, and change that page instead.
Will a logo stop it scanning?
Usually not. With a logo the code switches to high error correction, which lets a scanner rebuild up to about 30% of it, and the logo covers much less than that. Keep the logo simple and test a print, since very dense codes have less room to spare.
How do I share my Wi-Fi without saying the password out loud?
Choose Wi-Fi, type the network name and password, and print or show the code. A guest points their camera at it and joins. Keep in mind that anyone who photographs the code can read the password from it. There is a page just for Wi-Fi codes with more on this.
Carrying a card code around?
Wrist Codes keeps loyalty cards, membership numbers and short codes on Apple Watch and iPhone, ready at the checkout. Barcodes fit, and so do short QR codes of up to 32 plain characters. Scan one off this screen with the app to add it.
FreeiPhoneApple Watch