Static vs dynamic QR codes: what you actually give up with each
A static QR code holds your link. A dynamic one holds someone else's link that forwards to yours. Everything else, good and bad, follows from that.
The whole static vs dynamic QR code question comes down to one sentence. A static QR code contains your link. A dynamic QR code contains the vendor's short link, and the vendor's server forwards every scan to yours.
Everything people list as a pro or a con, editing, tracking, expiry, subscriptions, follows from where that forwarding step lives. Once you see it that way, the choice usually makes itself.
What is inside a static QR code?
Exactly what you typed. If you made a code for yoursite.com/menu, the pattern encodes those characters and nothing else. A phone reads them and opens the page directly.
Nobody sits between the scan and your page. There is no account holding the code, no server that has to stay up, no bill that has to keep being paid. The code works as long as the page it points at works. Print it today and it will scan in ten years.
The catch is just as simple. What is printed is printed. If the menu moves to a new address, the code keeps opening the old one.
What is inside a dynamic QR code?
A short link on the vendor's domain, something like qr.vendor.com/x7Kp2. When somebody scans it, their phone goes to the vendor first. The vendor logs the scan and forwards the person to whatever destination is currently saved in your account.
That middle step is where both the benefits and the costs come from:
You can change the destination after printing. Edit it in the dashboard and every printed code follows.
You get scan counts. Time, rough location, device type, because every scan passes through a server that can count it.
The code is less dense. A short link needs fewer squares than a long URL, so the same printed size is easier to scan.
The code only works while the vendor says so. Stop paying, let a trial end, or have the vendor shut down, and the forwarding stops. The printed code then opens an error page or the vendor's upsell.
| What matters | Static | Dynamic |
|---|---|---|
| What the code contains | Your link | The vendor's short link |
| Change destination after printing | No | Yes |
| Scan counts | No | Yes |
| Needs an account or subscription | No | Almost always |
| Keeps working if you stop paying | Yes | No |
| Collects data about the person scanning | No | Yes |
Why a free dynamic QR code usually means a trial
Running a redirect server costs money, so dynamic codes are what generators charge for. The common pattern is a free trial that makes dynamic codes by default, then a paywall when the trial ends.
The large vendors say this openly in their own help pages. QR Code Generator's support documentation, for example, states that static codes keep working after the trial while dynamic codes are deactivated. That is fair as a business model. It is less fair when somebody printed 2,000 flyers during the trial without knowing which kind of code they had made.
If a generator asks you to sign up before it shows you the code, assume it is dynamic until it says otherwise. The trial is only one way a code dies, and we went through the others in do QR codes expire?
When is a dynamic QR code worth paying for?
Honestly, sometimes. Dynamic codes earn their subscription when:
the print run is large and the destination is likely to change before the paper is thrown away, such as packaging with a two-year shelf life
you need scan numbers for a campaign report and the inquiry count alone will not satisfy whoever reads it
you want to send different people to different pages without reprinting, such as a seasonal offer on a permanent sign
If none of those apply, you are paying monthly for a feature you will not use, and accepting a dependency you did not need.
The third option most guides leave out
There is a middle path, and it is the one we would use for most small print jobs.
Make a static code, but point it at a short address on your own domain that redirects to the real page. yoursite.com/flyer forwards to yoursite.com/spring-offer-2026. Next season you change the redirect on your own website, and every printed flyer follows.
You get the one dynamic feature most people actually need, changing the destination, without a vendor in the middle. Your hosting or website builder already does redirects. If you run the address through your own analytics, you even get a rough count, and we covered the free version of that in how to know which poster worked.
The limits are real. You need a website and the access to set a redirect, and you will not get per-scan data like device or location. If your website address changes, the redirect goes with it, so pick a domain you intend to keep.
The same trick scales. Realtors use one address per yard sign so a rider can move from house to house, which we covered in QR codes for real estate. Marketers use one address per list or region, as in QR codes on direct mail.
How to decide in thirty seconds
The destination will never change, like a WiFi network, a phone number or a contact card: static.
It might change and you have your own website: static, pointed at your own redirect.
It will change, you need scan reports, and you are happy to pay monthly for as long as the paper is out there: dynamic.
The last condition is the one people skip. A dynamic code is a subscription with the same lifetime as your print run. A table tent that sits in a café for four years is four years of billing.
Static codes, nothing to expire.
scanbam makes static QR codes. Your link goes in the code, the code goes on the paper, and there is no account that can switch it off later.
Open the generatorQuestions people ask
Can I change a static QR code after it is printed?
No. The link is part of the printed pattern. What you can do is point the code at an address on your own website and change where that address redirects, which gives you the same effect without a vendor.
Do dynamic QR codes stop working?
They stop when the vendor stops forwarding them, which usually happens when a trial ends or a subscription lapses. The code itself is fine. The server it depends on is what goes away.
Which is better for print, static or dynamic?
For anything with a fixed destination, static. It has no running cost and no dependency. Dynamic makes sense for large print runs whose destination will change, or when you genuinely need scan statistics.
Is scan tracking a privacy issue?
It can be. Dynamic codes log each scan, often with location and device details, and in the EU that can count as personal data under the GDPR. Static codes collect nothing, because nothing sits between the scan and your page.