QR Code Generator
Make a free QR code for a link, WiFi, phone, SMS, email or plain text. Static, never expires, nothing uploaded. PNG and SVG download.
Built by Toolsque Team · last updated September 17, 2026 · checked against our testing process
Need a specific kind of code? website address Β· WiFi Β· contact card Β· PDF Β· transparent background Β· printed labels Β· bulk from a spreadsheet Β· all QR tools
How to make a QR code
- Pick the type: Link, Text, WiFi, Phone, SMS or Email. The fields change to match, and the preview updates as you type.
- Fill in the details: for a link you can leave off the https:// and it gets added for you. For WiFi, enter the network name exactly as it appears, including capitals.
- Set the printed size in millimetres: the box under the slider tells you roughly how far away the code will still scan, using the 10 to 1 rule.
- Adjust colour or error correction if you need to: open "Colours and error correction". Most codes are fine on the defaults, which are a dark code on white at level M.
- Download: SVG for print, PNG for screens. Then print one at the real size and scan it with a second phone before you order the full run.
Nothing is uploaded. The code is drawn in your browser, so WiFi passwords and phone numbers never leave your device.
A free QR code generator with nothing attached
This QR code generator makes a permanent, static QR code in your browser. There is no account, no trial, no watermark and no expiry date, and nothing you type is sent to a server. Pick what the code should do, type the details, set the printed size, and download a PNG for screens or an SVG for print.
The reason that matters: most of the generators at the top of a search for "free QR code generator" are not free in the way you expect. They hand you a code that points at their domain, not yours. The code keeps working only while your account and their service do. Print a thousand flyers, let the free trial lapse, and every code on them goes dead. The codes this page makes point straight at your own destination, so there is nothing to lapse.
What you can put in a QR code
A QR code is just a container for a short piece of text. What a phone does with that text depends on how the text is formatted, and the six types on this page cover what people actually scan.
| Type | What the phone does | Good for |
|---|---|---|
| Link | Opens the URL in the browser | Menus, sign-up pages, product pages, reviews |
| Text | Shows the text on screen | Serial numbers, short instructions, notes on equipment |
| WiFi | Offers to join the network | Guest WiFi cards, holiday lets, waiting rooms |
| Phone | Opens the dialer with the number filled in | Shop windows, vehicle signage, for sale boards |
| SMS | Opens a new message, optionally prefilled | Text to enter, text to book, short surveys |
| Opens a new email, optionally prefilled | Support codes, warranty claims, enquiry posters |
The WiFi type follows the standard WIFI: format that Android and iOS both read. If you want to see exactly what that string looks like and why the punctuation matters, the WiFi QR code format is written out field by field. For a contact card with a name, job title and phone number, use the dedicated vCard QR code generator instead, because contact cards need more fields than fit sensibly here.
Size is the thing most people get wrong
A QR code fails in the real world far more often because it was printed too small than because anything was wrong with the code. The working rule is a 10 to 1 ratio: a code reads reliably from roughly ten times its own width. A 30 mm code is comfortable at about 300 mm, which is arm's length. A code on a poster read from 3 m needs to be about 300 mm across.
The size box on this page applies that ratio as you type, so you can see the scan range before you commit to a print run. Two practical floors are worth knowing: below about 20 mm you are relying on a good camera and a steady hand, and below 12 mm many phones give up entirely. If a code has to be tiny, shorten what it encodes, because fewer characters means fewer dots and bigger dots.
Leave the white margin alone. The quiet zone, four modules of blank space on every side, is part of the specification, and scanners use it to find where the code starts. Cropping it off is a common cause of a code that works on screen and fails on paper. There is a full breakdown of sizes for different distances in the QR code size chart.
Error correction, and why the default is M
Every QR code carries redundant data so it still reads when part of it is damaged, covered or badly printed. You pick how much:
- L, about 7% recovery. Smallest code for the same content. Fine for a clean screen.
- M, about 15% recovery. The sensible default and what this page uses.
- Q, about 25% recovery. Worth it for labels that get handled or wet.
- H, about 30% recovery. For codes carrying a logo, or going on a tool, a vehicle or anything outdoors.
The trade is real and it works against you if you overdo it. Higher recovery adds data, so the code needs more modules, and in a fixed printed size every module gets smaller. A 20 mm code at level H can genuinely be harder to scan than the same code at level M. Raise it when something will obscure or damage the code, not as a general precaution. The error correction levels page covers what each level survives.
Static or dynamic
The code this page makes is static. Your destination is encoded in the dots themselves. That has two consequences worth being clear about.
The good one: nothing can switch it off. No subscription, no service going under, no plan change. The code works as long as the destination does.
The trade-off: you cannot change where it points after printing, and it cannot count scans on its own. If you need either, you do not have to buy a subscription for it. Point the code at a URL on a domain you control and redirect from there, and you own both the editing and the analytics. That is written up in how to create dynamic QR links yourself, and tracking QR scans without an app covers the counting side. Static vs dynamic QR codes lays the two options side by side.
Colours and logos
You can change the colour, and you should be careful with it. Scanners need contrast between the dots and the background, and they expect the dark part to be the code. A light code on a dark background fails on a lot of phones even when the contrast ratio looks acceptable on paper. Keep the code dark and the background light, and aim for strong contrast rather than a colour that merely matches your brand. Can QR codes be coloured goes through what survives and what does not.
Logos are the same story. A logo covering the middle of a code is eating into the error correction budget, which is why logo codes are usually set to H. Keep the logo to about 15% of the code's width and keep the three corner squares completely clear, because those are the finder patterns and a scanner cannot locate the code without them. Why logo QR codes fail to scan has the detail.
Test before you print
Print one at the real size on the real material, then scan it with more than one phone, including an older one. Check it under the lighting it will actually live in, because glossy stock under a spotlight is a different problem from matte paper indoors. A code that scans on your monitor has told you very little. There is a checklist in how to test a QR code before printing, and if something is not reading, QR code not scanning works through the usual causes in order.
PNG or SVG
Download the SVG for anything going to print. It is vector, so it stays sharp at any size and your printer can scale it without the dots going soft. Download the PNG for screens, slides, email and social. The PNG here is rendered at 300 DPI for your chosen millimetre size, so it is print-safe too if your workflow needs a raster file. If you need a code with no white box behind it, the transparent QR code generator exports a PNG with an alpha channel.
Making a lot of codes at once, one per product or per table, is a different job. The bulk QR code generator takes a spreadsheet column and gives you the whole set.
