By · Updated

QR Code Generator

Wi-Fi, vCard, Email, SMS, PNG and SVG

No ratings yet

OneTask is free, with no sign-up, and built by one person.
If this tool saved you time, a coffee helps keep new ones coming.

How the QR Code Generator works

This QR code generator makes codes for links, Wi-Fi, contacts and more. Pick a type — plain text, a link, a Wi-Fi network, a contact card, an email, an SMS, a phone number, a map location or a calendar event — fill in the fields, and download the QR code as a PNG. It is generated in your browser, so nothing you type is uploaded, and the image never expires or redirects through anyone else's tracking domain.

Qr code generator: how the names are built

A QR code is a grid of black and white squares that encodes a short string of data, along with enough redundancy to survive being crumpled, printed badly or partly covered. Everything about the code you see here is decided by two things: how much data you typed, and which error correction level you picked.

Version and size. QR codes come in 40 sizes, called versions. Version 1 is a 21×21 grid holding a handful of characters; version 40 is 177×177 and holds a couple of thousand bytes. This generator picks the smallest version your text fits into, because smaller codes have larger squares at the same print size, and larger squares scan faster and from further away. Shortening a URL before you encode it is the single most effective way to get a code that scans well.

Error correction. Reed–Solomon redundancy is baked into every code, at one of four levels: Low recovers about 7% damage, Medium 15%, Quartile 25% and High 30%. The redundancy is not free — it takes up capacity, so a High code needs a bigger grid for the same text. Medium is the sensible default for anything on a screen or a clean printed page. Go higher if the code will be printed on fabric, curved packaging, or anywhere it might get scuffed, or if you plan to place a logo over the middle of it.

Masking. Large plain areas of black or white confuse scanners, so the encoder tries eight different XOR patterns over the data area, scores each one against the four penalty rules in the specification, and keeps the lowest-scoring result. That is why two codes containing almost the same text can look completely different — a one-character change can flip the winning mask.

The quiet zone. The white border around the code is part of the code. The standard requires four modules of clear space on every side, and scanners genuinely fail without it. The downloaded PNG includes that border, so do not crop tight to the black edge when you place it in a design.

Encoding. Text is encoded in byte mode as UTF-8, which means accented characters, non-Latin scripts and emoji all work — they simply use more bytes each, so they fill a version faster than plain ASCII does. Roughly speaking, an emoji costs four bytes and a Latin letter costs one.

Data types are conventions, not features. A QR code has no idea what it contains — it holds a string. What makes a phone offer to join a network, save a contact or open a map is the shape of that string, and those shapes are conventions the scanning apps agreed on rather than parts of the QR specification. This generator writes them for you: a website becomes a bare https:// URL, a Wi-Fi network becomes WIFI:T:WPA;S:NetworkName;P:password;;, a contact becomes a vCard 3.0 block starting BEGIN:VCARD, an email becomes a mailto: link with the subject and body percent-encoded, an SMS becomes SMSTO:number:message, a phone number becomes tel:, a location becomes geo:latitude,longitude, and a calendar entry becomes an iCalendar BEGIN:VEVENT block.

Escaping. The Wi-Fi, vCard and iCalendar formats all use punctuation as structure, so any semicolon, comma, colon or backslash inside your own values has to be escaped with a backslash or the scanner reads it as the end of a field. A Wi-Fi password containing a semicolon is the classic case, and it is where a lot of generators quietly produce a code that joins the wrong network or fails outright. This one escapes those characters for you, so type the password exactly as it is.

PNG, SVG or an embed snippet. The PNG is the right thing to send to a printer or drop into a document. For a web page, Copy SVG gives you the same code as vector markup — one path element, sharp at any size, a few hundred bytes — that you can paste straight into your HTML or save as a .svg file. Copy img tag wraps that SVG in a data URI inside an <img> element, so it goes into a CMS, an email template or a README with no separate file to host. All three are the same code; only the container differs.

Support varies. Text, URL, phone, SMS and email work essentially everywhere. Wi-Fi and vCard are handled natively by the built-in cameras on current iOS and Android. Calendar events and geo: locations are the least consistent — many phones handle them, some older ones show the raw text instead. Scan-test anything you intend to print, on more than one handset.

There is no tracking, no redirect and no analytics in the codes made here, which also means there is no way to change where one points after you have printed it — the destination is encoded in the squares themselves.

FAQ

Do these QR codes expire?

No. The link is encoded directly into the image, so there is no intermediate service that could shut down, start charging, or stop redirecting. The flip side is that the code cannot be edited after the fact — if the destination changes, you have to generate and distribute a new code.

Which error correction level should I choose?

Medium is right for most uses and is the default. Choose Quartile or High when the code will be printed on something that gets handled, folded or dirty, or when you intend to overlay a logo in the centre. Low only makes sense when you are squeezing a long URL into the smallest possible grid.

Why does my QR code look different after a tiny edit?

Because the encoder re-picks both the version and the mask pattern every time. A single extra character can push the data into a larger version, and the eight mask patterns are scored fresh each run, so the winner often changes. Both codes decode to exactly what you typed.

How do I put the QR code on a web page?

Copy img tag puts a complete <img> element on your clipboard with the code embedded as an SVG data URI, so you paste it into the page and it works with no file to upload. If you would rather have the markup inline, Copy SVG gives you the raw <svg> element instead, which you can style or resize with CSS like any other vector.

Can I put a logo in the middle of the code?

Yes, within reason. Generate at High error correction, keep the logo under about 20% of the code's area, centre it, and always test-scan the result with more than one phone before printing anything. The redundancy that lets this work is the same redundancy that protects against damage, so you are spending it.

How does a Wi-Fi QR code work?

It encodes the string WIFI:T:WPA;S:NetworkName;P:password;;, which iOS and Android cameras recognise and turn into a prompt to join. The password travels in plain text inside the code, so anyone who photographs it has your network key — which is exactly why these are useful printed on a guest-network card and a bad idea stuck to the front of the router.

My password has a semicolon in it. Will the code still work?

Yes. Semicolons, commas, colons and backslashes are structural characters in the Wi-Fi and vCard formats, so they are escaped with a backslash before encoding. Type the password exactly as it is and do not escape it yourself, or the extra backslashes end up in the network key.

See also: all Images tools, Audio, Video & Screen, PDF, SVG, Simulations & Screensavers, Generative Art, Chart Makers, 3D Model Viewers, Drawing Pads, Mockups & 3D Making, Diagram Makers, 3D Science, Tracker Music.

Related tools