No. A QR code itself never expires. A static QR code encodes its data (a URL, text, Wi-Fi credentials) directly into the pattern of black and white squares, and that pattern will scan the same way in ten minutes or ten years. When people say a QR code "expired," they are almost always describing a dynamic QR code: one that points to a short redirect URL owned by a QR service. The moment that service's free trial ends, the subscription lapses, or the company shuts down, the redirect dies, and the code dies with it. The pattern still scans fine; there's just nothing on the other end.

How QR codes work, and why static codes can't expire

A QR code is just data written in a machine-readable alphabet. The grid of squares encodes text, usually a web address, the same way ink encodes letters on this page. When your phone scans a static code, it decodes the pattern locally and shows you exactly what was baked in. No server is consulted, no company sits in the middle, nothing is "hosted." That's why a static code has no expiration date: there is nothing that can expire. Print it on a business card or the side of a building, and it will decode identically for as long as the ink survives.

One honest caveat: if your static code points to a web page and that page is later deleted or moved, the code still scans, but the link leads nowhere. That's the destination breaking, not the code expiring, and it's preventable by keeping the destination alive. If a code you printed has already gone dark, see why QR codes stop working for a diagnosis checklist.

Why some QR codes "expire" anyway

Dynamic QR codes work differently. Instead of encoding your destination, they encode a short redirect URL that belongs to the QR provider. When someone scans, their phone contacts the provider's server, which looks up your real destination and forwards the visitor along. That middleman is the entire product: it's what enables scan statistics and lets you change the destination later. It is also a single point of failure.

The redirect stops working the moment the provider stops honoring it: a free trial ends, a payment fails, a plan is discontinued, or the company folds. Many popular QR generators offer "free" codes that are quietly dynamic: the code works during the trial window, gets printed on menus or flyers, and then dies unless you start paying. The physical code is unchanged and scans perfectly; it just points at a door the provider closed.

How to tell which kind you have

You don't need any technical tools. Scan the code yourself and read the URL before you tap it:

  • Static: the URL is the actual destination, such as your website, a Google Maps link, or a PDF's real address. What you see is what was encoded.
  • Dynamic: the URL is short, generic, and on a domain you don't recognize, typically a QR company's branded shortener. The real destination only appears after a redirect.

Two more tells: if you created the code through an account with a dashboard where you can edit the destination or view scan counts, it's dynamic. And if the service mentions scan limits, the code is dynamic by definition: a static code involves no server, so there is nothing to meter.

Static vs. dynamic QR codes at a glance

Static QR codeDynamic QR code
Can it expire?Never; the data lives in the patternYes; it dies if the redirect stops working
What's encodedYour actual URL or dataThe provider's short redirect URL
Requires an accountNoYes
Ongoing costNoneUsually a subscription
Editable destinationNot directly (see the workaround below)Yes, anytime
Scan analyticsNoYes, built in
Depends on a third partyNoYes, forever

For a deeper breakdown of the trade-offs, see our guide to static vs. dynamic QR codes.

When a paid dynamic service is genuinely worth it

Dynamic codes aren't a scam; they solve real problems. A reputable paid service earns its keep if:

  • You need scan analytics. If knowing how many people scanned, when, and roughly where directly informs your marketing spend, only a redirect can capture that.
  • You've committed to a massive print run. If a code is going on high-volume packaging and the destination might change, an editable redirect is cheap insurance against reprinting.
  • You manage many campaigns. A dashboard for creating, retiring, and rerouting dozens of codes is a legitimate workflow tool.

Just go in with clear eyes: the code lives exactly as long as your subscription does. Budget for it as a recurring cost for the entire life of the printed material.

How to make a QR code that cannot expire

Use a generator that produces only static codes, like the free PermaQR generator. It runs entirely in your browser: your data is never uploaded, no account exists, and there is no server that can later revoke your code. What you download is a self-contained pattern that works forever.

And here's the trick that replaces most dynamic-QR use cases: point your static code at a URL you control. Encode your own website page, a Google Drive file set to "anyone with the link," or a simple landing page that lists several links. The code permanently points to that address, but you can change what lives behind it anytime: swap the menu PDF, update event details, or reroute the page, all without reprinting anything. You get the main benefit of dynamic codes with none of the dependency.

Some codes don't even need the internet: a Wi-Fi QR code encodes the network name and password directly in the pattern, so it works with no connection at all. Whether you're printing restaurant menus or wedding invitations, generate the code once with PermaQR, test it, and print with confidence: it will keep scanning for as long as the print stays legible.