Reliability

Do QR Codes Expire?

A QR code does not usually contain an expiry date — but the experience behind it can stop working at any of six independent layers. That is why a code can look perfectly readable and still take someone to a dead page. The useful question is not “does the QR expire?” but “which layer stopped working?”

Written by
VastQR Product & Editorial Team
Last updated
Last tested
On this page
  1. The QR longevity stack
  2. Do static codes expire?
  3. Do dynamic codes expire?
  4. Expiry vs failure
  5. What we tested
  6. Does it need a reprint?
  7. Reducing the risk
  8. Can a QR last forever?
  9. FAQ

The QR longevity stack

Treat a working QR code as a chain of six dependencies. Every one of them must hold. When someone says a code “expired,” they have almost always observed one specific layer failing — and which one determines whether you reprint, edit, or call your registrar.

  1. 1The printed patternDamage, cropping, undersizing, weak contrast, ink spread, difficult surfaces
  2. 2The camera reading itDistance, lighting, glare, angle, a quiet zone crowded by other artwork
  3. 3The managed redirectDynamic codes only — paused, deactivated, or the service unavailable
  4. 4The domain and its routingDomain expiry, DNS changes, a restructured URL path
  5. 5The destination page404, deleted content, a login wall, a redirect loop, a mobile failure
  6. 6Provider, account and plan stateDynamic codes only — account status and the provider's current terms
Why the stack matters commercially
Layers 1 and 2 are fixed at print time and cost a reprint to change. Layers 3 to 6 are software, and can be changed for free at any point in the asset’s life — if you chose a code type that gives you access to them.

Do static QR codes expire?

No — not because time passed. A static code stores its final data inside the pattern. If it encodes https://example.com/menu, it will encode exactly that string for as long as the ink survives.

What ends is everything the string depends on. The domain can lapse. The path can be deleted in a site migration. The server can go offline. The page can move behind a login. None of those events touch the QR code, and all of them look, to the person holding the phone, like the code stopped working.

So “static QR codes never expire” is true about the pattern and misleading about the experience.

Do dynamic QR codes expire?

A dynamic code can stop working, and the reason is the same thing that makes it useful. The printed pattern points at a managed redirect rather than at the destination, so the destination becomes editable — and the redirect becomes a dependency.

  1. Printed pattern
  2. Managed redirect
  3. Current destination
The redirect is the editable layer. It is also the extra thing that has to keep working.

A dynamic code fails when the middle box does, which can happen because:

  • the code was deliberately paused or deleted;
  • the account or subscription changed state;
  • the plan’s active-code allowance was exceeded;
  • the redirect domain stopped resolving;
  • the provider changed the service, or became unavailable;
  • the destination behind it broke, which is a layer-5 problem wearing a layer-3 costume.
Read the provider's rules before a large print run
Behaviour varies. Ask specifically what happens to a live redirect when a subscription lapses, when an active-code limit is reached, and when an account is closed. These are the three answers that decide whether a printed asset is safe for a multi-year life.

Expiration and failure are not the same thing

People describe every broken code as expired. Several genuinely different failures produce that identical experience, and they have different fixes.

SymptomLayer that failedCode still decodes?Dynamic only?Reprint likely?
Camera cannot detect the code at allPrint or readabilityNoNoUsually
Decodes, but the page returns 404DestinationYesNoNo, if you can repoint it
Decodes, but reaches an outdated campaignDestinationYesNoNo, if the code is dynamic
Decodes, but nothing resolvesDomain or DNSYesNoDepends on domain control
Decodes, redirect returns 404Redirect paused or removedYesYesNo, if it can be reactivated
Decodes, but opens the wrong destinationWrong record edited, or codes swapped in productionYesNoOnly if the mapping is unrecoverable
Worked yesterday, not today, nothing changedProvider, account or plan stateYesYesDepends on the provider

What we tested

We ran the dynamic-code lifecycle against the live product to see exactly which states stop a redirect and whether any of them touch the printed artwork.

Tested by VastQRLast tested: 20 August 2026
ActionSame QR image?Observed result
Initial requestHTTP 302 to the original destination
Destination changed in the dashboardHash identicalHTTP 302 to the new destination
Code pausedHash identicalHTTP 404 — the redirect stops immediately
Code reactivatedHash identicalHTTP 302 — the redirect resumes

How we tested: We created a dynamic QR code in VastQR and recorded a SHA-256 hash of its generated image. We then requested its short link at four stages: as created, after changing the destination from the dashboard without regenerating the code, after pausing it, and after reactivating it. Destinations were our own public pages.

What this does not prove: This is observed behaviour on one date, on one account, on the current plan. It demonstrates that pausing stops a redirect and reactivating restores it without new artwork. It is not a statement about what happens after cancellation, at an account's active-code limit, or at any future date — none of which this test exercised.

The hash never changed. A printed code and its destination state are genuinely separate things, which is the whole basis for managing printed assets after they ship.

How to change a printed code’s destination →

Does a broken QR code mean a reprint?

Not automatically. Identify the layer first; most software layers cost nothing to fix.

SituationReprint?
Dynamic code, destination changedNo
Dynamic code paused, then reactivatedNo
Dynamic code, destination returns 404No — fix or repoint the destination
Static code, destination URL changed, you control the old URLUsually no — redirect it yourself
Static code, destination URL changed, you do not control itUsually yes
The printed code is physically damagedYes
The code is too small for its viewing distanceYes
The domain behind the code has been lostDepends on whether you can recover it

Reducing broken-QR risk before a large print run

Almost every expensive QR failure was decided months earlier, at the point someone chose a code type and approved artwork.

  • Could this destination plausibly change during the asset's life? If so, the code should be dynamic.
  • Do you control the final domain, and is its renewal on somebody's calendar?
  • Do you know, for certain, whether each printed code is static or dynamic?
  • Have you tested the destination on a phone — HTTPS, no login wall, no redirect chain, fast?
  • Have you scanned a printed proof at the real viewing distance, not just the on-screen artwork?
  • Is the quiet zone intact and the contrast strong at final size?
  • Can you map every printed asset back to its source row?
  • Do you know what your provider does to a live redirect when the plan or account changes?
  • Is there a date in the calendar to re-scan long-lived assets — signage, packaging, equipment labels?

Can you make a QR code last forever?

It is more accurate to say you can design a QR workflow for longevity. Any absolute promise has to cover paper, camera, redirect, domain, hosting, page and provider — and nobody controls all seven indefinitely.

What a durable setup actually looks like:

  • choose dynamic when the destination might change, so a reprint is never the only remedy;
  • keep the destination on a domain you own, so layer 4 is yours rather than rented;
  • know your provider’s rules before you commit them to physical assets;
  • keep the source data that maps rows to printed codes;
  • re-scan high-value assets on a schedule instead of assuming.
On “never expires” claims
The phrase gets used for at least five different things: a pattern with no timer, a static code that still decodes, a redirect a provider currently keeps active, a specific plan policy, and a destination that is still online. Before trusting one, ask which of those is being promised, and by whom.

Printing something that has to outlive its landing page

Prepare destinations in a CSV, validate the batch before you pay, then create dynamic codes whose destinations you can change without touching the print.

Frequently asked questions

Do QR codes expire after a certain number of days?
The pattern itself carries no timer. What can expire is the domain, the page, or — for a dynamic code — the managed redirect and the account behind it.
Do dynamic QR codes expire?
A dynamic code stops working if its managed redirect becomes inactive or unavailable. That can be a deliberate pause, an account or plan change, or a provider decision. The exact rules differ by provider, so read them before a large print run.
Do static QR codes expire?
Static patterns do not expire with time. The URL they encode can still stop resolving, which looks identical to the person scanning.
Why did my QR code suddenly stop working?
Work down the stack: is the printed code still readable, does the destination load in a browser, is the domain still yours, and — if the code is dynamic — is its redirect still active?
Can I reactivate a paused QR code?
Where the platform supports pausing, reactivating restores the redirect without touching the printed artwork. In VastQR reactivation consumes an active-code slot again, so it is subject to your plan's active limit.
Can I change a QR destination after printing?
Yes, if the code is dynamic and the redirect is editable. The printed pattern stays the same.
Does VastQR promise that codes keep redirecting forever after cancellation?
No. There is no lifetime-after-cancellation promise, and you should not infer one. Service behaviour follows the current published plan.