How to make a WiFi QR code that actually connects people

Make a free WiFi QR code that joins guests to your network with one scan. How the WIFI payload works, why WPA2 vs WPA3 matters, and how to print one that survives a coffee shop wall.

6 min readQR Studio

Nobody wants to read your password off a chalkboard. Guest_Wifi2024! has a capital G, an underscore, and an exclamation point, and about a third of the people who try it will get one character wrong and assume your internet is broken.

A WiFi QR code fixes that. Point a camera at it, tap the banner, you're on. No typing, no asking the barista twice.

Here's what's actually happening inside one, and the two or three decisions that separate a code that works on every phone from one that only works on yours.

What a WiFi QR code actually contains

It's not magic and it's not a link. A WiFi QR code holds a short line of text in a format phones have understood for years:

WIFI:T:WPA;S:MyNetwork;P:MyPassword;;

That's it. T is the security type, S is the network name (the SSID), P is the password. Your phone's camera reads that string, recognizes the format, and offers to join the network.

Two things follow from this that trip people up.

First, the password is in the code. Not encrypted, not hashed. Anyone who scans it gets the password, and anyone who photographs the code can decode it later at home. That's fine for a guest network in a lobby. It is not fine for the network your point-of-sale terminal lives on.

Second, the code is static. The password lives inside the black and white pattern. Change the WiFi password and every printed copy is dead paper. Plan for that before you laminate forty of them.

Making one

In QR Studio, pick the WiFi type and fill in three fields.

Network name. Type it exactly as it appears in your router, including capitalization and spaces. The Bridge Guest and the bridge guest are different networks as far as a phone is concerned. If your SSID has punctuation in it, the generator escapes it for you.

Security type. Most home and small business routers run WPA2 or WPA3, and both use the same WPA value in the payload. Pick WPA unless you know you're on something older. If your network is genuinely open with no password, use the no-password option instead of leaving the password field blank with WPA selected, because a phone reading WPA with an empty password will just fail.

Password. Exactly as typed. This is the one people fumble. Copy and paste it out of your router settings rather than retyping from memory.

There's also a hidden network checkbox. Leave it off unless you've deliberately turned off SSID broadcast, in which case turn it on so the phone knows to go looking.

The code renders in your browser as you type. For a static code like this, nothing you enter is sent anywhere. Your WiFi password does not travel to a server to become a picture.

The parts people get wrong

Android and iPhone don't behave identically

Both handle WiFi QR codes natively now, but the flow differs. iPhone shows a "Join network" banner at the top of the camera view. Some Android builds open a join prompt immediately, others route it through the Google Lens sheet first. Older Android devices sometimes need the code scanned from the WiFi settings screen instead of the camera app.

If you're posting a code in a public space, add a one-line caption: "Scan to join, then tap Join." You can put that text directly under the code in the studio's frame settings so it prints as one piece.

Long passwords make dense codes

A WiFi payload with a 30-character password produces a noticeably denser grid than one with an eight-character password. More modules in the same physical space means each module is smaller, which means the code needs to be printed larger or scanned closer.

If your guest password is a 40-character random string, either shorten it or plan on printing the code at least three inches wide. There's a real tradeoff here and I'd rather you make it on purpose than discover it when the sign goes up.

Contrast is not optional

Dark code on a light background. That's the rule, and it's the rule because scanners look for dark modules against light ones. A light gray code on white will fail in dim light. An inverted code, light on dark, works on some scanners and not others, and you will not find out which until it's on the wall.

If you want the code to match your brand palette, change the dark color, not the light one. A deep navy or a dark green on white scans fine. A pastel does not.

The working rule for scan distance is ten to one. A code meant to be scanned from ten inches away needs to be about one inch wide. A code on a wall people will scan from six feet away needs to be roughly seven inches.

Leave the quiet zone alone too. That's the blank margin around the pattern, and the spec asks for four modules of clear space. Cropping tight to the edge of the black is one of the most common reasons a code that worked on screen fails on a menu.

Export as SVG if it's going to a printer. SVG is vector, so it stays sharp whether it prints at two inches or two feet. Use PNG for anything on a screen.

Verify before you print forty copies

Before a download runs, QR Studio decodes the finished image again at a ladder of sizes, from large down to small, with a bit of blur added to imitate what a phone camera actually sees. If a heavy logo or a low-contrast color pair broke the code, you find out on your laptop instead of at the print shop.

I built that step because I've watched someone laminate 200 table tents with a code that scanned perfectly in Illustrator and not at all on paper.

Where these work best

Coffee shops and restaurants put them on table tents and the back of the menu. Churches put them in the bulletin next to the guest WiFi line. Airbnb hosts frame one in the kitchen, which cuts the number of "what's the wifi" messages to roughly zero. Offices tape one to the inside of the conference room door for visiting clients.

The pattern is the same everywhere: a network with a password you don't mind sharing, in a place where people arrive and need access fast.

What if the password changes?

A WiFi code can't be edited after printing, because the password is physically encoded in the pattern. There's no server in the middle to update.

If you rotate your guest password on a schedule, you have two options. Reprint the code each time, which is fine for a single laminated card and painful for a hundred. Or stop rotating the guest password and segment the network instead, so the shared password only ever reaches a network that has nothing worth reaching.

For codes where the destination genuinely needs to change later, like a link on a printed sign, dynamic codes solve that problem. But they only work for URLs. A WiFi payload has to be static by nature.

FAQ

Is a WiFi QR code safe? It's exactly as safe as telling someone the password out loud, because that's what it does. Anyone who scans or photographs it has your password. Use it for guest networks, not for the network your business systems run on.

Does it work on both iPhone and Android? Yes. iOS has supported it in the native camera since iOS 11, and Android since 10. On older Androids, users may need to scan from the WiFi settings screen rather than the camera app.

Can I add my logo to a WiFi QR code? Yes, and the studio raises the error correction level to compensate. Keep the logo under about 20 percent of the code's width and let the verification step confirm it still reads.

How small can I print it? About an inch is the practical floor for a short password at close range. Longer passwords need more space. Test at actual print size before you commit to a run.

Do I need an account? No. Static codes, including WiFi codes, are free, unlimited, and have no watermark or expiration.


Make one now at gmqr.dev. Free, no signup, verified before it downloads.

Keep reading