Static QR codes that never expire

Pick a type, type your content, download the code. Everything runs in your browser — nothing you enter is uploaded, tracked or stored.

Tip: shorter URLs make simpler, easier-to-scan codes. If you leave off the scheme, https:// is added.

Anyone who scans this code can see the password — print it only where your guests should have it.

Generated 100% in your browser. Nothing is uploaded.

The short version: a static QR code encodes your actual link, Wi-Fi password or contact card directly into the black-and-white pattern. There is no server in between, so there is nothing that can expire, nothing that redirects your visitors somewhere else first, and nobody counting the scans. It works the day you print it and it works in twenty years.

Static vs dynamic — why it matters

Most big QR platforms default you to a dynamic code. A dynamic code does not contain your link at all — it contains a short link on the platform's own domain. When someone scans it, they land on the platform first, get counted, and are then forwarded to your page. That indirection is what lets the platform "expire" your code when a trial ends or a subscription lapses: the printed poster on your wall becomes a dead link, even though the ink hasn't changed.

Static code (this site)Dynamic code (typical platform)
What's inside the patternYour actual URL / dataThe platform's short redirect link
Can it expire?No — nothing to switch offYes — when the plan or trial ends
Works offline / foreverYes, as long as the destination existsOnly while the redirect service lives
Scan trackingNone (the code itself can't phone home)Yes — every scan is logged
Can you edit it later?No — reprint insteadYes, that's its one real advantage
Best forMenus, posters, packaging, business cards, Wi-Fi signsShort campaigns whose link genuinely changes

For the full explainer, see static vs dynamic QR codes. If the thing you're printing will still be on a wall next year, static is the honest choice.

What you can make here

WiFi QR code

Guests scan once and join your network — no reading the password aloud. Prints the standard WIFI: payload every phone understands.

vCard QR code

Your contact card as a code: name, phone, email, company, title and website, saved to the phone in one tap.

Email QR code

A mailto code with the address, subject and message pre-filled. Handy for feedback and support posters.

SMS QR code

Opens the messages app with your number and a pre-written text — the classic "text us to order" sign.

How to make a code that scans first time

Keep the content short. The more data, the denser the pattern and the harder it is to scan from a distance. A short URL beats a long one with tracking parameters. Mind the contrast: dark modules on a light background, ideally near-black on white — the tool warns you if your colours get too close. Size it for the distance: a rule of thumb is that the printed code should be about 1/10 of the scanning distance (details on the print sizes page). Always test with two different phones before a print run.

Frequently asked questions

Do these QR codes really never expire?

Yes. A static code is just data drawn as a pattern — there is no account, no server and no switch to turn off. The code stops working only if the thing it points to disappears (for example, if you delete the web page the URL leads to).

Is my Wi-Fi password or contact data sent anywhere?

No. The generator runs entirely in your browser using code bundled with this page. You can verify it: load the page, switch off your internet connection, and it still works. Nothing is logged on our side.

Can I change the link after printing?

Not with a static code — the link is the pattern. If you truly need editability, that's the one job dynamic codes are for; understand the trade-off on the comparison page before paying rent on your own posters.

Which error-correction level should I pick?

M is a good default. Choose Q or H if the code will live somewhere rough — outdoors, on packaging that gets scuffed — because higher levels still scan with part of the code damaged. Higher correction makes the pattern denser, though, so don't pair H with a very long URL.

PNG or SVG?

PNG for screens, documents and quick printing at the size you download. SVG for anything going to a print shop or being scaled up — it stays perfectly sharp at any size.

Pro — $9/mo, coming soon. Bulk generation from a spreadsheet, saved brand kits and print-ready sheets. The free generator above stays free, with no scan limits and no expiry — that's the whole point of the site.