Need a QR code for a menu, a flyer, a shop window, or a link you want people to open with their phone camera? This free QR code generator makes one in seconds: type your text or link, pick a size, and download the code as a PNG. Everything runs in your browser, so nothing is uploaded, no account is needed, and the code you download is a static code — there is no service behind it that can switch it off later.

How to use this QR code generator

Three quick steps — no signup, no cost.

1Type your text or link

Enter a website address, a Wi-Fi detail, a phone number, or any plain text you want the code to hold.

2Pick size and strength

Choose the pixel size and the error-correction level. Higher correction survives more damage but makes a denser code.

3Download the PNG

Download your QR code and print it or share it anywhere. That is all — no account needed.

Why this QR code generator never expires

Built to be free, private, and permanent — on any device.

Nothing that can be switched off

The code holds your content directly. No redirect service sits in the middle, so no trial ending or subscription lapsing can kill a printed code.

Private by design

Your text never leaves your device, because the code is drawn in your browser.

Sized for print or screen

Download at 256, 512, or 1024 pixels, so the same code works on a business card or a poster.

Damage-tolerant

Pick error-correction level H and the code still scans even if part of it is scuffed or dirty.

Before you print: size, border, and damage rules

Most QR codes fail for three avoidable reasons. Get these right and your code scans first time.

Size follows distance. Do not print smaller than 2 × 2 cm for anything read up close, and use scanning distance ÷ 10 as the minimum width: a business card read from 20 cm away needs about 2 cm, a flyer read from half a metre needs about 5 cm, and a poster read from 1 metre away needs about 10 cm. Denser codes — long links, high error correction — need to be larger, so always proof-test at real size.

Never crop the white border. Every QR code needs a quiet zone of at least 4 modules of blank space on all four sides. That is the white frame around the pattern. If artwork, a logo, or a tight crop eats into it, scanners cannot find the code at all.

Error correction is a damage budget. Level L tolerates about 7% damage, M about 15%, Q about 25%, and H about 30% — of the code’s data, not its area. Print codes that will live outdoors, on packaging, or in dirty hands deserve level H. But higher correction also makes the pattern denser, so balance it against size.

Test before you print 500 of anything. Print one copy at actual size, scan it from the real distance, in real light, on two different phones. Put the plain destination beside the code too — “Scan for menu” plus the short link — so people have a fallback if a camera struggles. If it fails on only one phone, the code is usually too small or too low-contrast, not broken.

QR Code Generator FAQs

Short, direct answers to the questions readers ask most.

No — not the pattern itself. A static code works as long as its destination exists and the print is readable. A dynamic code stops only if its provider switches the redirect off, for example when a trial ends, a subscription lapses, or a scan cap is hit.

Not with a static code — make a new one and reprint. If you may need to change it later, point the static code at a page you control, such as yoursite.com/menu, and edit that page instead.

Do not go below 2 × 2 cm for close-range print, and use scanning distance ÷ 10 as the minimum width — a poster read from 1 metre away needs about 10 cm. Denser codes need to be larger, so always proof-test at real size.

Yes, at error-correction level H, centred, roughly a fifth of the code’s width, never covering the three large corner squares, with a light panel behind it — then test-scan it on two phones before printing.

Scanning and decoding need no internet. Text, Wi-Fi and contact codes then work fully offline, but a code that opens a web page or a hosted PDF still needs a connection to load that page.

Yes. It makes static QR codes entirely in your browser — no account, no signup, no watermark, and nothing that can expire or be switched off later.