Why Your QR Code Expired — And How to Get One That Lasts Forever
You printed the posters, laminated the menus, and stickered the products. Then the QR codes stopped working. Here's what happened — and how to make sure it never does again.
It's a surprisingly common story. A small business owner — a café, a physical therapist, a wedding venue — creates a QR code on a popular free platform, prints it on signage, and moves on. Months later, the codes go dead. Not because the destination changed, but because the platform's free tier expired, or the company changed its pricing, or the service shut down entirely.
Understanding why this happens makes it easy to prevent it from ever happening again.
Why QR codes "expire"
QR codes themselves don't expire. A QR code is just a pattern encoding some text — a URL, a string of characters, a WiFi configuration. Patterns don't expire. Paper doesn't expire.
What expires is the redirect service behind a dynamic QR code.
Most mainstream QR generators create codes that don't point directly to your URL. Instead, they encode a short URL hosted on the platform's own servers — something like qr.platform.com/x7f2k. When someone scans your code, they first hit the platform's servers, which check their database and redirect the user to your actual destination.
This redirect layer is the business model. The platform can offer you "free" QR codes because eventually they want you on a paid tier — for scan analytics, editing the destination, or simply keeping the redirect alive. Stop paying (or use a free tier that sunsets), and the redirect stops working. Your code is now a dead end.
What a permanent QR code actually looks like
A permanent QR code encodes your destination URL directly into the QR pattern itself. There's no redirect. When someone scans it, their phone reads the pattern, extracts the URL, and opens it — full stop. Nothing passes through any third-party server.
These are called static QR codes, and they have exactly one meaningful limitation: you can't change the destination after the code is printed. The URL is baked into the pattern. If you need to change where it points, you generate a new code and reprint.
For the vast majority of use cases — a homepage, a booking page, a PDF menu, a WiFi network, a contact card — the destination doesn't change. Static is not just sufficient; it's better.
How to create a QR code that never expires
The steps are straightforward:
- Use a static QR generator. Everly QR generates static codes entirely in your browser — your URL never touches a server. No account required.
- Use a stable destination URL. If the URL you're encoding is likely to change, first create a permanent short URL using a free redirector like Bitly (free plan), then encode that shortened URL as a static QR. The short URL can be updated; your QR stays the same.
- Download at the highest resolution you need. Everly QR lets you choose output size up to 512px. For print use, request a large size and let your design software handle scaling — QR codes scale cleanly.
- Test before printing at scale. Scan the downloaded PNG with at least two different phones before committing to a large print run.
What if you need a QR code for a URL that changes?
This is the one scenario where something resembling a dynamic approach makes sense — but you still don't need a paid QR platform. The trick is to separate concerns:
- Create a permanent short URL using Bitly or your own domain (e.g.,
yoursite.com/menu) that you control. - Generate a static QR code pointing to that URL.
- When your destination changes, update the redirect at your URL — not the QR code.
You now have a permanent QR code whose effective destination you can update anytime, without paying anyone, and without reprinting anything.
Checking whether a QR code is static or dynamic
A quick way to tell: scan the code and look at the URL that appears in your browser before tapping it. If it's a short, generic-looking URL on a domain you don't recognise (like qr.io/x3f or l.ead.me/abc), it's dynamic and depends on a third-party redirect. If it shows your actual destination URL directly, it's static.
You can also use a QR reader app (rather than the native camera) that shows you the encoded content before opening it. A static QR code encoding https://yoursite.com will show exactly https://yoursite.com.
The bottom line
A QR code that never expires is a static QR code. It costs nothing to generate, works independently of any platform, and will keep working for as long as the destination URL exists. Everly QR generates them for free, entirely in your browser, right now.
Generate a permanent QR code — free
Static, browser-generated, and yours forever. No account, no subscription, no expiry.
Open the generator →