Static vs dynamic QR codes
Updated
What static and dynamic QR codes are, what each one can and cannot do, and how to choose between them for print.
Every QR code is a pattern that holds a small piece of text. The difference between static and dynamic codes is what that text is. A static code holds the final content itself. A dynamic code holds a short link to a service, and the service decides where to send each scan.
That one difference decides who controls the code after it is printed.
Static QR codes
A static code has the content baked into the pattern. For a website, the full URL is in the code. For a Wi-Fi network, the network name and password are in the code. The phone reads it directly, with nothing in between.
What you get:
- It works forever. No account, no subscription, and no company has to stay in business for it to scan.
- Nothing to switch off. There is no server involved, so nobody can deactivate it or put a page in front of it.
- It works offline for content that does not need the internet, such as Wi-Fi details, contact cards, or plain text.
What you give up:
- You cannot change it. If the URL changes or has a typo, the only fix is a new code and a reprint.
- No scan counts. Nothing records that a scan happened.
- Long content makes a dense code. A long URL means more, smaller squares, which needs a larger print to scan reliably.
- Nobody watches the destination. If the page behind it goes down, you find out when a customer tells you.
Dynamic QR codes
A dynamic code holds a short link, such as a short domain followed by a code. When someone scans, their phone opens that link, the service looks up the current destination, and redirects them. The destination is stored in the service, not in the pattern.
What you get:
- Change the destination after printing. Edit it and the next scan goes to the new address.
- Scan analytics. The redirect is a natural place to count scans, with time, location, and device.
- Routing. Some services, KeeperQR included, can send iPhone and Android users, or people in different countries, to different pages.
- Scheduling and protection. Start and end dates, or a password in front of the destination.
- A compact pattern. The short link stays the same length however long the real destination is.
What you give up:
- The code depends on the service. If the service stops answering that short link, the printed code stops working. This is the real risk. Some QR services use it on purpose, deactivating codes when a trial or subscription ends, which is where the idea that QR codes "expire" comes from. KeeperQR does not: its codes keep redirecting after a trial ends or a plan is cancelled. The article on why QR codes stop working covers the common causes and which ones apply to KeeperQR.
- It needs an internet connection to follow the redirect.
- It usually costs money, since someone has to run the redirect and store the data.
Side by side
| Static | Dynamic | |
|---|---|---|
| Content stored in | The pattern | The service |
| Change after printing | No | Yes |
| Scan analytics | No | Yes |
| Depends on a service | No | Yes, including with KeeperQR. A domain you own lets you switch services |
| Needs an account | No | Yes |
| Code density | Grows with content length | Stays short |
| Types | Any, including Wi-Fi and contact cards | Web links |
When to use a static code
- The content will never change. A Wi-Fi password on a café wall, a contact card, a link to a page you control and will keep at the same address.
- You do not need to know who scanned it.
- It must work with no dependency on anyone. Legal notices, permanent plaques, equipment labels.
- You are testing an idea and do not want an account yet.
A static code that points at a page on your own website gives you some flexibility on its own terms. You cannot change the URL in the code, but you can change what that page shows or redirect it on your own server.
KeeperQR's free generator makes static codes for links, text, and Wi-Fi networks, with no account. The code is generated in your browser and downloads as PNG or SVG. It has no expiry, because there is nothing in it that can expire.
When to use a dynamic code
- The destination might change. Seasonal menus, property listings, event pages, anything with a date on it.
- You are paying for the print. A reprint of signs, packaging, or a mailing costs far more than a subscription. Being able to fix a destination after printing is insurance.
- You want to know what worked. Comparing placements needs a separate, counted code for each one.
- Different people need different pages, such as app store links by device.
Choosing a dynamic QR service
The main question is not features. It is what happens to your printed codes when something changes on the account.
- What happens when a trial ends or you stop paying? Look for a written answer. Some services deactivate codes, some show an upgrade page to the people scanning, and some, like KeeperQR, keep redirecting.
- Can the codes use a domain you own? If the short link is on your domain, you can move it to another service later without reprinting.
- Does it check your destinations? A dynamic code faithfully redirecting to a dead page is still a broken code.
How KeeperQR answers those questions: codes keep redirecting after a trial ends or a subscription is cancelled, with no upgrade page in front of them. What stops is creating new codes and campaigns. Codes can use your own domain, and the destination of every active code is checked daily. The FAQ has the details, and pricing lists what the plan includes.
Codes that keep working after you stop paying
Dynamic QR codes with real scan analytics. 14 days free, no card.
Start your free trial