Below the code preview the editor shows a caption such asV3 · Mask 2 · 29×29 modules · ECC QUARTILE. It surfaces four
related properties of the generated QR code.
Version (V1–V40)
The QR standard defines 40 versions with fixed module counts —
V1 is 21×21, V2 25×25, V3 29×29, … V40 is 177×177. The version
that actually gets used falls out of payload length plus ECC.
By default the encoder picks the smallest fitting version — the
densest module layout, optimal for most applications.
Forcing a minimum version
Sometimes you want a deliberately larger version than the smallest
fit. Two classic pro use-cases:
- Consistent sizing across multiple codes — a print campaign with
ten QR codes side by side looks unprofessional if every code has a
different module count (payload lengths usually differ by a few
characters). Pick the same minimum version for all of them and they
draw identically. - Longer scan distance — rule of thumb: scan distance ≈ 10× the
code's edge length. To scan from 2 m you need ≥ 20 cm of edge.
At a fixed print size, module count is inversely proportional to
module size — more modules = smaller modules = harder to scan from
far away. Pick the minimum version conservatively; the encoder will
bump higher automatically if the payload doesn't fit.
The editor exposes a Minimum version field under the ECC selector.
Default is auto (smallest that fits). Values 1–40 are honoured as
long as payload + ECC fit; otherwise the encoder rolls forward to a
higher version on its own.
Mask (0–7)
Every QR code is XOR-ed with one of eight mask patterns so the
module distribution looks random enough for scanner algorithms to lock
onto it reliably. The encoder picks the mask automatically by a
penalty score (which pattern yields the best readability). The
caption surfaces the chosen mask as a number 0–7.
Module count
Modules are the square cells inside the QR code. We show the data
matrix only; the four-module quiet zone (scanner-relevant safe area)
is added around it on export.
Error correction (ECC)
Error correction reserves a fraction of the module bits for recovery
data. Higher levels tolerate more physical damage at the cost of
data capacity.
| Level | Recoverable | Use it for |
|---|---|---|
| LOW | ~7 % | Clean paper print, on-screen display |
| MEDIUM | ~15 % | Default for web codes |
| QUARTILE | ~25 % | Print with a small logo, light smudges |
| HIGH | ~30 % | Big logo, rough surfaces, outdoor |
When the payload exceeds the capacity of an ECC level, the editor
disables that option in the dropdown — either shorten the payload or
pick a lower ECC.
When is higher ECC worth it?
- Logos inside the code (pro feature, on the roadmap): higher
ECC tolerates over-painting a logo area without breaking the scan. - Printing on rough surfaces (wood, fabric, cardboard): more
margin against ink bleed and fibre defects. - Outdoor stickers: sun and rain destroy a LOW code faster than
a HIGH code.
When is LOW enough?
- Pure screen display.
- Print on glossy paper under good lighting.
- Very long payloads where MEDIUM/QUARTILE/HIGH would exceed the
encoder's capacity.