Skip to content
QRMakery

Permanent QR Code Generator

A static QR code carries its data inside the symbol. There is no account, no subscription and no server between the phone and the answer, so there is nothing that can be switched off.

That is a narrower promise than it sounds, and the narrowness is the useful part. Below is what can still break, including the parts we are responsible for.

Add your link or content

What the code should contain

Only http and https links are allowed. Missing schemes become https.

Customize your QR code

Finder squares stay square whichever you pick. They are what a scanner locates the code with.

The blank margin scanners need. 4 is the standard minimum.

Download your QR code

✓ Scan-tested: this code reads back correctly.

Contrast 21:1, Strong

Version 2 · 33 modules · print at least 13.2 mm wide

What Expires, and Who Controls It

"Do QR codes expire" is really two questions wearing one coat. The symbol cannot expire. Everything it depends on can, and the difference between a code that lasts twenty years and one that dies in three months is how many dependencies you accepted.

PartVerdictWhyControlled by
The printed symbolCannot expireInk on paper. The modules encode the data itself, so it decodes to the same text forever with no service involved.You, and physics
The QR formatCannot expirePublished as ISO/IEC 18004 and unchanged in its essentials since the 1990s. Every camera made since has read the same symbols.An open standard
A Wi-Fi, contact or calendar codeCannot expireThe passphrase, card or event is inside the symbol. It keeps working with no connection and no company, until the underlying detail changes.You
The web page it points atCan breakA link code is only as durable as its destination. This is where almost every dead QR code actually dies, and it has nothing to do with the code.Whoever owns that domain
A generator's free trialWill expireThe usual trap. A free dynamic code redirects through the generator's server, and when the trial ends the redirect stops and every printed copy dies at once.The generator
A dynamic code, including oursWill expireAny redirect depends on the service running it staying up. That is true of this site as much as any other, and it is the price of being able to change the destination.Whoever runs the redirect

Why a Free Code Stopped Working

The usual story: somebody made a free code, printed a thousand menus, and months later every one of them leads to a page asking for a subscription. Nothing was wrong with the code. It was dynamic, which means it never contained the destination at all, only an address on the generator's server that redirected onwards. When the trial ended, the redirect stopped, and every printed copy died at the same moment.

This is not a scam so much as a business model, and it is worth understanding rather than being angry about. A redirect is genuinely useful: it is how you change a destination after printing, and how scan counts are possible at all. It just has to be a decision rather than a default.

The Same Rule Applies to Us

Our dynamic codes redirect through this site, so they carry exactly the dependency described above. If this site goes away, they stop. We are not going to claim otherwise on a page about expiry, because that is the claim the whole page exists to criticise.

The static codes are different in kind, not in degree. They are generated in your browser and never sent anywhere, and the file you download contains the whole thing. Delete this site and every static code ever made here keeps working, which is the only definition of permanent worth anything.

Making One That Actually Lasts

  • Use a static code, which is what the generator makes by default. There is no setting to get wrong, and no account to open either, because a static code has nothing for an account to hold.
  • Point it at a domain you own. Then the only thing that can break the code is you letting the domain lapse, which is a dependency you can actually manage.
  • Avoid link shorteners you do not control. They are a redirect service with the same failure mode as a dynamic code, just free for now. If something you printed has already stopped working, the checker on the no-expiration page will tell you which kind of dependency you took.
  • Keep the vector file, not only the printed sheet. The SVG is what lets you reprint at any size in ten years.
  • For a passphrase, a contact card or an event, there is no destination at all, so nothing external can break it. Those are the most durable codes you can make.
  • Be wary of links on platforms you do not own. A Google review link is the clearest example: it works well, and its shape is Google's to change, so put your own address in front of it before printing in quantity.
  • On a document reprinted over years, such as a CV, point the code at a personal domain rather than at a profile address a platform may restructure.

The longer version of this argument, with what each type costs and when a redirect really is the right answer, is in do QR codes expire and static versus dynamic.

QR Code Expiry Questions

Do QR codes expire?

The code itself never does. A static QR code is ink encoding data directly, so it decodes to the same text forever with no company in the middle. What expires is either the page it points at or, for a dynamic code, the redirect service in between.

Why did my free QR code stop working?

Almost certainly because it was dynamic. Many free generators hand out codes that redirect through their own server, then stop redirecting when a trial ends or a plan lapses. Every printed copy dies at the same moment. A static code cannot fail this way.

Are the codes on this site permanent?

The static ones are, in the only sense that means anything: they carry their data inside the symbol, so they keep working if this site disappears tomorrow. Our dynamic codes are not, because a redirect depends on a server, and we say so rather than implying otherwise.

How do I make a QR code that never expires?

Use a static code, and point it at a web address you control, ideally your own domain. Then the only thing that can break it is you letting that domain go. Every other option puts the code's lifetime in somebody else's hands.

Is there a scan limit on a free QR code?

Not on a static one. There is nothing to count, because scanning it involves no server at all: the phone reads the symbol and acts on what is inside. Scan limits only exist where a redirect is being metered.

A link or some text into a code, with nothing else in the way.

All tools

Guides worth reading

All guides
  • Comparisons

    Static vs Dynamic QR Codes

    What the redirect actually buys you, measured on real encoded codes, and which payloads are worse off for it.

    16 min read