QR code generator
A real QR code, generated on your own computer. No account, no watermark, and no redirect that stops working when somebody stops paying for it.
What should it do?
Pick a type, fill it in, and the code updates as you type.
Your QR code
This code is yours forever
Most free QR generators give you a code that points at their server, which then redirects to your link. That is how they can offer "editable" codes, and it is also how your printed flyers stop working the day they change their pricing or go out of business.
The codes here contain your data directly. There is no middleman, nothing to expire, and no scan-tracking. The trade is that you cannot change where it points after printing — so check the link carefully first.
Error correction, in plain terms
QR codes can be read even when partly damaged, because they carry spare data. More spare data means a more robust code, but a denser one.
| Level | Survives | Use it for |
|---|---|---|
| Low | 7% damage | Clean screens, short links |
| Medium | 15% damage | Almost everything. The default. |
| High | 25% damage | Printed material that gets handled |
| Highest | 30% damage | A logo in the middle, or harsh conditions |
That last row is the practical reason people choose Highest: if you cover the centre with a logo, the error correction is what lets the code still scan.
Putting a logo in the middle
This works because of the error correction, not in spite of it. At level H a QR code carries enough spare data to rebuild roughly 30% of itself, so covering the centre is survivable — up to a point.
I tested this properly rather than guessing, by generating codes, covering the centre by a known percentage, and reading them back with a real scanner engine:
| Logo covers | Result |
|---|---|
| Up to 25% | Reads reliably on every code tested |
| 30% | Starts failing on smaller codes |
| 35% | Fails |
So the tool defaults to 20% and warns you past 25%. Two other things matter: keep the white pad behind the logo switched on, because it gives the scanner a clean edge, and never let the logo touch the three corner squares — those are how a scanner finds and orients the code at all.
The four things that break QR codes in real life
- Not enough contrast. Brand colours that look lovely on screen. Dark on light, always — and never a light code on a dark background.
- No quiet zone. The clear margin is part of the code. Designers crop it off constantly, and scanners then cannot find the edges.
- Printed too small. A rough rule is that the code should be at least a tenth of the scanning distance. Two metres away means a 20cm code.
- Never tested in place. Test the printed piece, in the real lighting, with a cheap phone. Not the PDF on your monitor.
What each type does when scanned
| Type | The phone offers to |
|---|---|
| Website link | Open the page |
| WiFi | Join the network without typing the password |
| Phone | Call the number |
| Text message | Open a message with the text ready |
| Open a draft with subject and body filled in | |
| Contact card | Save you to their contacts |
| Map location | Open the coordinates in a maps app |
The WiFi one is genuinely useful for a cafe, a clinic waiting room or a rental. Guests join without you reading a password out loud.
Common questions
Does this QR code expire?
No. Your data is encoded in the pattern itself. There is no server involved, nothing to renew, and no company that can switch it off.
Can I track how many people scan it?
Not with a plain code, because nothing reports back. If you need scan counts, point the code at a URL with UTM tags on it and read the numbers in your analytics.
Can I put my logo in the middle?
Yes. Download the SVG, place your logo over the centre, and keep it under about 20% of the width. Set error correction to Highest first, and test the result before printing.
PNG or SVG?
SVG for anything printed — it stays sharp at any size. PNG for websites, email and social.
Is my data uploaded anywhere?
No. The whole encoder runs in your browser. You could disconnect from the internet and this page would still work.
How much can one code hold?
Roughly 1,800 characters at Medium error correction, less at higher levels. Long content makes a dense code that is hard to scan, so a short link is nearly always better.
Want this checked on your real account?
A tool can only work with the numbers you give it. If you want someone to look at what is actually happening in your ad account, the first conversation is free.
Book a free consultation