Skip to main content
Calcimator

QR Data Capacity

Approximate max data bytes for QR version 1–10 by error correction level (byte mode, ISO 18004 table).

About this calculator

A QR code's symbol size and its error correction level together determine how much raw data it can actually hold in byte mode. Version controls the physical grid size -- each version from 1 to 10 adds 4 more modules (the individual black/white squares) per side, starting at 21x21 for version 1 and growing to 57x57 by version 10 -- so higher versions simply have more physical space to encode data into. Error correction level controls how much of that space is spent on redundancy rather than payload: level L reserves the least redundancy (roughly 7% of codewords) and therefore leaves the most room for actual data, while level H reserves the most redundancy (roughly 30%) so the symbol can still be read correctly even if up to about 30% of it is damaged, obscured, or poorly printed, at the cost of substantially less usable data capacity per version.

This calculator reports the maximum byte-mode data capacity for a given version/EC-level combination straight from the published ISO/IEC 18004 capacity table, along with the total module count (the side length, 17 + 4 x version, squared) so you can gauge how visually dense the resulting QR code will be. Choosing the right combination is a real tradeoff: a smaller version with high error correction may print smaller but hold less data, while a larger version with low error correction holds more data but is more vulnerable to scan failures if the print quality or lighting is poor.

Inputs

Results

Max data bytes

78

Modules²1,089
Version used4
EC index0

Figures current as of 2024. Source: ISO/IEC 18004:2024, "Information technology — Automatic identification and data capture techniques — QR code bar code symbology specification," Table 7

How to Use This Calculator
  1. Select a QR code version (1-10). Higher versions create larger symbols that hold more data.
  2. Choose an error correction level (L, M, Q, or H). Higher correction recovers more damage but reduces data capacity.
  3. View the maximum data bytes available in byte mode and the total module count.
  4. Use this to determine if your data fits in a given QR version before generating codes.

Recommended for this calculation

We may earn a commission if you sign up through these links.

Anker

Never run out of battery mid-project again

Anker PowerCore 10000 Portable Charger

See on Amazon
TP-Link

Fast, reliable WiFi 6 for every device in the house

TP-Link Archer AX21 AX1800 WiFi 6 Router

See on Amazon
Raspberry Pi

A full computer small enough for any project

Raspberry Pi 5, 8GB RAM

See on Amazon

Anker: As an Amazon Associate I earn from qualifying purchases.

TP-Link: As an Amazon Associate I earn from qualifying purchases.

Raspberry Pi: As an Amazon Associate I earn from qualifying purchases.

How the result changes with QR version

QR versionMax data bytes
1.917
4.1578
6.85134
9.1230

What each input means

QR version
1 smallest, 10 larger symbol.
Error correction
Higher EC reduces data capacity.

How this is calculated

Worked example, using the default values

  1. Identify Input Parameters
    QR version = 4, Error correction = 0 = 2 input(s) provided
  2. Calculate Max data bytes
    78 = 78
  3. Calculate Modules²
    Modules² = modules * modules
    1089 = 1089
  4. Calculate Version used
    Version used = v
    4 = 4

Figures and sources

Engine last updated . Checked against 2 independently-derived tests how we verify calculators.

Frequently Asked Questions

Why does raising the error correction level reduce the max data bytes for the same version?

Error correction works by encoding extra redundant codewords alongside your actual data, and those redundant codewords take up space within the same fixed symbol size. A higher EC level (like H, roughly 30% redundancy) reserves more of that fixed space for error-recovery information, leaving less room for the payload than a lower EC level (like L, roughly 7% redundancy) at the identical QR version.

How much more data does version 10 hold compared to version 1?

At the same error correction level, version 10 holds many times more data than version 1, since each higher version adds both more modules per side and, correspondingly, far more total encodable area (module count scales roughly with the square of version, not linearly) -- a 57x57 version-10 symbol has a much larger grid than a 21x21 version-1 symbol.

What's the tradeoff between choosing a higher QR version versus a higher error correction level?

A higher version increases raw capacity by growing the physical symbol, while a higher error correction level spends part of that same capacity on damage resilience rather than payload. For data that must survive scratches, low print quality, or partial obstruction (like a logo overlay), a higher EC level is worth the reduced capacity; for clean, controlled printing conditions, a lower EC level lets you fit more data into a smaller symbol.

Does the module count grow at the same rate as the data capacity as version increases?

Not exactly -- module count grows smoothly and predictably (17 + 4 x version, then squared for the total grid), while data capacity growth reflects the QR specification's codeword allocation tables, which include overhead for format information and finder patterns that doesn't scale in perfect proportion to version.

The questions that sit next to this one — chosen by subject, including calculators filed under a different category.

More in Technology & Computing.