QR codes are everywhere now — on menus, posters, business cards, tickets and shop windows — because they turn a phone camera into a link in under a second. The catch is that most "free" QR generators are not free at all: they host your code on their server, and when the trial ends or the subscription lapses, the code stops working. Our free QR Code Generator does it the honest way — it builds a genuine, standards-compliant code entirely in your browser, with proper error correction, and because the link or text is encoded directly into the pattern itself rather than stored on a server, the code can never expire or be switched off. This guide explains how to make a QR code with it, how QR codes actually work, the print sizes that scan reliably, and the two-minute test professionals always run before printing a batch.
Step one: type or paste what the code should contain. A website link is the most common choice, but plain text, a phone number, an email address or a Wi-Fi login string all work. The code redraws itself as you type, so there is nothing to submit and nothing to wait for. Step two: keep it short. The tool works best under about 200 characters — shorter codes are simpler, scan faster and print smaller — so strip tracking parameters you do not need and use the shortest link that does the job. Step three: pick a download size based on where the code will live. 256 pixels is plenty on a screen, 512 suits documents and slides, and 1,024 gives a print shop enough resolution for posters and packaging. Then download the PNG and use it wherever you like — it is yours, with no watermark and no account attached.
A QR code is not a picture of a link — it is the data itself, written in a standard two-dimensional barcode format (ISO/IEC 18004) that any scanner decodes offline. This generator encodes your text as UTF-8 bytes, then protects it with Reed–Solomon error correction at level M, which rebuilds the data even if about 15% of the code is damaged, dirty or covered — enough for scuffs, glare, print imperfections and small stickers. Short text produces a small 21 × 21 code (version 1); longer text automatically steps up through larger versions, to a maximum of version 10 (57 × 57 modules, roughly 210 characters) — the version and size of your code are shown under the preview so you always know what you are printing. Very long content, such as a full vCard, exceeds the version range supported here and is rejected with an explanation rather than silently producing an unscannable code. Higher error-correction levels exist — Q and H survive 25–30% damage — but they make the code denser for the same content, so M is the balanced default most professional generators use.
A café wants guests to join its Wi-Fi without typing a long password. The owner types the Wi-Fi login string into the generator — WIFI:T:WPA;S:CafeMira;P:espresso123;; — which tells a phone the network name, the security type and the password in one line. The string is short, so the code comes out small and simple, and the owner downloads the 1,024-pixel PNG for the table cards. Before printing the run, she prints one copy at the final size and scans it with two different phones, in ordinary room light, from the distance a real customer will stand — the two-minute test professionals always do. Both phones connect instantly, so the batch is safe to print. The same pattern works for a restaurant menu link, a payment address, or a business card: short content, the largest download size for anything printed, and one test print before the run.
Three rules decide whether a printed code scans. Size follows distance. Allow roughly ten times the print width as the scanning distance: a code scanned at arm's length (about 30 cm) should be at least 3 cm wide, and denser codes with long content need more. Download the right size. 256 pixels is plenty on a screen, 512 suits documents and slides, and 1,024 is the one for anything printed — a small PNG stretched across a poster turns into a blurry code that phones cannot read. Keep the white border intact. The quiet zone around the code is part of the code; crop it off and scanners lose the edges. Print on matte white where you can — glossy surfaces reflect light into the camera — and always test-print one copy at final size and scan it with two phones before printing a batch. A code that scans instantly both times is safe; one that hesitates is telling you to print it bigger.
Printing too small for the density. A long link makes a dense code, and a dense code printed at 2 cm is unreadable — shorten the content or print bigger. Cropping the white quiet-zone border. The border is part of the code; without it, scanners cannot find the edges. Low contrast or a coloured background. Light grey on white, or a code dropped onto a busy photo, fails in real light — black on matte white is the combination that scans. Trusting a dynamic-code service. Dynamic codes route through a redirect the provider controls, so they die when you stop paying — and they are the only kind that offers scan analytics, which is exactly the trade-off this tool refuses to make. Encoding something you would not print in plain text. A QR code hides nothing: anyone who scans it can see the content, so a Wi-Fi code on a café wall is fine, but never encode private keys, passwords to important accounts, or anything sensitive.
The honest limits are three. First, content is capped at roughly 210 characters — a full vCard or a very long URL will not fit, and the tool says so rather than producing a code that cannot scan. Second, static codes provide no scan analytics; counting scans requires a dynamic-code service, which is exactly the kind of service that can hold your code hostage when a subscription lapses. Third, a QR code is only as trustworthy as where it is placed: printed codes in public places can be stickered over by scammers, so check yours periodically if money is involved. Within those limits, the tool does one job completely: a real, permanent, standards-compliant code, generated on your device, that works as long as the destination it points to exists. Two companion guides cover the neighbouring jobs: our QR safety guide shows how to check where a code really leads before you scan it, and our image resizer guide covers getting any image — including a downloaded code — to the exact size a document or post needs.
A QR code hides its destination by design — that is exactly what scammers exploit. Decode it on your device, read the link as plain text, check the scam patterns, and only then decide whether to tap.
Resize any photo to exact pixels, by percentage or with one-tap social presets — Instagram 1080×1080, YouTube 1280×720 — and download it as JPG, PNG or WebP. Free, private, in your browser.
US 2×2, UK 35×45 mm and other presets, the 70–80% head rule, the glasses and shadow rejection list, and printing a 300 DPI 4×6 sheet at 100% — no $9 download fee.