Skip to content
QRBeam

QR code generator with no expiration

Static QR codes that never expire and have no scan limit. The content is encoded in the pattern itself, so there is no redirect that can be switched off.

Send people straight to a page, product or booking form.

Only http:// and https:// links can be encoded.

Fill in the form and your QR code appears here.

Vector SVG for print, PNG for screens. This code never expires and has no scan limit.

Nothing is uploaded. The code is built by JavaScript running on your device — your links, passwords and contact details never reach our servers.

Codes made here do not expire, and they have no scan limit. That is not a promise about our servers staying up — it is a property of what gets generated. Your content is encoded directly into the black-and-white pattern, so a scanner reads it straight off the image. Nothing is looked up, and this site is not involved when someone scans your code.

This is what a static QR code means, and it is worth understanding why the alternative behaves so differently. A dynamic QR code encodes a short link belonging to the generator. Every scan hits their server, which then redirects. That indirection is what makes editing and scan analytics possible — and it is also the thing that expires.

When a free generator's codes stop working, this is almost always why: the free tier had a monthly scan cap, or the trial ended, or the company was acquired and the redirect was retired. People have discovered this after printing several thousand flyers. A static code cannot fail that way, because there is nothing in the middle to fail.

What that means in practice

No redirect, no dependency

The scanner reads your URL out of the pattern. This site is not in the path, so nothing here can break your printed code.

No scan limit

Ten scans or ten million. There is no counter anywhere, because no request comes to us when someone scans.

No subscription to lapse

Nothing to keep paying for. The file you download today works identically in ten years.

The honest trade-off

You cannot change the destination after printing. If you need that, encode a short URL on a domain you own and change the redirect yourself — same flexibility, still no third party.

Frequently asked questions

Why do QR codes from other sites expire?
Because they are dynamic: the code encodes a link to the provider's server, which redirects to your real destination. That redirect is what gets rate-limited when a free scan cap is hit, or retired when a plan lapses or the company shuts down. The code itself is fine — the server behind it stopped answering.
Could my code ever stop working?
Only if the destination itself goes away. A Wi-Fi code stops being useful when you change the password; a URL code stops being useful when that page is deleted. Nothing about this site can break it, and it keeps working whether or not we still exist.
What if I need to change where the code points?
Encode a short URL on a domain you control — yourdomain.com/menu — and set up a redirect behind it. You keep the ability to change the destination, your analytics stay in your own logs, and no third party can switch it off. That pattern gets you the useful half of dynamic codes without the dependency.
Do you track how many times my code is scanned?
No, and we could not if we wanted to. A scan never touches our servers. If you need scan analytics, you need a dynamic code from a provider you are willing to depend on permanently — go in knowing that is what you are buying.
Is a static code less capable?
It holds the same data and scans the same way. The only thing it cannot do is change after printing, and it is more reliable precisely because of that.

Also worth knowing

Generators for every QR type