
Once a QR code is printed on 10,000 flyers, a trade show banner, or the side of a product box, it's there for good. If the page it points to moves, or you want to know whether anyone actually scanned it, the choice you made before printing decides whether you can do anything about it.
That choice is between a static QR code and a dynamic one. They look identical to the person scanning, but they work very differently behind the scenes.
#What a static QR code is
A static QR code stores its content directly in the pattern of black and white squares. If it's a URL, the full URL is encoded in the code itself. Scan it, and the phone reads that URL and opens it. There's no service in the middle.
The printed payload can't change without changing the pattern. The symbol itself doesn't record scans, but a URL on a domain you control can still redirect visitors or record requests in server logs. What you don't automatically get is a QR platform's editable destination and scan dashboard.
Static codes aren't limited to URLs. They can hold plain text, contact details as a vCard, Wi-Fi network credentials, a phone number, or a pre-filled SMS or email. Some of those, like Wi-Fi credentials, only make sense as static codes, since the phone needs to read the information without an internet connection.
#What a dynamic QR code is
A dynamic QR code stores a short URL that points to a redirect service. When someone scans it, their phone opens the short link, the service logs the scan, and then it sends the visitor on to the real destination.
Because the printed code only contains the short link, you can change the destination at any time without reprinting anything. Update the target URL in your dashboard, and every code already printed points to the new page.
Because every scan passes through the service, you can see analytics: how many scans, when they happened, roughly where, and on what devices. And because a short URL is much shorter than most full URLs, dynamic codes are usually simpler and less dense, which makes them easier to scan.
#Dynamic vs. static QR codes at a glance
| Static QR code | Dynamic QR code | |
|---|---|---|
| What's encoded | The full content or URL | A short link to a redirect service |
| Can you change the destination? | Encoded URL stays fixed; its server can redirect | Yes, through the redirect service |
| Scan tracking | No built-in dashboard; URL requests can be measured | Redirect-request analytics |
| Depends on a service staying online | No | Yes |
| Code density | Higher for long URLs | Lower, easier to scan |
| Works offline for non-URL content | Yes | No |
| Typical cost | Free | Usually part of a paid plan |
#Why code density matters for print
QR codes come in sizes called versions, from version 1, a 21 by 21 grid, up to version 40, a 177 by 177 grid. The more data you encode, the higher the version and the more modules, the individual squares, the code needs.
A long URL with tracking parameters can push a static code into a much denser grid. Dense codes need to be printed larger to scan reliably, are more sensitive to blur, glare, and curved surfaces, and fail more often on older phone cameras.
Error correction adds to the size, too. The QR code standard defines four error correction levels, which provide approximate restoration capacities of 7%, 15%, 25%, or 30% of codewords, as DENSO WAVE explains. These percentages are not guarantees about how much visible area you can cover or damage. Higher levels make codes more resilient, which is handy for packaging or outdoor signs, but they also add modules. A short dynamic link leaves more room for high error correction without making the code unwieldy.
#When a static QR code makes sense
Static codes are the right choice when the content should never change and you don't need data. Wi-Fi access codes in a café, a vCard on the back of a business card, a link to a permanent product manual hosted on your own domain, or a serial number on equipment all fit.
They also make sense when you need independence from any service. A static code will work for as long as the destination exists, whether or not you're paying for a QR platform. For things printed to last for many years, like engraved plaques or product labels, that matters.
The risk with static codes is that the destination has to stay put. If the encoded URL stops resolving, printed codes become unusable. If you still control that URL, you can preserve it or add a server-side redirect without reprinting. If you go static for a URL, make sure it's one you control and will keep alive.
#When a dynamic QR code makes sense
Dynamic codes are the better choice for almost all marketing. Campaigns change, landing pages get replaced, and you'll almost certainly want to know whether a flyer, poster, or ad actually drove traffic.
They're also the safe choice for anything printed in large quantities. If there's a typo in the destination URL, or the page moves, you fix it in a dashboard instead of throwing away a print run.
And they let you get more out of one code. With smart routing, a single dynamic QR code can send iPhone users to the App Store and Android users to Google Play, or send visitors to different pages by country or language. You can see how that works in our guide to geo-targeted links.
#The biggest risk with dynamic codes: Losing control of the link
Dynamic codes depend on the redirect service staying online and your account staying active. That's where most horror stories come from.
Some QR generators offer free dynamic codes, then deactivate them when a trial ends or a subscription lapses, replacing the redirect with an ad or an upgrade page. Businesses have found menus, product packaging, and signs suddenly pointing nowhere, with the only fix being to pay or reprint.
The way to protect yourself is to own the domain in the code. If your dynamic QR codes use a custom domain like go.yourbrand.com, the printed codes point to a domain you control. If you ever change providers, you point that domain at the new service and recreate the same short links, provided the replacement supports those paths, redirects, and HTTPS certificates. Plan and test that migration before changing DNS.
Before choosing a provider, read the terms. Check what happens to codes if you downgrade or cancel, whether there are scan limits, and whether you can export your links.
#How to decide which one to print
Ask whether the destination might ever change. If there's any chance, use a dynamic code.
Ask whether you need to measure results. If the code is part of a campaign, an ad, or anything where you want to know whether it worked, use a dynamic code.
Ask whether the code needs to work without any service for many years. If it's engraved, embedded in a product, or printed somewhere you can't easily update, and the content truly won't change, a static code pointing to a domain you control is the more durable choice.
Ask what the content is. Wi-Fi credentials, contact cards, and plain text are naturally static. URLs are naturally dynamic.
#Print tips that apply to both
Leave a quiet zone. The QR standard calls for a margin of at least four modules of blank space around the code, and cramped designs that crowd text or graphics up against the edge are one of the most common causes of failed scans.
Size it for the scanning distance. A common rule of thumb is that the code should be at least one-tenth of the distance it'll be scanned from, so a code read from one meter away should be around 10 centimeters wide. For business cards and small labels, don't go much below 2 centimeters.
Keep strong contrast. Dark modules on a light background scan most reliably. Inverted or low-contrast color schemes can look good and fail on many phones.
Test before you print. Scan the final proof with several phones, including an older one, in normal lighting, at the real size. Then test the destination on mobile, since most scans happen on phones.
Add a short call to action. "Scan for the menu" or "Scan to register" tells people what they'll get and gives people a reason to scan. Test the wording with your own audience.
#Tracking QR scans without collecting more than you need
Dynamic codes give you useful data: total scans, scans over time, countries and cities, devices, and operating systems. That's usually enough to compare placements and campaigns.
You can make the data more useful by creating a separate dynamic code for each placement, such as one for the window poster and another for the table tent, so you can see which location performs. Our article on tracking event traffic with QR codes covers that approach in detail.
Be mindful of privacy rules. Scan analytics involve processing data such as IP addresses, so mention QR tracking in your privacy policy, and if the landing page sets cookies or analytics, follow the consent rules that apply to your audience.
#Wrapping up
Static QR codes have a fixed payload and no built-in scan dashboard. Non-URL payloads can work offline; URL codes still depend on the destination website, which can log requests or redirect visitors. Dynamic QR codes encode a short link, so you can change the destination, track scans, and keep the code simpler and easier to scan, but they depend on the redirect service.
For marketing and most printed material, dynamic is the safer choice, especially on a custom domain you control. For permanent content like Wi-Fi details, contact cards, or engraved labels, static still has a place.
Thanks for reading! If you want dynamic QR codes you can edit, track, and put on your own domain, S.EE supports dedicated dynamic QR codes linked to editable destinations, with real-time analytics, smart routing, and custom domains in one dashboard.
Ready to get started? Create your first QR code or view pricing to find the plan that fits.
#Frequently asked questions about dynamic and static QR codes
##What's the difference between a dynamic and static QR code?
A static QR code stores its content, such as a URL, directly in the code, so the printed payload can't change. The destination website can still log visits or implement redirects. A dynamic QR code stores a short link to a redirect service, which lets you change the destination and see scan analytics.
##Do static QR codes expire?
No. A static QR code itself never expires, but it stops being useful if the URL it contains stops working.
##Do dynamic QR codes stop working?
They can, if the redirect service shuts down or your account is deactivated. A custom domain gives you more control, but migration still requires matching short-link paths and working HTTPS on the replacement service.
##Can I change where a static QR code points?
No. The destination is encoded in the pattern itself, so changing it means generating and printing a new code. If you control the destination URL, you can set up a redirect on your own website as a workaround.
##Are dynamic QR codes easier to scan?
Usually, yes. Because they encode a short link rather than a long URL, dynamic codes need fewer modules, which makes them less dense and easier for phone cameras to read, especially at small sizes.
##Can I track scans on a static QR code?
Not on the code itself. You can add UTM parameters to the URL and see visits in your web analytics, but that makes the code denser and doesn't count scans from people who don't load the page.



