Guide

Do QR Codes Expire? Everything You Need to Know

The straight answer, why the confusion exists, and how to make sure your codes work for years

If you have ever printed a QR code on a flyer, product label, or storefront window, you have probably wondered whether it will still work in six months or two years. The short answer is that it depends entirely on what kind of QR code you created and who generated it, not on the QR code technology itself. This article breaks down the real reasons QR codes stop working, clears up the confusion between static and dynamic codes, and shows you how to build a code that will scan reliably for as long as you need it to.

The Short Answer: QR Codes Themselves Never Expire

A QR code is just a pattern of black and white squares that encodes data, whether that is a URL, a piece of text, a Wi-Fi password, or contact details. Once that pattern is generated and printed or saved as an image, the pattern itself does not degrade, decay, or stop functioning over time. There is no internal clock inside the image that causes it to self-destruct after a certain date.

This matters because a lot of people assume QR codes have a built-in shelf life the way a coupon or a subscription might. In reality, the QR code standard (ISO/IEC 18004) has no concept of expiration at all. The confusion comes entirely from services that generate the code, not from the QR format itself.

So if a code stops scanning, the problem is almost always one of two things: either the code was a 'dynamic' code tied to a service that shut off access, or the destination the code points to (a website, a page, a phone number) no longer exists or has changed. Understanding which one applies to your situation is the key to fixing or preventing the issue.

Static QR Codes: Truly Permanent

A static QR code has the actual information baked directly into the pattern itself. If it is a URL, that exact URL is encoded in the black-and-white squares forever. There is no middleman server checking a database every time someone scans it; the scanner reads the code and goes straight to the destination.

This is exactly the kind of QR code you create with a free, privacy-first generator like ours: the content is generated entirely in your browser, downloaded as an image, and from that point on it belongs to you with no ongoing dependency on any server. There is no account to maintain, no subscription to renew, and no company that can flip a switch and disable it.

The only way a static QR code stops working is if the destination itself changes or disappears, for example if a linked webpage is deleted or a Wi-Fi password is updated. The code itself, printed on a menu, a poster, or a business card, will scan correctly for as long as the paper or material it is printed on physically survives.

Dynamic QR Codes: Where Expiration Can Actually Happen

A dynamic QR code works differently. Instead of encoding your final destination directly, it encodes a short redirect link controlled by the QR platform you used. When someone scans it, their phone contacts that platform's server, which then forwards them to whatever destination you have configured, and that destination can be changed at any time without reprinting the code.

This is genuinely useful: it is how you get real-time scan analytics, the ability to update where a code points after it has already been printed, and features like map-based tracking. Our Pro tier offers exactly this, dynamic and editable codes with analytics, for people who need that flexibility for ongoing campaigns.

The tradeoff is that dynamic codes depend on the issuing service staying online and your account staying active. If a subscription lapses, a company shuts down, or an account gets deleted, the redirect link can stop resolving, and every printed code that relied on it becomes a dead end. This is the real source of 'QR code expiration' stories you may have read about in the news.

Why Some Free Generators Add Artificial Expiry

Beyond the static-versus-dynamic distinction, some free QR tools intentionally build in an expiration date as a business tactic, even for what should be a simple static code. They generate a code that works for a trial period, say 14 or 30 days, and then either display a paywall or simply break the code until you upgrade to a paid plan.

This practice is frustrating because it is not a technical limitation, it is a monetization strategy layered on top of otherwise ordinary QR generation. Users who print thousands of flyers or product labels only to discover the codes stopped scanning weeks later often had no idea their 'free' code was time-limited in the fine print.

A genuinely free static QR generator should not need to do this. Because our free tier generates the code entirely in your browser with no server-side dependency and no sign-up requirement, there is nothing to expire and no account status to check. What you download is yours permanently.

Common Reasons a QR Code Stops Scanning

Even with a permanent static code, several practical issues can make it appear as though the code has 'expired.' The most common is physical damage: fading ink, water damage, creases, or dirt covering enough of the pattern that a scanner cannot reconstruct the data. QR codes have built-in error correction, but there is a limit to how much damage they can tolerate.

Another frequent cause is a broken link at the destination rather than a broken code. If your QR code encodes a URL and you later redesign your website, remove a page, or let a domain lapse, the code will scan perfectly fine and open the phone's browser, but the page it lands on will show a 404 error. This looks like a QR failure to the end user even though the code itself worked exactly as intended.

Poor original print quality is a third culprit: codes printed too small, with insufficient contrast between the foreground and background colors, or with a logo covering too much of the pattern can fail intermittently depending on lighting and camera quality, especially on lower-end phone cameras.

How to Make Sure Your QR Code Lasts

Start with a static code whenever the destination is genuinely permanent, for example a fixed Wi-Fi network, a vCard for a business card, or plain text instructions. Static codes remove the single biggest point of failure: a third-party server that might disappear.

If you are linking to a URL, use a domain and page you control and intend to keep active long-term rather than a temporary landing page, and consider using your own root domain rather than a third-party short link service that could shut down independently of your own website.

Test the printed code physically before mass production: print it at the actual size you plan to use, on the actual material, and scan it with two or three different phone models in normal lighting. Keep the quiet zone (the white margin around the code) intact and avoid placing logos or text over more than about 20 to 30 percent of the pattern's area.

When Dynamic Codes Actually Make Sense

Despite the expiration risk, dynamic QR codes are the right tool for specific situations, particularly ongoing marketing campaigns where you need to see how many people scanned a code, when, and roughly where, or where you expect to update the destination URL after the code is already printed on physical materials like storefront signage or vehicle wraps.

For these cases, the analytics and editability outweigh the dependency risk, provided you choose a provider you trust to stay operational and you keep your subscription active for as long as the printed materials are in circulation. Our Pro tier is built for exactly this use case, giving you editable dynamic codes with real-time scan analytics and map data.

The practical rule of thumb: if the QR code is a one-time or low-stakes use, such as a personal Wi-Fi card or a one-off flyer, a free static code is simpler and more resilient. If it is part of a long-running, trackable campaign where you need performance data, a dynamic code with an active account behind it is worth the tradeoff.

Frequently asked questions

Do QR codes expire after a certain amount of time by default?

No, a standard QR code has no built-in expiration. Static codes generated with the destination data embedded directly work indefinitely. Only dynamic codes tied to a third-party redirect service can stop working if that service or your account with it becomes inactive.

How can I tell if a QR code is static or dynamic before I print it?

Check whether the generator required an account or subscription, and whether it mentions analytics or editing the destination later. If a tool creates the code entirely in your browser with no sign-up and no ongoing account, it is almost always static and will not expire.

My QR code worked before but scans to an error page now, what happened?

This usually means the code itself is fine but the destination changed. If it points to a URL, check whether that page or domain still exists. The QR code encoded the link correctly; the website behind it is what changed.

Is it safe to use a free QR generator for something I plan to print and distribute widely?

Yes, as long as it generates static codes locally in your browser rather than routing through a redirect server tied to an account. Look for tools that explicitly state there is no expiry, no watermark, and no sign-up requirement, since those are the signs of a genuinely permanent code.

Create your free QR code

Related guides