Static vs dynamic QR codes, and how to make one that scans
Many QR generators hand you a dynamic code: a short link to their own server, which counts every scan before sending people on. A static code leaves out the middleman. It cannot be edited after printing, but it also cannot be switched off.
A QR code is just data drawn as a pattern. What matters is what the data is. In a static code it is your actual content, such as your web address. In a dynamic code it is a short link belonging to whoever generated it, and every scan passes through their servers before reaching you.
Static and dynamic, in one sentence each
- Static: the address, contact card or WiFi details are encoded in the pattern itself, and a phone acts on them directly.
- Dynamic: the pattern holds a short link to a third-party service, which looks up where to send the visitor and forwards them.
The two look identical on paper. The difference only shows up later.
What a dynamic code costs
Dynamic codes are sold on two features, and both are real: you can change where the code points after printing, and you get statistics on scans. The price is less obvious.
- Tracking. Every scan reaches the generator's servers first, so a third party learns when each one happened, roughly where, and on what device. Your visitors are tracked whether or not you ever look at the numbers.
- Lock-in. Many services deactivate codes when a subscription lapses. A printed menu, a product label or a shop window sign then sends people to an error page, and the only fix is to reprint.
- Dependency. If the service changes its terms, raises its prices or closes, every code you printed goes with it.
For a short marketing campaign that needs analytics, that can be a fair trade. For anything printed to last, it rarely is.
You can have the flexibility without the middleman
If the destination might change, put an address on your own domain in a static code, such as
yoursite.com/menu. You can point that page anywhere you like later, and your own
site's analytics can count visits if you want them. The code never depends on anyone else, and
nobody in between sees your visitors.
What a QR code can hold
The QR code generator makes three kinds:
- A website address. The phone offers to open it.
- A contact card, in the vCard format phones understand: name, company, job title, phone numbers, email, website and address. The phone offers to save the contact.
- WiFi details: network name, security type, password, and whether the network is hidden. The phone offers to join, and nobody reads the password aloud.
More content means more modules, the small squares that make up the code, so a full business card produces a denser code than a short web address. Dense codes need to be printed larger, so it pays to include only what people will actually use.
Making a code that scans
- Contrast. The code must be clearly darker than its background. The generator warns when contrast drops below 3:1, but treat anything between 3:1 and 4:1 as borderline and test it. Dark on light is the safe arrangement; light on dark fails on some phones.
- The quiet zone. A code needs a blank margin around it so the camera can find its edges. The generator builds that margin in, and a frame keeps it.
- Error correction. Codes carry redundancy so they still read when partly damaged or styled. The generator uses the medium level, which recovers from about 15 percent damage, and raises it automatically whenever that fits without making the code bigger.
- Testing. Scan the final file with at least two different phones, at the size and in the light it will be used in, before anything goes to print.
Colours, shapes and frames
A QR code has two parts you can style separately. The eyes are the three large squares in the corners, which a camera uses to find and align the code. The data is everything else. Rounded and dotted data modules scan perfectly well; the eyes do most of the work of being recognised, so keep them solid and dark.
A frame with a short call to action, such as "Scan me", tells people what the code is for, and codes with a reason to scan get scanned more. The generator has frames with editable text, and a Popular tab of ready-made styles that set the frame, shapes and colours in one click.
How big to print it
- In the hand, such as a business card or a leaflet: at least 2 cm across.
- At a distance: about a tenth of the scanning distance. A poster read from 2 metres needs a code around 20 cm wide.
- For print, download the SVG, which stays sharp at any size. Use the PNG for websites and documents, at the largest size if it will be printed.
A note on WiFi codes
Anyone who can see a WiFi code can join the network, which is the point on a cafe wall and a problem anywhere else. Put guests on a separate guest network and make the code for that. The guide to sharing a WiFi password covers the rest, including what to do when the person is not in the room.
Common questions
What is the difference between a static and a dynamic QR code?
A static QR code holds its content directly: the web address, contact card or WiFi details are encoded in the pattern itself. A dynamic QR code holds a short link to the generator service, which redirects each scan to your address and records it along the way.
Do static QR codes expire?
No. There is no service behind a static code to switch off or start charging. It keeps working for as long as the website, contact or network it holds is still there.
Can I change a static QR code after printing it?
No, the content is the pattern. If the destination might change, encode an address on your own domain, such as yoursite.com/menu, and redirect it yourself. That gives you the flexibility of a dynamic code without a third party in the middle.
How big should a printed QR code be?
At least 2 cm across for something held in the hand, such as a business card. For anything read from a distance, make it about a tenth of the scanning distance: a code scanned from 2 metres away should be around 20 cm wide. Codes that hold more data need more room.
Can a QR code be in colour?
Yes, as long as the code stays clearly darker than its background. Aim for well above 3:1 contrast, keep the three corner squares solid, and test with more than one phone. Light codes on dark backgrounds are a gamble, because some phone cameras cannot read inverted codes.
How do I make a QR code for WiFi?
Choose WiFi in the generator, enter the network name, the security type and the password, and download the code. Phones that scan it offer to join the network without anyone typing the password. Use your guest network, because anyone who can see the code can join.