Skip to content

QR code generator

Runs in your browserNothing is uploadedThis runs entirely in your browser. Nothing is uploaded.

Links, Wi-Fi credentials, email, SMS and contact cards — built in the page, with control over error correction, size, quiet zone and colour, and exported as PNG (including a print-resolution version) or SVG.

Input

Start URLs with https:// — without a scheme, many scanners treat the code as plain text rather than a link.

Preview

Enter something and the code appears here.

This is an on-screen sample. If you will print it, scan the actual paper or sticker once to confirm it reads.

More settings (error correction, size, colours, export)

Higher levels survive more dirt and wear but pack the same content into a denser grid. Choose H if you plan to place a logo in the middle.

Edge length of the preview and of the 1× PNG.

The blank border around the code. The specification asks for at least 4 modules.

#000000

#FFFFFF

Applies to the PNG. Pick 2× or more for print; the SVG scales without loss regardless.

Nothing here yet

1Pick a typeWi-Fi credentials2Fill it inSSID and securityPassword3ExportPNG (print size)or SVGLinks, email, SMS and contact cards are supported as well.
A higher error-correction level survives dirt and faint printing but packs the pattern more tightly. For something printed and stuck to a wall, M or above scans more reliably.
All tools

Highlights

Wi-Fi passwords are never sent
A Wi-Fi QR code is built from an SSID and its password, but the string is assembled and rendered entirely in the page, so nothing you type is sent anywhere.
Static codes with no redirect
The code carries your content directly, with no shortener or tracking hop, so it cannot break when a third-party service shuts down. In exchange, the destination cannot be changed later.
The encoded string is shown
The exact string going into the code is displayed on screen, which helps when a code will not scan or behaves differently from what you intended.

How to use it

  1. Pick what goes in it

    Text / URL, email, phone, SMS, Wi-Fi or a contact card. Only the fields that kind of code needs are shown.

  2. Fill in the content

    The code is drawn as you type. Error correction, image size, quiet zone and colours all live in the "More settings" panel if you want to change them.

  3. Save it as PNG or SVG

    Use the download buttons under the code. A warning appears when the two colours are too close in lightness. If it is going to print, scan the printed copy once before the run.

Choosing the settings

Which error correction level?
M (about 15% recoverable) covers screens and ordinary print. Use Q for signage or anything that gets scuffed, and H if a logo will sit in the middle. Higher levels pack the same content into a denser grid, so they also need a little more physical size.
Can the quiet zone be trimmed?
The specification asks for at least four modules. That border is how a reader knows where the symbol ends, so trimming it can make the code blend into whatever it is printed on. If a layout forces a narrower one, test on paper before the run.
How big should it be in print?
A common rule of thumb is roughly one tenth of the intended scanning distance — about 10 cm across for a one metre read. Reader quality and print accuracy both move that number, so a test print with a real phone is the reliable answer.
Is it safe to change the colours?
Yes, as long as the two colours differ in lightness. Readers threshold the image into light and dark rather than looking at hue, so two saturated colours of similar brightness will not scan. This tool computes the contrast ratio and warns when it is too low.

Questions

Can I use these codes commercially?
Nothing here restricts what you do with the image. Note that "QR Code" is a registered trademark of DENSO WAVE, which has stated it does not exercise its patent rights for use following the standard. Whether a trademark notice is required is a question for wherever you are publishing.
Do the codes expire?
No. What you get is a static pattern containing your content, with no server of ours in the loop. Scan it in ten years and the same string comes out.
Can I change the destination later?
Not in the code itself — fixed content is what "static" means. If the destination may change, encode a URL you control and change where that page redirects.
It will not scan. What should I check?
Colour contrast, printed size and quiet zone account for most failures. Try scanning the on-screen preview: if that works, the problem is on the print side; if it does not, it is in the settings. The encoded string shown below the preview is worth a look too.
Is what I type stored anywhere?
No. It lives in the page and is gone when you close the tab. Generation and download both happen in the browser, so Wi-Fi passwords and contact details never reach us.
Sponsored links