Wi-Fi QR Code Generator

Let people join your Wi-Fi by scanning.

Enter the network name and password below. Scanning the finished code prompts a phone to join the network directly. No password read aloud, no laminated sign, no typing a string of random characters into a phone keyboard.

Customize

Type
Encodes a website URL. Opens in the phone's browser when scanned. Encodes plain text. Displays as-is when scanned. No link, no app needed. Encodes a contact card. Phones can save it directly as a new contact. Encodes Wi-Fi credentials. Phones can join the network directly by scanning, with no password to type. Encodes an email address. Opens a pre-filled draft in the phone's mail app when scanned. Encodes a phone number. Opens the phone's dialer, pre-filled, when scanned. Encodes a text message, pre-addressed. The message itself may not always pre-fill depending on the recipient's phone, which varies by device. Opens a WhatsApp chat with the number pre-filled, and the message too if you add one. Requires WhatsApp installed (or web.whatsapp.com). Encodes a map coordinate. Opens the phone's default maps app, centered on that point, when scanned. Encodes a calendar event. Phones can add it directly to their calendar app when scanned.
Colors Templates, code and background, eyes
Quick color templatesReady-made pairs that fill in the code and background colors below. A starting point, not a limit; change either afterwards. 30 ready-made pairs

Pick a preset to fill in the dot and background colors below, or skip this and choose your own.

Light backgrounds
Dark backgrounds

Light dots read fine on dark backgrounds on screen, but most scanners are tuned for dark-on-light -- test before printing at volume. Scan reliability tips.

Dot colorThe color of the pattern itself. Dark on light scans most reliably; a gradient is available on the paid plans.
BackgroundThe color behind the pattern, or none at all. Keep it well clear of the code's own color, because scanners read contrast, not hue.
Eye frame colorThe three large squares' outer rings. “Match code” follows the code color, so it keeps up if you change your mind later.
Eye center colorThe solid centers of the three large squares. Coloring these differently is the smallest change that makes a code look designed.
Shape & style Dots, corners, eyes, roundness
Eye center shapeThe solid center inside each of those three squares.
ShapeFits the whole code inside a circle instead of a square. The pattern shrinks to stay inside it, so it can be harder to scan from a distance.
Fits the whole code inside a circle. The pattern shrinks slightly to stay inside it, so it may be a little harder to scan from a distance.
Advanced Frames and captions, minimum size, download size

Preview

Generated QR code. Press and hold to save or share.

Log in to save QR codes to your account. Sign up free to get 2 dynamic QR codes you can edit after printing.

Made in your browser. Nothing is sent to us unless you save it to your account. Check it yourself

Open your browser's developer tools and switch to the Network tab, then build a code.

You will see this page load its own files: a stylesheet, two typefaces from Google Fonts, and our analytics. Like most sites, this one loads those. What you will not see is a request carrying the link you typed, the contents of your code, or the image itself, because the code is drawn here on your device and there is nowhere for it to be sent.

More about how this works

Understand what you are printing

The password is inside the code in plain text. There is no encryption and no lookup. Anyone who scans it, or photographs it and decodes it at home a week later, has your password. That is how the format works, on every generator that produces one.

Treat a printed Wi-Fi code as equivalent to writing the password on the wall, because functionally that is exactly what it is. For a café that is completely fine and is the entire point. For the network your file server and printers sit on, it is not.

The fix is one setting on your router, not a different QR code: put visitors on a separate guest network and generate the code for that. Then a leaked password buys someone internet access, which you were giving away anyway, rather than a foothold on your LAN.

The three fields people get wrong

  • The network name is matched, not displayed. It has to be exactly right, including capitalization and spaces, because the phone compares it against the networks it can actually see. Cafe Guest and cafe guest are two different networks, and only one of them exists.
  • Security type has to match reality. WPA/WPA2 covers essentially every modern network, WPA3 included in practice. WEP is long obsolete and is only there for genuinely old hardware. Choosing No password removes the password field entirely, because there is nothing to encode.
  • Hidden network is not cosmetic. If your SSID is not broadcast, the phone cannot find it by name and the code fails silently unless that box is ticked. If it is broadcast, leave it alone; ticking it unnecessarily causes its own problems.

Paste your real password, symbols and all

Semicolons, colons, commas, backslashes and quotes are field delimiters in this format. A password containing one would, in a naive generator, corrupt every field after it, producing a code that looks perfect and joins nothing.

This generator escapes them for you, so paste the password exactly as it is. You do not need to simplify it, and you should not.

In fact this is the argument for making guest passwords longer. The reason guest passwords are short is that humans have to type them. Once nobody types it, that constraint disappears, and a long random passphrase behind a scannable code is both easier for guests and considerably harder to guess than coffee123.

Print it big enough, and somewhere you can swap it

Wi-Fi codes encode a network name, a password and a security type, so they are denser than a short link: a finer grid that needs more printed area to stay reliable. A table tent at a couple of inches across is comfortable. A tiny code tucked into the corner of a menu is where these fail.

Second, plan for rotation. The credentials are baked into the pattern, so the day you change the password every printed code becomes wrong simultaneously. Table tents and card holders you can reprint beat vinyl laminated to a wall. A Wi-Fi code also cannot be made dynamic, because the phone reads the credentials straight out of the pattern and never contacts a server, so there is nothing to repoint.

Frequently asked questions

Does this work on both iPhone and Android?

Yes, and it is one of the most reliably supported QR types there is. Both platforms' built-in camera apps recognize the format and offer to join: iOS since iOS 11, Android natively since Android 10 and earlier via Lens.

Someone scanned it and nothing happened.

Most often the phone is out of range. The prompt only appears when the network is actually visible, or when Hidden network is ticked. After that, check the name for a typo or wrong capitalization and confirm the security type. A third-party scanner app is the other common cause: many just display the raw text instead of acting on it. Use the built-in camera.

Is it safe to put this in a shop window?

Only if it is a guest network you are content for passers-by to use, since anyone who can photograph it can read the password. That is usually fine for the intended purpose. What is never fine is doing it with the password to the network your business actually runs on.

Can I add my logo to it?

You can, but be conservative here specifically. Wi-Fi codes are dense, and the denser the code the less area a logo can safely cover before error correction runs out. The generator warns you when the combination gets risky. Heed it, and test the printed proof with a real phone rather than the screen.

Do I have to reprint when the password changes?

Yes. The credentials are part of the printed pattern, so an old code simply stops working. If you rotate guest passwords on a schedule, print the code onto something you can replace in seconds.