Free QR Code Generator

Static QR codes that never expire — URL, WiFi, contact card and more, generated in your browser and free forever.

Most "free" QR code generators do not encode your link. They encode their link — a short tracking URL on their domain that quietly forwards to yours. That is how the scan counts work, and it is also why so many printed codes go dead: when the free trial ends, or the account lapses, or the company folds, the redirect stops and every sticker, menu, flyer and business card you printed becomes a dead end. You do not own the code you paid to print.

This one encodes your actual data straight into the pattern. Scan it and the URL, WiFi password or contact card comes out of the black-and-white squares themselves — there is no server in the middle, so there is nothing to expire, nothing to renew, and nobody logging who scanned what. Print it once and it works for as long as paper lasts.

The encoder is written into this page: byte mode, versions 1 to 40, Reed–Solomon error correction, all eight data masks. It runs entirely on your device. Nothing you type — including WiFi passwords and phone numbers — is uploaded or stored anywhere, and there is no email box on this page.

01What should the code contain?

Whatever you pick is written into the code itself. There is no short link in the middle, so nothing can be switched off later.

02Fill in the details

Type the address exactly as you want it opened. If you leave off https:// we add it for you.

03Error correction

How much of the code can be scuffed, folded or covered and still read. Higher is tougher, but packs more modules into the same square — so print it bigger. M is the right default for almost everything.

04Look

A logo covers real data, so adding one switches error correction to H and keeps the cutout small. Always test a printed proof before you order a thousand of them.

Watch: how to use this tool

How to use it

  1. Pick what the code should contain: a website address, plain text, an email, a phone number, an SMS, WiFi details, a contact card, or a map location.
  2. Fill in the fields. The preview redraws as you type — there is no generate button and no waiting.
  3. Leave error correction on M unless you have a reason to change it. Go to Q or H for codes that will live outdoors, get handled, or carry a logo.
  4. Set the colours if you want to. Keep the code darker than the background — the tool warns you the moment the contrast gets risky.
  5. Download PNG for screens and slides, or SVG for anything going to print. Print it about one tenth as wide as the distance people will scan it from, and leave the white margin alone.

Questions

Do these QR codes expire?
No — and they cannot. The data is encoded directly into the pattern, so a scanner reads it straight off the printed squares with no server involved. Most free generators work differently: they encode a short tracking link on their own domain that redirects to your destination. That redirect is a live service, so it can be switched off when a trial ends, a plan lapses, a limit is hit, or the company shuts down — and every code you already printed dies with it. Nothing in a static code can be turned off by anyone, including us.
Can I track how many people scan it?
No, and that is the honest tradeoff. Scan analytics only exist because the code points at a server that logs the hit before forwarding you on — the same server that can later stop forwarding. You cannot have both permanence and tracking from the same code. If you genuinely need scan counts, use a redirect service you control, on a domain you own, so the tracking never becomes someone else's kill switch. If you just need the code to work, static is the right answer.
What size should I print a QR code?
The rule of thumb is about one tenth of the scanning distance. A code read from arm's length, roughly 12 inches, wants to be at least 1.2 inches across. A poster read from 10 feet wants around 12 inches. Denser codes need more room: a version 1 code is 21 modules across, a version 20 is 97, and each module needs to survive your printer and the camera. Keep the clear margin around the code — the quiet zone, four modules wide, is included in every download here — and never print a code smaller than about 0.8 inches no matter how short the data.
Which error-correction level should I choose?
M is right for almost everything. It rebuilds around 15% damage and keeps the code reasonably compact. Choose L only for codes on a screen that will never be damaged, and only if you need the smaller pattern. Choose Q for codes that live outdoors, get handled, or go on packaging that scuffs. Choose H when a logo covers part of the code — H is the only level with enough headroom for that, which is why this tool switches to it automatically when you add one. Higher correction is not free: the same data packs more modules into the square, so the code gets denser and needs to be printed larger.
Is the WiFi password safe to put in a QR code?
It is stored in plain text inside the code — that is how a phone joins the network without anyone typing anything. Nobody can read it by looking at the squares, but any scanner can extract it in a second. So treat a WiFi QR code exactly like a password written on a card: fine on a table tent in your own cafe or a placard in your guest room, wrong on something posted publicly. The password never leaves your device while you make the code here; it is encoded in the browser and never uploaded.
Can I use these codes commercially?
Yes. The QR Code specification has been an open ISO standard for years and the patents have long since lapsed, so codes are free to make and use commercially. The images this tool produces are yours outright — no watermark, no licence, no attribution, no account. Download the SVG and hand it to your printer.

Built by US APP Team

Need more than a free tool?

We build custom mobile apps for founders and small businesses — idea to live on the App Store and Google Play. Fixed price, no surprises, and you own the code.

Start your app brief Takes about 3 minutes · or book a free intro call