tooly

QR code generator

Make a QR code for a URL, plain text, Wi-Fi network or vCard contact. Pick the size and colours, then download a crisp PNG or a scalable SVG. Nothing is uploaded.

Everything runs in your browser — nothing is sent anywhere

How to use

  1. 1

    Choose the type: link, text, Wi-Fi or contact, and fill in the fields.

  2. 2

    Adjust size, colours and error correction if needed — the preview updates live.

  3. 3

    Download the code as PNG or SVG.

What each code type contains

A QR code is just text arranged as a grid of squares. The four types in this generator differ only in how that text is formatted, and the format decides what a phone offers to do after scanning.

  • URL stores the address as typed. Phones recognise the https:// prefix and offer to open the page. Always include the prefix; without it, some scanners treat the content as plain text.
  • Text stores anything you type, up to the capacity limit. Scanners show it on screen, which suits serial numbers, short instructions or a message on a gift tag.
  • Wi-Fi builds a string in the widely supported WIFI: format with the network name, password, security type and an optional hidden-network flag. Special characters such as semicolons, commas, colons and quotes in your password are escaped automatically, which is a frequent cause of Wi-Fi codes that scan but fail to connect when made by hand.
  • Contact (vCard) builds a vCard 3.0 record with first and last name, mobile phone, email, organisation and website. Phones offer to save it as a new contact. Only filled fields are included, so a minimal card with a name and phone number gives the simplest, easiest-to-scan code.

Error correction and capacity

QR codes use Reed-Solomon error correction, the same family of codes used on CDs. You choose how much of the symbol is spent on redundancy:

  • L recovers about 7% damage and fits the most data.
  • M recovers about 15%; it is the default here and right for most printed and on-screen uses.
  • Q recovers about 25%, a good choice for codes on packaging or outdoor signs that will get scuffed.
  • H recovers about 30%, useful when part of the code will be covered by a sticker or logo after printing.

More redundancy means more modules, so the same content produces a denser pattern. The largest standard QR code is 177 by 177 modules and holds up to 2,953 bytes at level L, but only about 1,270 bytes at level H. If the preview shows a too-long warning, shorten the content or lower the level. In practice, aim much lower than the maximum: a URL under 100 characters gives a sparse code that phones read instantly from across a room.

Size, colours and printing

The size setting controls the pixel width of the image: 256, 512, 1024 or 2048 pixels. For screens and slides, 512 is plenty. For print, either export SVG, which stays sharp at any size, or use 2048 px PNG, which gives a 17 cm wide code at 300 dpi.

How big to print depends on scanning distance. A common rule is that the code's width should be at least a tenth of the distance it is scanned from:

  • Business card or product label, scanned at 20 to 30 cm: 2 to 3 cm wide.
  • Poster on a wall, scanned at 2 m: at least 20 cm.
  • Window or banner seen from across the street: much larger, and keep the content short.

The generated image includes a two-module white border. The QR standard recommends four, so when placing the code on a busy or coloured background, leave extra blank space around it.

For colours, keep the dark colour clearly darker than the background. Navy on white or black on light yellow works; light grey on white, or pale code on a dark background, often fails because many scanners expect dark modules on a light field.

A code you cannot edit later

Everything you enter is encoded directly into the pattern, so the code never expires and keeps working without this site. The flip side is that it cannot be changed after printing. If you are putting a URL on a thousand flyers, point it at an address you control, such as your own domain with a short path, so you can redirect it later if the destination page moves.

Before sending anything to print, test the downloaded file with at least two different phones, ideally one older model, and from the real distance. You can also check what a code contains with the QR code reader, which decodes an image file without a camera.

Privacy of Wi-Fi and contact codes

The code is generated by JavaScript in your browser, so passwords and contact details are not sent anywhere. Keep in mind that anyone who can photograph the printed code can read its contents, including the Wi-Fi password in plain text. For a guest network, consider creating a separate one with its own password rather than sharing your main network, and generate a fresh strong password with the password generator if you change it.

FAQ

Do the QR codes expire?

No. The data is encoded directly in the image, so the code works forever and does not depend on this site.

What is error correction?

Higher levels (Q, H) let the code survive damage or a logo on top, at the cost of a denser pattern. M is a good default.

Can I generate a Wi-Fi QR code?

Yes. Enter the network name and password; phones that scan it join the network automatically.

PNG or SVG?

PNG is fine for screens and documents. SVG scales to any size without blur, ideal for print and design tools.

Is my data sent to a server?

No. The code is generated in your browser with JavaScript. Wi-Fi passwords and contacts never leave your device.

Related tools