QR code generator

Turns a link, Wi-Fi login, contact card, phone number, text message, email or map coordinates into a QR code you can save as PNG or SVG. Nothing is routed through a shortener, so the code will not expire, and nothing you type leaves your browser.

Runs in your browser · nothing is uploaded

You can leave off the http part; https:// is added for you.

Appearance

Preview

Fill in the fields and the code appears here

ModulesWhat is actually encoded

SVG stays sharp at any size, which suits print. PNG is saved at 1024 × 1024.

Assumptions

How it is calculated

Examples

UseSettingsResult
Guest Wi-Fi card on a café tableWi-Fi · level QGuests join without typing the password
Contact details on a business cardContact · save as SVGScanning adds you to the address book
Shop location on a flyerMap coordinatesScanning opens the maps app
Sign-up link on a posterWebsite link · level MPNG at 1024px, ready to place

Common mistakes

FAQ

Will this code stop working later?

No. The content you enter is encoded directly, with no redirect through this site. Some free QR services quietly route the code through their own domain so they can charge later or show ads, and when that service shuts down every printed code dies with it. Nothing here works that way. Of course, if the address you encoded disappears, the code points nowhere.

Can the Wi-Fi password contain punctuation?

Yes. The Wi-Fi QR format requires a backslash before a semicolon, colon, comma, double quote or backslash, and plenty of generators skip that step. When they do, a single semicolon in the password produces a code that scans to the wrong thing. This tool escapes them properly.

Which error correction level should I pick?

A QR code carries spare data so it still reads when part of it is dirty or covered. L recovers about 7%, M about 15%, Q about 25% and H about 30%. Higher levels need more modules, making the pattern denser. M is fine on screen; choose Q or H for stickers, labels or anything that will get scuffed. If you plan to place a logo over the middle, you need H.

How much text fits?

At the largest version with level L, a code holds 7,089 digits or 4,296 alphanumeric characters. Accented and non-Latin characters take two or three bytes each in UTF-8, so far fewer fit. Long text also makes the pattern dense enough that small printing becomes unreadable. For anything long, encode a link rather than the text itself.

PNG or SVG?

Choose SVG if the code will be printed or resized later; it stays perfectly sharp at any scale. Choose PNG to drop straight into a document or chat. The PNG is 1024 × 1024, large enough to fill a good part of an A4 page without softening.

Does anything I type get uploaded?

No. The code is generated entirely in your browser and nothing is sent to a server. That means a Wi-Fi password or a contact card is safe to enter. Closing the page discards it.

Can I put a logo in the middle?

Not here. A logo covers part of the data, so it only works if you raise error correction to H and then test the result on real phones. Offering the feature without that testing step would produce codes that fail after printing. If you need one, save the SVG, add the logo in a vector editor, and scan the result yourself before committing to print.

Related tools