HSHimanshu Sharma
Free Tools

QR codes explained: error correction, size and the QR Code Generator

Advertisement

A QR code is the square of black and white dots that you scan with a phone to open a menu, join a Wi-Fi network or pay a shop. They are everywhere, and yet many people generate them on websites that want an account, add a hidden redirect, track every scan, or switch the code off unless you subscribe. A plain QR code does not need any of that. The free QR Code Generator draws the code in your browser and lets you download it as a PNG, with nothing uploaded and nothing to expire. This guide explains how a QR code works, how to choose the settings and how to print one that scans reliably.

What a QR code actually contains

A QR (Quick Response) code is a two-dimensional barcode. It was invented in 1994 by Denso Wave to track car parts in factories, because a normal barcode could hold only a short number while a QR code holds text. Phone cameras can read it without an app because the pattern includes three large squares in the corners that tell the camera where the code is, its rotation and its size.

The code stores text, nothing more. Most of the time that text is a web address, but it can be any string. The phone decides what to do by looking at the beginning of the text:

Text in the code What a phone usually does
https://mrhimanshu.com Offers to open the link
tel:+911234567890 Offers to call the number
mailto:hello@example.com Opens a new email
WIFI:T:WPA;S:HomeNet;P:secret123;; Offers to join the Wi-Fi network
Plain words Shows the text

The generator accepts any text, so you can create all of these by typing the right starting characters.

Static and dynamic codes

This matters more than most people realise. A static code holds your data directly in its pattern. It works for ever, because there is nothing to switch off, and it needs no server. The code made by this tool is static.

A dynamic code holds a short address on the generator's own server, which then redirects to your real link. That lets the company count scans and let you change the destination later, but it also means that if you stop paying, the redirect stops and every printed copy goes dead. It also means a third party sees who scans your code. If you print thousands of leaflets or a product label, think carefully before depending on a redirect you do not control.

If you do need to change the destination of a printed code later, put a link you control inside a static code, for example https://yourdomain.com/menu, and change where that page points.

Error correction explained

The part of the tool that people skip is the error-correction setting, and it has a real effect. A QR code stores extra data that lets a scanner reconstruct the message even if part of the code is dirty, scratched, folded or covered by a logo. There are four levels:

Level Name Data that can be recovered
L Low about 7%
M Medium about 15%
Q Quartile about 25%
H High about 30%

A higher level gives more protection but needs more of the pattern to hold the same message, so the code gets denser, with smaller squares. A denser code is harder to scan at small sizes or from a distance.

Choose by where the code will live:

  • On a screen or clean paper, short text: Medium is a good default.
  • On packaging, stickers or anywhere it may get scuffed: Quartile or High.
  • Long text that must stay readable at a small size: Low, and keep the text short.
  • With a logo in the middle: High, and make the logo small. The logo hides part of the pattern, so it uses up the error budget.

How much can a code hold

The capacity depends on the level. The largest QR code can store a few thousand characters, with the exact amount shrinking as the error correction goes up. The tool tells you when your text is too long for the chosen level and asks you to shorten it or lower the level.

But a code that can hold 2,000 characters is rarely a code that scans well. Every extra character adds more squares. For web links, shorter is better: use a short address on your own domain rather than a long one with tracking parameters. A 25-character link makes a simple code that any camera reads in an instant; a 300-character link makes a dense maze that needs good light and a steady hand.

Using the generator

  1. Open the QR Code Generator.
  2. Type or paste the text or link. The code redraws as you type.
  3. Set the size with the slider (128 to 512 pixels) and choose the error-correction level.
  4. Press Download PNG to save the image.

The PNG has dark squares on a white background with a margin around it. Keep that margin. It is called the quiet zone, and scanners need it to find the edges of the code.

Size and printing

A PNG is made of pixels, so if you stretch a small one onto a large poster it will look blurred, and blurry edges scan badly. Download the largest size you can, 512 pixels, for anything you will print bigger than a stamp. As a rule of thumb, a code should be at least 2 centimetres wide on paper, and each doubling of the scanning distance needs roughly a doubling of the size. A code on a shop window that people scan from a metre away should be around 10 centimetres wide; a code on a billboard needs to be far larger.

Practical rules for good results:

  • Keep strong contrast. Dark code on a light background is best. Light code on a dark background is read by many phones, but not all, so test it.
  • Leave the quiet zone blank. Do not crowd the code with text or borders.
  • Do not stretch it. Keep the code square.
  • Avoid shiny or curved surfaces where reflections break up the pattern.
  • Test before you print. Scan the final design with two or three different phones, in the real lighting, at the real distance.
  • Print on a flat, matte surface and keep the code away from folds.

Privacy and safety

A QR code is a link you cannot read with your eyes, which makes it a favourite of scammers who stick a fake code over a real one on a parking meter or a restaurant table. When you scan a code, look at the address your phone shows before you open it. When you place a code in public, protect it from being covered, and check it now and then.

On the creating side, think about what you put in the code. A Wi-Fi code contains the password in plain text, so anyone with the printed code has the password. And because this tool runs in your browser, the text you type is not sent to a server, which matters if the code holds a private link.

Ideas for what to do with it

  • A code on a business card that opens your portfolio page.
  • A table card that opens the menu page.
  • A sticker on equipment that opens its instruction page or support form.
  • A Wi-Fi code for guests, printed and framed.
  • A poster for an event that opens the registration form.
  • A resume code that opens your online profile page.

For any of these, create the destination page first, make sure it works well on a phone (see the responsive design lesson and the HTML lesson on responsive images), and only then print the code.

Related tools

Long addresses with spaces or special characters should be encoded before they go in the code; the URL Encoder & Decoder does it. If you want a unique identifier in a link, the UUID Generator creates one. When you need to choose colours for a code's surrounding design, pull them from a photo with the Image Color Picker.

Quick answers

Does a QR code expire? A static code never expires. It simply contains your text, so it works as long as the link inside it works.

Can I put a logo in the middle? Yes, with High error correction and a small logo, and always test the result.

Why will my code not scan? The usual causes are low contrast, no quiet zone, too small a print, too much text, or a reflective surface.

Is it free for business use? Yes. The code is yours, with no watermark, no account and no limit on scans.

What image format should I use? PNG works for screens and print at a large enough size. Keep the original file safe in case you need to reprint.

Advertisement