Skip to main content
PulsarKit

Make a Wi-Fi QR code

Build a QR code for a link, a Wi-Fi network, a contact card, an email, an SMS or a map pin, then download it as PNG or SVG.

How to generate a QR code

  1. 1

    Pick what the code should contain

    Seven kinds of content are supported: plain text, a web address, Wi-Fi credentials, a contact card, a pre-written email, an SMS and a map pin. The form changes to match the one you choose.

  2. 2

    Fill in the fields and generate the code

    The preview redraws as you type. “Generate QR code” then checks the colors, reads the finished picture back and names its version and level. Set the size from 128 to 2048 pixels; colors, the quiet zone, a logo and “Error correction” are under “More settings”.

  3. 3

    Download PNG or SVG

    Pick PNG or SVG under “Download as”, then press “Download”: a code that has not been checked yet is read back first. PNG suits screens and print at a fixed size; SVG stays sharp at any size, for a poster or a vinyl sticker. Both come out of your browser, not a server.

The line inside the code

This page opens with “Wi-Fi” chosen under “What the code contains”. The form asks for “Network name (SSID)”, “Network password”, “Security” and “This network is hidden”. They become one line of text, in a format the ZXing barcode project describes. In our check on October 29, 2026, WIFI:T:WPA;S:PulsarKit Guest;P:guest-2026;H:false;; came out for the network PulsarKit Guest with the password guest-2026. T is the security type, S the network name, P the password and H the hidden flag. The page reported “Version 4 · level M · 288 px · 51 characters”, and the PNG weighed 4.5 kB.

Semicolons and backslashes in a password

ZXing's wiki, viewed on October 29, 2026, asks for a backslash before a semicolon, comma, colon, quote or backslash. The page adds one in the name and the password alike. Our test password a;b,c:d"e\f went into the code as a\;b\,c\:d\"e\\f. A password ending in a backslash, guest2026\, became guest2026\\, so the semicolon after it still ends the password. Before you get the file, the page reads the drawn code back and checks it against the line it built. “Generate QR code” runs this check, and “Download” runs it too when the code has not passed it yet. Our five test codes came back exactly from jsQR, the decoder behind the check.

Open, hidden and WEP networks

“Security” offers WPA/WPA2, WEP and “Open network”, written into the code as T:WPA, T:WEP and T:nopass. For an open network, the code carries no password, even if one was typed: our line WIFI:T:nopass;S:PulsarKit Guest;H:false;; has no P: password field. “This network is hidden” turns H:false into H:true, the flag ZXing keeps for a network that does not broadcast its name. A WEP network named Café;Net with the password 12345 fit a smaller code, version 3, its semicolon escaped as S:Café\;Net.

Scan it with a phone before you print

We read our codes back on a computer, not with a phone camera. A second decoder, OpenCV, read four of the five and missed the code for Café;Net. Whether a phone offers to join the network depends on the phone and its camera app; we have not tested that on an iPhone or Android phone. So point your phone at the code on screen before you print, and again at the printed card. For print, take the SVG, which scales without blur.

Your Wi-Fi password never leaves this tab

The code is built in your browser with JavaScript. Nothing you type is uploaded, logged or written to browser storage, whether it is a Wi-Fi password, a phone number or a home address on a contact card. Close the tab and it is gone. The logo you attach is read locally too and never uploaded anywhere.

Frequently asked questions

Do QR codes expire?

A code made here never expires. It is a picture of your data, not a redirect through someone else's server, so there is no account to lapse and no link to switch off. That also means you cannot change where it points after printing it; for that you would need a redirect service.

How many characters fit into a QR code?

Up to 2,953 characters at the lowest error-correction level. Higher levels and a logo reduce that considerably. In practice, anything past a few hundred characters produces a dense code that needs a large print to scan reliably.

Should I pick the highest error correction level?

Only where the code may get dirty, creased or partly covered. Denso Wave says Q or H may suit a factory floor where codes get dirty, and L a clean place with a lot of data. Its error correction page, viewed on October 29, 2026, adds: “Typically, Level M (15%) is most frequently selected.” This page starts at M. H, the highest, takes the most room: our 40-character link went from version 3 at M to version 5 at H. A logo switches H on by itself.

What size should I use for print?

As a rule of thumb a code should be at least a tenth of the distance it will be scanned from: 3 cm for arm's length, 30 cm for a code read from three metres. For print, download the SVG: it scales to any size without the blur you get from enlarging a PNG.

Will an inverted code, light on dark, still scan?

Most modern phone cameras handle inverted codes, but some dedicated scanners do not. Dark modules on a light background remain the safe choice. Whatever you pick, the contrast check here refuses any pair below 3:1.

Is it safe to put my Wi-Fi password into a QR code?

The password is encoded in the picture in plain text, so anyone who can photograph the code can read it. That is fine for a guest network printed on a card by the door, and a bad idea for a network you care about. Nothing is sent anywhere by this page, but the code itself is readable by design.

What is the difference between the PNG and the SVG?

The PNG is a grid of pixels at the size you chose, which suits a website, an email signature or a screen. The SVG describes the same squares as shapes, so it prints crisply at any size and can be recoloured in a vector editor.

Related tools