Search for a QR code generator and most results push you toward a free trial, an account, and a monthly plan. The pitch is “dynamic” codes — editable, trackable, analytics included.
What is rarely explained is that a dynamic code stops working the day you stop paying. If that code is printed on ten thousand menus, that is a genuine problem. Here is the actual difference, and which one you want.
What a static code is
A static QR code contains the data itself. Encode https://example.com/menu and the pattern of squares is that URL, expressed as black and white modules.
Consequences:
- It works forever. No server is involved after generation.
- Nobody can track scans, including you.
- The destination cannot be changed. New URL means a new code.
- More data makes a denser, harder-to-scan pattern.
What a dynamic code is
A dynamic code does not contain your URL. It contains a short link on the provider’s domain — something like qrpro.io/a7f3k — which redirects to wherever you have pointed it.
Consequences:
- You can change the destination without reprinting.
- You get scan counts, times, rough locations, device types.
- The pattern is simpler, because the encoded link is short.
- It depends entirely on that provider staying in business and on your subscription staying active.
The part that gets buried
A dynamic QR code is a redirect you are renting.
Stop paying and the redirect stops resolving. Every printed code becomes a dead link — not a broken page you can fix, but a piece of card that now leads to an upsell screen or a 404. The provider is under no obligation to keep a lapsed account’s links alive, and most explicitly do not.
The same applies if the company shuts down or is acquired. Your codes are only as durable as somebody else’s business model.
This is not hypothetical. QR generator services have closed before, taking working codes with them, and free tiers that silently converted to paid after a set number of scans have caught out plenty of small businesses.
The middle option nobody sells you
You can get the main benefit of a dynamic code without renting anything: encode a URL on a domain you control, and redirect from your own server.
Put yourdomain.com/menu on the printed code as a static QR. Point that path at whatever you like. Change it whenever you want. Nothing expires, nobody bills you, and your analytics come from your own server logs.
You need a domain and the ability to set up a redirect — which, if you have a website at all, you already have. This covers the overwhelming majority of cases where people are told they need a dynamic code.
When dynamic is genuinely worth paying for
There are real cases:
- Campaign attribution across many codes. Fifty codes across fifty locations, each needing separate scan data, with reporting you do not want to build.
- No domain and no intention of getting one.
- A/B testing destinations on the same physical code.
- Marketing teams without server access who need to change destinations themselves.
Outside those, static is the safer choice — and for anything printed at volume or intended to last, static plus your own redirect is better than either.
WiFi codes are always static
Worth stating plainly, because some services blur it: a WiFi QR code cannot be dynamic. It has to contain the network credentials directly for the phone to join — there is nothing to redirect to.
Any service offering a “dynamic WiFi QR code” is doing something else, usually routing you through a landing page with adverts before showing the password. Our WiFi QR code generator produces the standard static format, encoded in your browser, and the password is never sent to a server.
Practical rules for printing
- 3cm minimum for close scanning. Roughly a tenth of the viewing distance for signage — a code read from 2 metres needs to be about 20cm across.
- Matte, not gloss. Gloss reflects overhead lighting straight into the lens.
- Keep the quiet zone. The blank margin around the code is part of the specification. Crowding it with a border breaks scanning.
- Do not invert. White-on-black fails on many readers. Dark modules on a light background is the reliable combination.
- Use SVG for print. It stays sharp at any size; a PNG scaled up will not.
- Test the printed copy, not the screen version. Ink spread and paper texture both affect readability.
Our link QR code generator outputs both PNG and SVG. Codes are static, contain no tracking, and keep working whether or not this site does — because the data is in the code, not on our server.
Join the discussion