A static QR code encodes your content — a URL, WiFi password, or contact card — directly in the pattern. It works forever and costs nothing. A dynamic QR code encodes a short redirect link instead, so you can change the destination after printing and count scans. Static suits fixed content. Dynamic suits content that changes.
That is the whole difference. Everything else — pricing, expiry, tracking, privacy — follows from it. You can make a free static code in your browser right now, or read how dynamic codes work first.
How does a static QR code work?
A static QR code stores the data itself in the pattern. The black and white modules are your URL, WiFi password, or contact card, encoded directly. Your phone's camera decodes it on the spot. No server is contacted to resolve the code.
This is why static codes cannot expire. There is no account to lapse and no link to deactivate. A static code from any generator works forever — including our competitors'. The image is just data. We cover this in detail in do QR codes expire?
Qranite generates static codes entirely in your browser. Your data never reaches our servers. That is not a slogan; it is the mechanism. We could not expire your code if we wanted to.
How does a dynamic QR code work?
A dynamic QR code does not store your content. It stores a short redirect link, such as qranite.com/r/xxx. When someone scans it, their phone loads that link, the server logs the scan, and the scanner lands at whatever destination the link currently points to.
Because the printed code only holds the short link, you can change the destination anytime. Print a menu code once, repoint it every season. The server hop also enables analytics: scans by day, country, and device.
The tradeoff is dependency. Your code works only as long as the redirect service does — and only on the terms of its pricing page. Choose that service carefully. See dynamic QR codes for how Qranite handles this.
Static vs dynamic: the decision table
Most decisions come down to two questions. Will the content change after printing? Do you need scan counts? Two yeses or one yes means dynamic. Two nos means static.
- Use static when the content is fixed, privacy matters, or the budget is zero.
- Use dynamic when the destination will change after printing, or you need scan counts.
| Static | Dynamic | |
|---|---|---|
| Content after printing | Fixed forever | Editable anytime |
| Scan tracking | None | By day, country, device |
| Server dependency | None | Redirect must stay live |
| Privacy | Nothing leaves your browser | Each scan hits a server |
| Cost | Free, unlimited | Free for 2 codes, paid above that |
| Expiry | Never | Depends on the provider's policy |
| Best for | WiFi, vCards, weddings, fixed URLs | Menus, campaigns, packaging |
Which should most people print?
Static, in most cases. A wedding website, a WiFi password, a business card, a fixed landing page — none of these need an editable redirect. Encode the content directly, print it, and forget it. Personal use rarely justifies a subscription.
Businesses are different when the destination moves. A restaurant menu that changes seasonally, a product label printed in the thousands, a campaign you want to measure — these justify dynamic codes. Reprinting 10,000 boxes costs more than $9 a month.
If you are unsure, start static. Upgrading to dynamic later just means printing a new code. The reverse — making an already-printed static code editable — is not possible.
What happens to dynamic codes when you stop paying?
It depends entirely on the provider, and this is where the industry earns its reputation. Most services deactivate your redirects when payment stops. The printed code then leads nowhere — or somewhere worse.
Per their support docs, qr-code-generator.com deactivates dynamic codes made during its 14-day trial and redirects scans to its own upsell page. QR Tiger stops free dynamic codes after 500 scans each, and all dynamic codes stop if your plan lapses, per their policy. QRFY pauses codes 7 days after creation unless you subscribe. ME-QR shows full-screen ads to scanners on free codes; removing them costs $27.99 a month.
Qranite's policy is different. If you stop paying, your dynamic codes keep redirecting forever. You lose editing and analytics beyond the free limits — nothing else. We never redirect scans to ads or upsell pages. Details on pricing. If a code from another service has already died, see why did my QR code stop working?
Can you convert a static QR code to dynamic?
No. The pattern is the data. A printed static code encodes your content directly and cannot be repointed later. If you need an editable destination, generate a dynamic code and print that instead.
The other direction is easy. Once a dynamic code's destination has settled for good, encode the final URL as a static code on your next print run. It will work forever, free.