Technical Questions
How Much Data Can a QR Code Hold?
Understand QR capacity in digits, alphanumeric characters and bytes, and why a short URL often works better than filling a code with text.

Quick answer
For standard Model 2 QR codes, the maximum at Version 40 with error correction level L is 7,089 numeric digits, 4,296 alphanumeric characters or 2,953 bytes in byte mode. These are different mode-specific ceilings, not a promise that any 2,953-character message will fit or scan well in a small print.
In this article
Why are there several different maximums?
A QR encoder can represent supported character sets using different modes. Numeric mode handles digits efficiently. Alphanumeric mode supports a defined set of uppercase letters, digits and selected symbols; it does not mean arbitrary mixed-case prose. Byte mode represents bytes, so a character may take more than one byte depending on its encoding.
| Mode | Maximum | What to remember |
|---|---|---|
| Numeric | 7,089 digits | Digits only |
| Alphanumeric | 4,296 characters | A restricted character set |
| Byte | 2,953 bytes | Bytes are not always characters |
These figures describe the format's largest standard square version at its lowest error correction level. They are not the recommended size of a menu URL or a guarantee that a particular generator accepts the full maximum. Consult DENSO WAVE's specification overview for the format limits.
What happens as you add more content?
The encoder may need a larger matrix with more small squares, called modules. At a fixed physical width, more modules means each one becomes smaller. That can make the finished print less forgiving of blur, poor lighting, glare or an older camera. Exporting a high-resolution image cannot compensate for a symbol printed too small for its density and scanning conditions.
According to DENSO WAVE's version guide, standard versions run from a 21-by-21 matrix to 177 by 177. The required version depends on content, mode and error correction. Higher error correction also uses capacity, so changing it can change which version your payload needs.
Should you store the content or link to it?
Use a short text code for a brief instruction that should be readable without loading a website. Use a URL when you need a long article, large document, image gallery or information that changes. The document remains on its host; the pattern contains the address needed to reach it.
For example, encode a stable manual URL instead of trying to place the entire manual into a text code. Keep useful tracking parameters when they serve a defined reporting purpose, but remove accidental duplicate parameters and unnecessary text. Do not shorten through an unfamiliar third-party domain merely to make the pattern look simpler.
How do you test a realistic payload?
- Choose the smallest amount of data that completes the reader's task.
- Generate using the final text or URL rather than a shorter placeholder.
- Preserve a clear border and avoid stretching the exported image.
- Print a sample at the intended dimensions and material.
- Try several phones at the expected distance and open the resulting content.
Test QRNest with your actual payload before building a production workflow around it. If the tool reports an input problem, reduce the content or use a hosted page. A theoretically valid maximum is less useful than a code your audience can read comfortably in its final setting.
Put this guide into practice
Generate a static QR code for your own verified text or URL, then test the downloaded result.
Create a URL QR code ↗Official sources and further reading
This guide describes the current QRNest tools. Destination services and other apps may behave differently. Report an error or suggest an update.