Appy
← Back to Blog
Guide

Do QR Codes Expire? Static Codes Don’t. Dynamic Ones Can.

A QR code has no expiry date of its own. What can stop is the redirect behind a dynamic code: a trial that ends, a cancelled plan, a scan cap, an inactivity rule or a provider that shuts down. Named examples from each provider’s own pages, and a checklist for before you print.

October 21, 2026•7 min read

Make a QR code with no expiry date

  • Free plan, no credit card
  • Unlimited scans on every plan
  • Keeps working if you cancel
Create my free QR code

The short answer

No. The black-and-white pattern is just data, and a phone will read it in ten years exactly as it does today. A QR code carries no date, no counter and no off switch.

What can stop is the address inside it. A static QR code holds your final web address, so it works for as long as that page exists. A dynamic QR code holds a short link that belongs to the QR provider, and every scan passes through the provider’s server first. If that server stops forwarding, every printed copy stops at once: on the shelf, on the poster and on the box.

So the useful question isn’t whether QR codes expire. It’s whose server sits between your code and your page, and what that company’s rules say.

Where a QR code can break

Static QR code

Your web address is printed in the pattern itself.

Nothing in between
QR code
Your page

Dynamic QR code

The pattern holds a short link, and the provider forwards each scan.

Depends on the provider
QR code
Provider’s server
Your page

What can switch the provider’s redirect off

  • Trial ends
  • Plan cancelled
  • Scan cap reached
  • Too long without a scan
  • Provider shuts down
A static code has one weak point: your page. A dynamic code adds a second one that you don’t control.

Static codes never expire, and never change

A static code is the safe choice when the destination will outlive the print run. QRCG by Bitly’s help center says it plainly: a static code carries its destination itself, so it keeps working whether or not you pay for a subscription.

The price is flexibility. You can’t change where a static code points after printing, and you can’t count its scans. It also has an expiry date of a kind: the day the page behind it disappears. A redesigned website, a campaign page someone tidies away or a domain nobody renews breaks a static code as surely as any provider could.

Four numbers from the providers’ own pages

days of free trial at QRCG by Bitly; after that, its dynamic codes point to a service page
14

days of free trial at QRCG by Bitly; after that, its dynamic codes point to a service page

extra days QRCG by Bitly keeps cancelled codes redirecting once the paid period ends
30

extra days QRCG by Bitly keeps cancelled codes redirecting once the paid period ends

scans before a dynamic code on QR TIGER’s free plan stops working
500

scans before a dynamic code on QR TIGER’s free plan stops working

the year Firebase Dynamic Links shut down; every link stopped on August 25
2025

the year Firebase Dynamic Links shut down; every link stopped on August 25

Dynamic codes last as long as the redirect does

Dynamic codes are worth having. You can change the destination after printing, count scans and send iPhones and Android phones to different stores. That’s why most codes on packaging and posters are dynamic.

The trade-off is a dependency. The printed pattern points at the provider’s domain, so the provider decides what happens to every scan for as long as the code is out in the world. Here are the five ways that dependency ends, each with an example from the provider’s own help pages.

Five ways a dynamic QR code stops working

The free trial ends
Example from the provider’s help pagesQRCG by Bitly: after 14 days, dynamic codes point to a service page
On AppyNo trial. The Free plan doesn’t run out
You cancel your plan
Example from the provider’s help pagesQRCG by Bitly: the paid period plus 30 days, then a service page
On AppyThe account moves to Free and codes keep working
The code reaches a scan cap
Example from the provider’s help pagesQR TIGER Free: 500 scans, then the code stops
On AppyUnlimited scans on every plan
Nobody scans for a long time
Example from the provider’s help pagesBranch: short links made through its API or SDK expire after 380 days without a click
On AppyNo cutoff for inactivity
The provider shuts down
Example from the provider’s help pagesFirebase Dynamic Links: every link stopped on August 25, 2025
On AppyPut codes on your own domain (Business) so the address stays yours
Checked on each provider’s help pages on October 21, 2026. Links are in the sources list below.

What each of those looks like

The trial ends. QRCG by Bitly, the QR Code Generator service Bitly owns, starts new accounts on a 14-day trial. When it lapses, dynamic codes made during the trial show a service page instead of your page, while static codes keep working. Paying turns the dynamic codes back on, which tells you where the printed codes now stand: they depend on the next invoice.

You cancel. The same service keeps dynamic codes redirecting through the period you already paid for and 30 more days, during which you can’t edit them. After that the account is locked and the codes point to a service page.

A scan cap. QR TIGER’s free plan includes three dynamic codes with a 500-scan limit, and its help center says a code stops working once the limit is reached. Free-plan scans also show a small QR TIGER logo pop-up. A cap like that is easy to miss on a test print and easy to hit in a shop window.

Inactivity. A QR code lasts only as long as the link inside it. If the code holds a Branch short link made through its API or SDK, Branch expires that link 380 days after it was created, and each click restarts the count. Branch’s own advice is a script that requests your links from time to time to keep them alive. A code on seasonal packaging can easily go a year without a scan.

A shutdown. Google shut down Firebase Dynamic Links on August 25, 2025. Every link it served stopped working, including links on teams’ own custom domains, and the page.link domains weren’t handed over. A QR code that carried one of those links is now a dead end, wherever it was printed.

Short links and deep links have the same problem

None of this is special to QR codes. Any link that passes through someone else’s server can be given a lifetime, and two of the big deep linking platforms do exactly that for links made through their APIs.

Branch short link made through the API or SDK

Created or last clickedExpires after 380 days

Adjust short link made with the deep link generator API

CreatedExpires after 120 days

Appy link or QR code

CreatedNo expiry date
Branch’s count restarts with each click. Adjust gives these short links a 120-day time to live. Both read on October 21, 2026.

A link can also keep working and still get worse. Bitly now shows visitors of free-account links an interstitial page with a preview of the destination and an ad, and the way to remove it is a paid plan. On a link you share, that’s one more screen between the tap and the store.

What Appy promises

Every Appy link and QR code keeps redirecting until you delete it. There’s no expiry date, no scan cap and no cutoff for inactivity, and no plan shows ads, Free included. If you cancel a paid plan, the account moves to Free: existing codes keep working, and paid features such as deep links and advanced analytics pause until you upgrade again. You can change where a code points on every plan.

An Appy QR code is still a dynamic code, so it depends on us the way any dynamic code depends on its provider. If that matters for a long print run, put your codes on your own domain, which comes with the Business plan. The printed address is then yours, and you keep control of it whatever happens to any provider, us included.

Before you print: a checklist

01

Decide whether the destination will ever change

If it won’t, and you don’t need scan counts, a static code takes the provider out of the picture. For packaging, posters and anything with a campaign behind it, use a dynamic code.

02

Read the provider’s cancellation page, not its pricing page

Look for three answers: what happens when the trial ends, what happens when you cancel, and whether there is a scan cap. If the help center doesn’t say, ask before you print.

03

See what a free-plan scan looks like

Logo pop-ups and ad pages apply to codes already out in the world. Scan a code from a free account the way a customer would.

04

Put long print runs on a domain you control

A code on your own domain can be pointed somewhere else later. A code on a provider’s domain can only be fixed by that provider.

05

Keep the page behind the code alive

Static or dynamic, the code is useless once the destination is gone. Note the print run next to the URL so nobody deletes the page while boxes are still on shelves.

06

Test the printed proof

Scan it with an iPhone and an Android phone, from the distance people will actually stand, before the full run goes out.

Tools and guides for the print run

Sources, read on October 21, 2026

Frequently asked questions

Do QR codes expire?

No, the code itself never expires. A static QR code works as long as the page it points to exists. A dynamic QR code works as long as its provider keeps forwarding it, which can end with a trial, a cancelled plan, a scan cap, an inactivity rule or the provider shutting down.

Do dynamic QR codes stop working if I stop paying?

With many providers, yes. QRCG by Bitly keeps them redirecting through the paid period plus 30 days, then sends scans to a service page. On Appy, cancelling moves the account to Free and existing codes keep working.

Can a dynamic QR code that stopped working be turned back on?

Often, by paying again: QRCG by Bitly reactivates dynamic codes when you upgrade. If the service itself has shut down, as Firebase Dynamic Links did on August 25, 2025, there is nothing left to reactivate.

Is there a limit to how many times a QR code can be scanned?

Not for a static code. Some dynamic plans cap it: on QR TIGER’s free plan a dynamic code stops after 500 scans. Appy has no scan limit on any plan.

How long does a static QR code last?

As long as the print stays readable and the web address in it still loads. If the page moves or the domain lapses, the code breaks and can’t be edited; it has to be reprinted.

Can I change where a static QR code points?

No. The address is part of the pattern, so changing it means a new code. That’s why most printed campaigns use dynamic codes.

Continue exploring

Guide
Oct 1, 2026
7 min read

UTM Parameters for App Campaigns: A Practical Guide

What each UTM tag is for, a naming system that stays clean, values for every app channel, and what really happens to your tags at the App Store and Google Play.

utm parameters
utm builder
campaign tracking
install referrer
Read article
Checklist
Oct 9, 2026
9 min read

QR Code Print Checklist for App Campaigns: 29 Checks Before You Sign the Proof

The checks to run before packaging, posters or a TV spot go to print: the link inside the code, logo and error correction, prepress, materials, placement and who signs off on what.

qr codes
print
packaging
checklist
Read article
Comparison
Sep 24, 2026
6 min read

onelink.to Alternative: Why a Store-Only Link Isn’t Enough for Apps in 2026

onelink.to sends people to a store page, and opening your app starts at its $40 Team Plus plan. Appy opens the installed app from $9.99, routes Huawei phones to AppGallery on every plan and keeps stats without a time limit. A plan-by-plan comparison.

onelink.to alternative
smart links
app store link
qr codes
Read article

Looking for something else? Browse all topics on the blog.

Print a code that keeps working

Create an Appy QR code on the free plan: no expiry date, unlimited scans, no ads, and you can change where it points after printing.