QR code generator
Turn text or a URL into a QR code image.
You have a flyer going to the printer tomorrow and it needs a link people can reach without typing a long URL. Or a poster, a table tent, a parcel label - anywhere a phone camera is faster than a keyboard. Paste the text or the address, press the button, and take the image away as a PNG.
How it works
What the button actually does
Whatever you type in the box is encoded into a QR matrix by JavaScript running on this page. Nothing is sent anywhere - the image appears at 220x220 pixels with error correction level M, and Download PNG saves that image to your device.
What you can encode
A QR code just carries text. Phone cameras recognise certain prefixes and offer an action instead of showing raw characters.
| What you want to happen | What to paste |
|---|---|
| Open a web page | The full address including https:// |
| Show a note | The plain text itself |
| Start an email | mailto:hello@example.com |
| Dial a number | tel:+15550100 |
| Save a contact | Use the QR business card (vCard) tool instead |
Leaving off https:// is the most common reason a link code opens a search page instead of the site.
Error correction, and why a scuffed code still works
QR codes store redundant copies of their data. Level M can rebuild the content when roughly 15% of the code is damaged or covered, which is why a small scratch or a fingerprint rarely matters. That is also the budget you are spending if you drop a logo into the middle - keep it small, and test the printed result before ordering a thousand copies.
Making sure it scans
- Size. A rough working rule for print is a code about one tenth the distance it will be scanned from: 3 cm for arm's length, 30 cm for across a room.
- Quiet zone. Leave the blank margin around the code alone. Cropping tight to the black edge breaks scanning more often than anything else.
- Contrast. Dark pattern on a light background. Inverted or low-contrast colours confuse many scanners.
- Length. Long text means a denser grid and smaller squares. A shortened link scans from further away than a URL with tracking parameters attached.
Terms explained
- QR code
- A two-dimensional barcode that stores text, read by a camera rather than a laser scanner.
- Error correction level
- How much of the code can be lost while still being readable. This tool uses level M, around 15%.
- Module
- One of the small black or white squares that make up the pattern. More text means more modules.
- Quiet zone
- The empty margin around the code. Scanners need it to find where the code begins.
- PNG
- A lossless image format that keeps the edges of the squares sharp, which is what the download gives you.
Frequently asked questions
Does a QR code expire?
The code itself does not - the text is baked into the pattern and never changes. What can break is the destination: if you encode a link and later take that page down, the code still works but leads nowhere. For anything long-lived, point the code at an address you control.
Is what I type sent to a server?
No. The code is drawn in your browser by a script on the page, and the text never leaves your device. The downloaded PNG is generated locally too.
How large should I print it?
As a starting point, make the code roughly one tenth of the distance people will scan from, then test with a couple of different phones. Older cameras and dim lighting both want more size than you would guess.
Can I edit the colours or add a logo?
Not in this tool - it produces a plain black-on-white PNG. You can open that file in an image editor afterwards. If you cover part of the code, keep it under about 15% and near the centre, and scan the result before using it.
Why will my code not scan?
Usually one of four things: the printed code is too small for the reading distance, the white margin has been cropped away, the contrast is too low, or the encoded text is so long that the squares became tiny. Shortening the text fixes more cases than any other change.
Tell us what went wrong and we'll fix it fast. (Leave an email if you'd like a reply.)