QR Code Generator
Links, Wi-Fi, email, phone. The code carries your data directly — nothing redirects through us, so it keeps working long after you have forgotten this page.
Runs on your device — nothing you type is sent anywhereMedium — up to 15% of the code can be dirty, torn or covered and it still reads.
The blank border is part of the specification, not decoration. Below about four modules some readers stop finding the code at all.
A single QR code holds around 1,800 characters at most, and fewer at higher error correction. Long text belongs on a page with the link in the code.
How it works
Three steps, no account, and nothing you type leaves your computer.
Choose what it should do
Open a link, join a Wi-Fi network, start an email or dial a number. Each one writes the right format into the code for you.
Set it up
Error correction, size, border and colours. The preview updates as you go, and the tool warns you when a colour pair will not scan.
Download
PNG for screens and quick use, SVG for anything being printed at a size you do not know yet.
What people put in a QR code
Wi-Fi for guests
A card on the fridge or the counter that joins the network without anybody reading a password out loud. Phones handle this natively.
A menu, a price list, a form
On a table, a poster or a window, pointing at a page you control and can change without reprinting anything.
Contact details on printed material
A card, a flyer or a van that dials a number or opens an email rather than asking somebody to type it in.
A link too long to say out loud
Anything with a tracking parameter or a long path is easier scanned than dictated.
The QR code that still works in ten years
Most free QR generators online produce a code that does not contain your link. It contains theirs. Scanning it goes to their server, which looks up where you wanted to send people and forwards them on.
Why that matters more than it sounds
Redirection is sold as a feature, usually called a "dynamic" code, and it genuinely allows one useful thing: changing the destination after the code is printed. It also creates three problems that nobody mentions on the way in.
The code dies when the service does. If that company shuts down, changes its pricing, or simply lets a domain lapse, every code ever printed stops working. Not degrades — stops. There is no way to fix a sticker already on ten thousand products.
It usually expires anyway. Free tiers frequently cap scans or expire after a trial, and the code that worked at the launch event is dead by the time the posters are up.
Every scan is logged by a third party. Who scanned, when, roughly where, on what device. That data is the actual business model.
A code made here contains your URL, your network name, your phone number. There is no lookup, no service in the middle and nothing to expire, because after the image is downloaded this page has no further part in it. The trade is real and worth stating: you cannot change where it points afterwards. If that matters, point the code at a page you control and change what is on that page — which gets you the flexibility without handing anybody a switch to your printed material.
Error correction, and the room it buys
Every QR code carries redundancy, so it can be read while partly damaged. The level you choose decides how much:
| Level | Recoverable | Use it for |
|---|---|---|
| Low | 7% | Clean screens, where the code is never touched |
| Medium | 15% | Almost everything — the sensible default |
| High | 25% | Print that gets handled, outdoors, small sizes |
| Highest | 30% | Anything with a logo over the middle, or rough conditions |
Higher correction means more modules for the same data, so the code looks denser and needs to be printed larger to stay readable. Medium is right unless you have a reason.
The white border is not decoration
The blank margin around a QR code — the "quiet zone" — is part of the specification. It is how a reader finds where the code begins. The standard asks for four modules, and codes cropped tight to the edge are one of the most common reasons a scan fails on an otherwise perfect image.
If you are placing a code on a busy background, keep that border and keep it in a plain colour. It is not wasted space.
Colours: contrast, and which way round
Two rules, and the second surprises people.
The first is contrast: readers need a clear difference between the code and its background. Pale grey on white fails in poor light even when it looks fine on your screen.
The second is direction. Dark code on a light background reads reliably; light code on dark does not, because many readers assume the darker modules are the data. Inverted codes work on some phones and fail on others, which is the worst possible outcome — it looks fine when you test it and fails for a quarter of your audience. This tool warns you when the colours are inverted or too close, rather than letting you find out from a printed run.
PNG or SVG
PNG is an image of a fixed size: right for a screen, an email, a slide, or anything printed small at a size you already know.
SVG describes the squares mathematically, so it is sharp at any size at all — a business card or the side of a building, from the same file. If the code is going to a printer, send the SVG. It is also far smaller, and it is the format a designer will ask for.
Wi-Fi codes, and the detail most tools get wrong
A Wi-Fi QR code is a small text format listing the network name, the security type and the password. Phones read it natively and join without anybody typing anything.
The detail worth knowing: characters like ; , : " and \ have to be escaped inside that format. A password containing a semicolon, encoded by a tool that skips this, produces a code that scans perfectly and then fails to connect — which is almost impossible to debug from the outside. This one escapes them.
Nothing you type is sent anywhere
The encoder runs in your browser. Your link, your network password and your phone number are turned into an image on your own machine and never transmitted.
Wi-Fi codes make that concrete: generating one elsewhere means typing your home or office password into somebody else's website. Here it goes into an image and nowhere else.
Common questions
Does the code expire, or stop working?
No. It contains your data directly, so there is nothing to expire and no service in the middle that could disappear. Codes from services that offer "dynamic" QR go through their servers, which means they stop working if that company does.
Can I change where it points after printing?
Not in the code itself — that is the trade for it never expiring. The usual answer is to point the code at a page you control and change what is on that page, which gives you the flexibility without handing a third party a switch to your printed material.
Is my data sent anywhere?
No. The encoder runs in your browser and the image is produced on your own machine. That matters most for Wi-Fi codes, where the alternative is typing your network password into somebody else\u2019s website.
Which error correction level should I use?
Medium unless you have a reason. Use High or Highest for anything printed that gets handled, used outdoors, or has a logo over the middle. Higher levels make the code denser, so it needs printing larger.
Why does my code not scan?
Three usual causes: the white border was cropped away, the colours are too close together, or the code is light on a dark background. That last one works on some phones and fails on others, which is why this tool warns about it rather than letting a print run find out.
Should I download PNG or SVG?
PNG for screens and for print at a size you already know. SVG for anything going to a printer or a designer — it stays sharp at any size, from a business card to a billboard, and the file is much smaller.
How much text fits in one code?
Around 1,800 characters at the practical limit, and considerably fewer at higher error correction. Long text makes a dense code that scans badly, so beyond a sentence or two it is better to host the text and encode the link.
More tools
Every one of them runs on your device. No uploads, no accounts.