Lelifi·tools

QR Code Generator

A QR code holds up to 2,956 bytes at the lowest error correction (L) and 1,276 bytes at the highest (H). This generator encodes your text directly, so the code never expires. Print it at least 2 cm (0.8 in) square with a quiet zone of 4 modules.

Wi-Fi format: WIFI:T:WPA;S:NetworkName;P:Password;;

Type a link, a chunk of text or a Wi-Fi login and get a QR code you can download as a PNG.

By the Lelifi editors ·

Key takeaways

On this page
  1. Error correction levels L, M, Q and H: how to choose
  2. What the QR 'version' number means
  3. How much data fits, and what to do when it doesn't
  4. Quiet zone and minimum print size: the two rules people skip
  5. Wi-Fi QR codes: the WIFI: format explained
  6. Why these codes never expire (static vs dynamic QR codes)
  7. Dark mode, inverted colors and scan reliability

Error correction levels L, M, Q and H: how to choose

Every QR code carries redundant data so it can still be read when part of it is damaged, dirty or covered. The standard, ISO/IEC 18004, defines four levels, and the level you choose trades capacity for resilience. Denso Wave, the Japanese company that invented the QR code in 1994, publishes a plain-language guide to how error correction works.

LevelRecovers up toBest for
L (Low)~7%Clean digital screens, large print, when you need maximum data
M (Medium)~15%The sensible default for most printed codes
Q (Quartile)~25%Industrial use, small print, codes that may get scuffed
H (High)~30%Stickers, curved surfaces, logos overlaid in the centre

Higher error correction makes the pattern denser for the same amount of data, because more of the grid is spent on redundancy. A URL that fits neatly at level L may need a larger, busier code at level H. The practical rule most printers follow: use M for a normal label, step up to Q or H when the code will be handled, abraded or partially covered, and drop to L only when the code is large and displayed on a clean digital screen.

What the QR 'version' number means

The tool reports a version number for every code it builds, and that number is the size of the grid. Version 1 is the smallest, at 21 by 21 modules; each version up adds four modules to each side, so version 2 is 25 by 25, version 10 is 57 by 57, and the largest defined version, 40, is 177 by 177. Denso Wave's technical overview covers the same structure.

Bigger versions hold more data, and the encoder picks the smallest version that fits your content at the error correction level you asked for. A short URL like https://lelifi.com/ encodes in a low version; a paragraph of text pushes into the teens or twenties. The full range runs from version 1 to version 40.

You do not normally need to care about the version, but it is worth knowing two things. First, a higher version means a denser grid, and a denser grid needs a bigger print size to stay scannable at a given distance. Second, if you paste something long, the encoder climbs through the versions looking for a fit; if even version 40 at level L cannot hold it, the content is too large for one symbol and has to be shortened or split.

How much data fits, and what to do when it doesn't

Capacity depends on both the version and the error correction level. Here are the practical maxima for a few representative versions at each level:

Version (grid)LMQH
1 (21×21)19 bytes16139
5 (37×37)108866246
10 (57×57)274216154122
20 (97×97)861669485385
40 (177×177)2,9562,3341,6661,276

In practice a URL is 20 to 100 characters, so almost anything you would realistically encode fits with room to spare. If you paste something too long for the selected level, this generator automatically steps the error correction down, from H to Q to M to L, until the content fits, and tells you which level it used. If even level L at version 40 is not enough, the tool says so and you need to shorten the content or split it across two codes.

Quiet zone and minimum print size: the two rules people skip

Two placement details decide whether a printed QR code scans reliably, and both are easy to get wrong.

The quiet zone. Every QR code needs a margin of blank space around it, the standard calls for four modules of clear space on all four sides. A module is one square of the grid, so for a 25-module code the quiet zone is four squares wide. Put a code too close to the edge of a business card, or wrap a border right up against it, and many scanners will refuse to lock on. Leave the margin empty; do not fill it with a caption or a frame.

The minimum size. As a working rule, keep the printed code at least 2 centimeters (about 0.8 inches) square for something a phone scans from up close, and scale up from there. A widely used formula is that the print size in centimeters should be at least the scanning distance in meters divided by ten, so a code read from 3 meters needs to be about 30 cm across. When in doubt, print bigger and test with two different phones before you commit to a large print run.

Wi-Fi QR codes: the WIFI: format explained

You can put a network's details into a QR code so guests join without typing a password. The format is a small text string that phones recognize:

WIFI:T:WPA;S:NetworkName;P:Password;;

Scan the finished code and both iPhone and Android offer to join the network automatically. One caution worth stating plainly: anyone who scans the code can read the password in it. Print a Wi-Fi code only for a network you are happy to share, a guest network is ideal, your main home network is not. If a field contains a semicolon, backslash or comma, it has to be escaped with a backslash.

Why these codes never expire (static vs dynamic QR codes)

There are two kinds of QR code in the world, and only one of them can be deactivated.

A static QR code, which is what this generator produces, has your content encoded directly into the pattern. The image is entirely self-contained: there is no server, no short link and no account between the code and the destination. It works offline, it works if the company that made it goes out of business, and it works forever as long as the thing it points to still exists. Nothing about the code can be revoked.

A dynamic QR code instead encodes a short redirect URL, and the real destination lives on the provider's server. That lets you change where the code points after it is printed and count scans, genuinely useful for campaigns. But it also means the code stops working the moment you stop paying, the provider shuts down, or the redirect is disabled. Many free generators use dynamic codes so they can start charging you after a trial.

For a menu, a Wi-Fi card, a product label or anything printed in bulk, a static code is the safer choice. Use dynamic codes only when you need to retarget a printed code later.

Dark mode, inverted colors and scan reliability

QR scanners are built to expect dark modules on a light background, and the standard assumes that polarity. Most modern phone cameras also read the inverse, light modules on a dark background, but support is not universal, and older scanner apps and some embedded readers fail on inverted codes.

If you want a dark-mode QR code, treat it as a risk to test, not a default. Keep strong contrast between the two colors: dark navy on white scans well, mid-gray on light-gray does not, and low-contrast pastel combinations fail outright. The same contrast thinking that applies to text on a screen applies here, a scanner needs the two colors to be clearly different in luminance, not just in hue.

Two other reliability traps: a logo placed in the center of the code eats into the data area, so if you overlay one, use a high error correction level (H recovers up to about 30 percent) to leave headroom, and never cover the three large square finder patterns in the corners. And avoid glossy laminates that throw glare under the camera flash, matte printing reads more consistently.

Frequently asked questions

Do these QR codes ever expire?

No. This generator encodes your text directly into the QR pattern, so the code is completely self-contained and has no link to a third-party redirect service. It will keep working for as long as the destination it points to exists. That is the opposite of many free generators, which create a short redirect URL and then charge you or expire the code after a trial.

What does the error correction level do?

Error correction adds redundant data so the code still scans when part of it is damaged, dirty or covered. Level L recovers about 7% of the code, M about 15%, Q about 25% and H about 30%. Higher levels make the pattern denser, so use L or M for a clean printed label and Q or H if you plan to put the code on a curved surface, a sticker or a product where it may get scuffed.

How much text can a QR code hold?

It depends on the version and the error correction level. This generator supports versions 1 through 40, the full QR range. At level L a version 40 code holds up to 2,956 bytes, and at level H up to 1,276 bytes; smaller versions hold less. In practice a URL is 20 to 100 characters, so you have plenty of room. If you paste something too long, the tool steps the error correction level down automatically and tells you which level it used.

What is the smallest size I can print?

Keep the code at least 2 centimeters (about 0.8 inches) square for a phone held close, and larger for anything scanned from a distance. A practical rule is that the print size in centimeters should be at least the scanning distance in meters divided by ten. Always keep a quiet zone of blank space around the code, about four modules wide, or scanners may fail to lock on.

Can I make a Wi-Fi QR code so guests can join without typing the password?

Yes. Use the format WIFI:T:WPA;S:YourNetworkName;P:YourPassword;; where T is the security type (WPA, WEP or nopass), S is the network name and P is the password. Scanning the code joins the network automatically on both iPhone and Android. Note that anyone who scans it can read the password, so only print it for networks you are happy to share.

Will the QR code work with dark mode or inverted colors?

For the most reliable scanning, keep the code dark on a light background. Most scanners can also read light-on-dark, but not all, and some older apps fail on inverted codes. If you invert the colors, make sure there is still strong contrast and test it with at least two different phones before you print thousands of copies.

What is the maximum amount of data a QR code can hold?

The largest standard QR code, version 40 (177 by 177 modules), holds up to 2,956 bytes at error correction level L, 2,334 at M, 1,666 at Q and 1,276 at H. In character terms, 2,956 bytes is about 2,900 English characters. Beyond that you need two codes or a smaller payload.

What is the quiet zone and how wide should it be?

The quiet zone is the blank margin around a QR code that lets a scanner find its edges. The ISO/IEC 18004 standard calls for four modules of clear space on all four sides. A module is one square of the grid, so a 25-module code needs a margin four squares wide. Printing or framing right up to the code is a common reason codes fail to scan.

How small can I print a QR code?

Keep it at least 2 centimeters (about 0.8 inches) square for a phone scanning from up close, and bigger for anything read from a distance. A useful rule is that the print width in centimeters should be at least the scanning distance in meters divided by ten - so a code read from 5 meters needs to be about 50 cm across.

How do I make a QR code for a phone number or an email?

Use the standard URI formats: 'tel:+15551234567' for a phone number that dials when scanned, 'mailto:[email protected]' for an email, or 'mailto:[email protected]?subject=Hi' to pre-fill a subject. These are plain text, so just paste them into the input box and generate.

Do QR codes need a license or cost money to use?

No. Denso Wave, which invented the QR code in 1994, chose not to exercise its patent rights, so the format is free to use. ISO/IEC 18004 defines the standard, and anyone can generate codes without paying a royalty. You only pay if you choose a service that hosts dynamic codes for you.

Why did my QR code get denser when I raised the error correction?

Because higher error correction spends more of the grid on redundant data. To hold the same content, the encoder has to use a larger version - more modules - so the pattern looks busier. If a code becomes too dense to print cleanly, lower the error correction level or shorten the content.

Will a QR code work in a dark theme or on a black background?

Usually, but not always. Scanners expect dark modules on a light background, and some older apps only read that polarity. If you invert to light-on-dark, keep strong contrast between the two colors and test with at least two different phones before printing in bulk. Dark-on-light is always the safer choice.

Spotted a wrong number or a broken result?

More Developer tools

See all Developer tools

Fee schedules, rates and rules change without notice. Always confirm important figures with the official source before you rely on them.