Dynamic vs Static QR Codes, Explained With Real Scenarios
A static code holds the destination inside the pattern. A dynamic one points at an address you control. That difference decides whether a typo in 5,000 printed flyers costs you a reprint or two minutes.
Michael Page · Published Oct 9, 2026 · 5 min read

Most QR articles explain this with a diagram and leave you none the wiser. Here is the version that decides it for you.
The difference, in one sentence
A static QR code carries the destination inside the pattern itself. A dynamic one carries a short address you control, which forwards to wherever you point it.
Everything else follows from that. Change the destination of a static code and you have to change the pattern — which means reprinting everything it was printed on. Change the destination of a dynamic code and the pattern stays exactly as it is.
Three jobs where static is the right answer
- WiFi codes for your home or a small office. The network name and password live inside the pattern. Nothing to forward to, nothing that can expire, and it keeps working if the business that made it disappears.
- A phone number or an email address. These rarely change, and when they do you are reprinting the stationery anyway.
- Anything that must work forever without you. A static code has no dependency on any company staying in business. Nobody can switch it off. For a memorial plaque, equipment label, or archive sticker, that is the deciding feature.
Static codes are also free of any ongoing relationship with a provider, which is a genuine advantage and worth saying plainly.
Three jobs where static will cost you
Printed campaigns
You print 5,000 flyers pointing at a landing page. Two days in, the page moves, or the offer ends, or someone notices the URL has a typo. With a static code the flyers are waste paper. With a dynamic one you change the destination and the flyers keep working.
Restaurant and cafe menus
Menus change — seasonally at least, and in practice more often than that. A static code means new table stickers every time the PDF changes. A dynamic code means you update the link and the stickers on the tables stay where they are.
Anything you will reprint
Packaging, business cards, vehicle livery, event signage. The common thread is that the code outlives the thing it points at. If you cannot say with confidence where that link will go in two years, do not bake it into the pattern.
Scan tracking, and what it actually tells you
Because a dynamic code routes through an address you control, it can count what a static code cannot. Each scan can record when it happened, roughly where, and what referred it.
That is genuinely useful: it tells you which of two poster sites performed, whether anyone scanned the table tents at all, and when interest tailed off. It is not a tracking profile of a person, and it should not be sold as one.
Worth being precise about what gets stored, because most providers are vague here. Our scan records keep a salted hash of the visitor's address rather than the address itself — the raw IP is never written down. The rest is a timestamp, an approximate location, and where the scan came from.
Design is not the difference
A dynamic code is usually simpler to look at, which surprises people. A static code must encode the whole destination, so a long URL produces a denser pattern. A dynamic one encodes a short address no matter how long the real destination is.
Denser patterns need to be printed larger to stay reliable. If you are working with a tight space and a long URL, that alone can settle it.
What it costs, honestly
Static codes are free to make here and free to use, with nothing to maintain. You can generate as many as you like.
Dynamic codes need somewhere to host the redirect and somewhere to keep the scan records, so they live in the account side of the platform, which is free to start.
One honest warning that applies to every provider, not just this one: a dynamic code depends on the service staying up. That is the trade you make for being able to change the destination. For anything that must still work in ten years with no one tending it, choose static and accept that the destination is fixed.
Deciding in ten seconds
Ask one question: if this destination had to change tomorrow, what would it cost me?
If the answer is "nothing, I would just make a new code", use static. If the answer involves a printer, a sign-maker, or an apology, use dynamic.
If the thing you are encoding is contact details, there is a third option worth knowing about — a QR code for a business card can carry the details directly or point at a page you keep updated, and the same reasoning decides which.
Questions people ask
Can I turn a static QR code into a dynamic one?
No. The destination is inside the pattern, so changing how it behaves means generating a new pattern. If a code might ever need to change, start it as dynamic.
Do dynamic QR codes expire?
The pattern does not expire, but the redirect depends on the service that runs it. That is the trade-off for being able to change the destination, and it is the reason to use static for anything that must outlive its maintainer.
Is a dynamic code slower to open?
There is one extra hop, which adds a fraction of a second. Nobody notices it in practice.
Does scan tracking identify who scanned?
No. A scan record holds a timestamp, an approximate location, and the referrer. The visitor's address is stored only as a salted hash — the address itself is never stored.
Which one scans more reliably?
Dynamic, slightly, and only because the pattern tends to be simpler. A short address makes a less dense code, and less dense codes survive small print and bad lighting better.
Static for permanence, dynamic for anything printed. That covers almost every real decision.


