How to print a scannable QR code
A GS1 Digital Link QR code only helps if scanners can read it on the finished package. This page covers the practical rules: how large to print, why the white border matters, contrast, layout, and how to proof-scan before a full print run.
Minimum print size (plain language)
QR codes are built from a grid of small squares called modules. Longer URLs need more modules, so the same physical X-dimension (module width) produces a larger overall symbol. GS1 guidance for retail-scannable codes uses roughly:
- Minimum X-dimension: about 0.396 mm per module
- Target / recommended X-dimension: about 0.495 mm per module
OriginQR shows sizes next to every download using your actual module count N (the data grid, not including the white border):
- Minimum print size = ceil((N + 8) × 0.396) mm square
- Recommended print size = ceil((N + 8) × 0.495) mm square
The “+ 8” accounts for the required white quiet zone — four modules on every side. Example: a short GTIN-only link might need about 15×15 mm minimum; a longer GTIN + lot URL needs a bit more. Prefer the recommended size when package space allows — larger codes scan more reliably under poor lighting, angled phones, and worn checkout scanners.
Always download SVG (vector) or the high-resolution PNG OriginQR provides. Do not screenshot a small on-screen preview and stretch it — that introduces blur and failed scans.
Quiet zone (the white border)
Every QR code needs a clear white margin around the black modules — at least four modules wide on all four sides. That empty border is called the quiet zone. Scanners use it to find the edges of the code.
OriginQR bakes a four-module quiet zone into every PNG and SVG export. Do not crop it away in your design file. Do not place logos, text, package graphics, or a colored box tight against the code. If your artwork needs a colored panel behind the code, make the panel large enough that a full white quiet zone still sits between the code and the panel edge.
Contrast: dark on light only
Print dark modules (black or near-black) on a light background (white or very light). Do not invert the code (light modules on a dark background) for retail packaging — many scanners and phone cameras fail or slow down on inverted symbols. Avoid low-contrast pairs such as gray on beige, green on green, or metallic inks that shift under store lighting. OriginQR exports pure black (#000000) modules on pure white (#FFFFFF); keep that contrast when placing the file in artwork.
Placement: seams, curves, and finish
- Avoid seams and folds. Do not straddle a package seal, score line, or glue joint — distortion breaks modules.
- Avoid tight curves. On bottles and pouches, place the code on a flatter panel. As a rule of thumb, avoid wrapping the code around a radius under about 10 mm; curved modules skew under the scanner.
- Prefer matte over glossy when you can choose. Glossy varnish and foil can create glare that phones and fixed scanners misread. If the rest of the pack is glossy, a local matte varnish over the code area helps.
- Keep it unobstructed. Do not cover the code with hang tags, shrink bands, or promotional stickers after print.
Always test-scan a printed proof
Screen scans are not enough. Before approving a print run:
- Place the code in artwork at the final physical size (use the readout).
- Print a hard proof on the real substrate if possible (label stock, film, carton).
- Scan the proof with a phone camera and with a dedicated scanner app — not only the device that generated the code.
- Confirm the destination: product page, lot data, or recall notice as expected.
If the proof fails, increase size toward the recommended dimension, restore quiet zone, or fix contrast before ordering thousands of labels.
Sunrise 2027 and checkout scanning
Sunrise 2027 is the retail industry’s push for point-of-sale scanners to read 2D barcodes (including GS1 Digital Link QR codes) by the end of 2027. Phone cameras already read these codes today; checkout readiness still varies by retailer. During the transition, many brands use dual marking — keep the existing UPC and add the 2D code — so the package works everywhere while 2D capability rolls out. Print quality still matters for both consumer and POS use: a blurry or undersized code fails both.
For more on the industry timeline, see Sunrise 2027 explained. For the broader Digital Link concept, see What is a GS1 Digital Link?.
Quick checklist
- Download SVG or high-res PNG from OriginQR (not a screen grab).
- Print at least the minimum size shown next to the code; prefer recommended.
- Keep the white quiet zone — do not crop or recolor it.
- Dark modules on a light background only.
- Flat placement; avoid seams and tight curves.
- Matte finish over the code when possible.
- Proof-scan on paper/film with phone + scanner app before the full run.
Part of the OriginQR learning hub: What is a GS1 Digital Link? · Sunrise 2027 explained · Getting started · Glossary · FAQ