QR code designer
A QR code for a link, a Wi-Fi network, a contact card or anything you type. Choose the colours, drop a logo in the middle, download it as SVG or PNG. It prints here, in your browser, and nothing leaves the page.
Leave out https:// and it gets added for you.
Up to about 2,900 characters at the lowest error correction. Shorter scans faster.
Phones join the network when they scan it. Print it for the guest room.
Saved as a vCard, so the phone offers to add the contact straight away.
Opens a new email with these filled in.
Include the country code and it works from anywhere.
Type something and it prints.
Point a phone at it. If it scans here, it scans everywhere.
VERSION 1 21 X 21 EC M MASK 0 0 BYTES
How it works
A QR code is a grid of dark and light modules. The three big squares in the corners are the finder patterns a scanner locks onto first; the small one lower right, and the dotted lines joining the corners, tell it how the grid is tilted. Everything else is your data, padded, wrapped in error correction, then masked with one of eight patterns so no region ends up too blank or too busy. This page runs that whole procedure itself, from the standard, and picks the version, mode and mask for you.
Version is the size: version 1 is 21 by 21 modules, version 40 is 177 by 177. The code grows only as far as your data needs. Numbers pack tightest, then capital letters and a few symbols, then anything else as UTF-8 bytes, which is why a short link makes a small code and a paragraph makes a big one.
Error correction is Reed-Solomon, the same idea as on a CD. Level L survives 7 percent damage, M 15, Q 25 and H 30. A logo counts as damage, so when you add one this page moves to H and keeps the logo under a quarter of the width. If you make the logo bigger than that, test the result with a phone before you print a thousand of them.
Scanners like dark modules on a light background with a clear margin around the code, the quiet zone. Light-on-dark codes and low-contrast colours scan on some phones and not on others, so the page warns you about both. Rounded and dotted modules are fine for the data area; the finder patterns stay solid because that is what scanners are trained on.
Nothing you type is sent, logged or stored. The logo never leaves this tab. The only thing this page records is that a code was made, which kind it was, and what size it came out.