QR Code Best Practices (2026): 9 Rules to Prevent Failures
Exact size, contrast, quiet zone, and error correction numbers from the DENSO Wave standard — plus a pre-print checklist. Prevent scan failures before print.

This article was written by the QR Nova team. We build QR code software, which may inform our perspective.
Most QR code design guides list the same five rules in the same order. What they skip: why codes fail in production even when they pass a desk test, what the actual technical limits are behind the design guidelines, and which rules you can safely bend and which are non-negotiable. A QR code that works on your laptop screen can fail in a printed brochure, on a venue wall, or in low light, the gap between creating a QR code and deploying it reliably is wider than most guides acknowledge.
TL;DR
- Minimum size: 2 × 2 cm for arm's-length scanning. Use the 10:1 rule for larger scanning distances.
- Always download SVG for print. JPEG causes scan failures. PNG only if SVG is unavailable.
- Error correction level H is mandatory when adding a logo or for outdoor/packaging use.
- The quiet zone (white border) cannot be cropped or overlapped, it's part of the scanner spec.
- Test on three devices: iPhone, recent Android, older Android. Test at the intended scanning distance.
QR code size best practices
Create your first QR code — free
Get startedThe minimum scannable size for a QR code is not a soft recommendation, it comes from the physics of mobile camera optics. At arm's length (25–30 cm), a standard smartphone camera resolves approximately 0.4 mm per pixel in the viewfinder. A QR code module (one of the small squares that make up the code) must be at least 2–3 pixels wide for the camera to detect the contrast boundary reliably. For a Version 1 QR code (the simplest, 21×21 modules), that means a minimum physical module size of about 0.8–1.2 mm, producing a minimum code size of roughly 1.7–2.5 cm.
In practice, Version 1 QR codes (encoding URLs under about 30 characters) start failing at sizes below 1.5 cm. Version 5 codes (encoding 100+ character URLs) need at least 2.5–3 cm at arm's length because the module density is higher. The 2 × 2 cm minimum that most guides cite is a safe floor for typical use cases, not the theoretical minimum.
The 10:1 scanning distance rule
The industry standard rule for sizing QR codes for longer viewing distances: scanning distance should be no more than 10 times the code width. This comes from the QR code standard's design parameters and was validated in research by Denso Wave, the inventors of the QR code.
- Business card (scanning from 20–25 cm): minimum 2 × 2 cm
- A4 flyer on a table (scanning from 30–40 cm): minimum 3 × 3 cm
- Poster on a wall (scanning from 50–80 cm): minimum 5 × 8 cm
- Retail shelf signage (scanning from 100 cm): minimum 10 × 10 cm
- Outdoor billboard or vehicle wrap (scanning from 3–5 meters): minimum 30–50 cm
Our dedicated QR code print size guide covers sizing for every common format in detail. For outdoor billboards and vehicle wraps, QR codes are almost always impractical. A pedestrian walking past a bus advertisement has less than 3 seconds to notice, open their camera, and scan. The 10:1 rule would require a code 30–50 cm wide to be scannable from the curb. Use a URL or a simple vanity domain instead.
File format best practices
The file format decision affects every piece of print media the code will appear in. Our SVG vs PNG QR code comparison covers the full technical analysis. Getting this wrong produces a code that passes screen review and fails in the hands of the print shop.
Use SVG for everything print-related
SVG represents the QR code as mathematical shapes, no pixels, no resolution ceiling. Scale an SVG from 2 cm to 2 meters and the module edges remain perfectly sharp. The print shop's RIP (Raster Image Processor) renders the SVG at the printer's native resolution, typically 2400 DPI or higher. The result is sharper than any raster format at any size.
QR Nova generates SVG by default. If your design workflow requires a raster format:
- PNG is acceptable: lossless compression, no artifacts. Export from SVG at minimum 300 DPI at the intended print size. For a 2 × 2 cm code at 300 DPI, that's 236 × 236 pixels. More is always better, 600 DPI (472 × 472 px) gives you more room for scaling.
- Never use JPEG: JPEG compression is lossy and introduces artifacts at hard contrast boundaries (exactly where the module edges are). Even a JPEG saved at "quality 100" introduces subtle compression artifacts that blur module edges. QR code scanners depend on sharp contrast boundaries. JPEG degrades them.
- TIFF is equivalent to PNG for QR codes, lossless and acceptable, though less common in web-to-print workflows.
Color and contrast best practices
Our QR code color and contrast guide goes deeper into color selection. QR code scanners work by detecting the contrast boundary between dark modules (the "1" pixels) and the light background (the "0" pixels). The scanner doesn't care about aesthetics, it cares about luminance difference.
The contrast minimum
The ISO/IEC 18004 standard specifies a minimum print contrast signal (PCS) of 0.6, which roughly corresponds to a 40% luminance difference between the module color and the background. In practical terms:
- Works reliably: Black on white, dark navy (#1e3a5f) on white, dark green on light cream, dark red on white
- Works in most conditions: Dark gray on light gray (if the difference is at least 40%), dark brand colors on light tinted backgrounds
- Risky in poor lighting: Color-on-color (red modules on orange background), medium gray on light gray
- Fails: Dark modules on dark background, low-contrast pastel combinations, any combination under 40% luminance difference
Color inversion (light modules on dark background)
Inverted QR codes, white pattern on dark background, scan reliably on modern phones but fail on some older dedicated QR scanner apps and some point-of-sale scanner hardware. For consumer-facing codes scanned by smartphone, inversion is generally safe. For codes that will be scanned by POS hardware or dedicated scanners (ticketing, inventory, retail checkout), use dark-on-light only.
Gradient and texture backgrounds
Placing a QR code on a subtle gradient background works if the lightest part of the gradient still provides enough contrast. A dark navy-to-mid-blue gradient behind a white QR code pattern is typically fine. A gradient that transitions through the modules, left side light, right side dark, will cause partial scan failures. The scanner decodes part of the code but gets errors on the low-contrast region.
Error correction best practices
QR codes include built-in error recovery, damaged or obscured modules can be reconstructed by the scanner up to a limit. The four error correction levels:
- Level L (Low): 7% module recovery. Produces the smallest, densest code for a given data length. Use only when the code will be displayed in controlled digital environments (screens, LED displays) where physical damage and logo overlays are not concerns.
- Level M (Medium): 15% module recovery. The standard default for most generators. Good for most print use cases without logo overlays.
- Level Q (Quartile): 25% module recovery. Rarely used, level H (just above it) is more common.
- Level H (High): 30% module recovery. Required for logo overlays, outdoor installations, product packaging, and any code that may be physically worn or damaged.
The tradeoff: higher error correction adds more redundant data to the code, which increases module density for the same data length. A Version 5 URL QR code at level L has fewer modules than the same URL at level H. In practice, this density difference is not visible at normal scanning sizes, it only matters for codes near the absolute minimum size.
Quiet zone best practices (ISO/IEC 18004)
The quiet zone is the white (or background-colored) border surrounding the QR code, specified at 4 modules wide on all sides in ISO/IEC 18004. This is not aesthetic padding, it's functionally required. The scanner detects the QR code by finding the transition from background to the code border. Without adequate quiet zone, the scanner can't locate the code boundaries and fails to orient the pattern.
In practical terms: maintain at least 4 module widths of clear space on all sides between the code edge and any design elements. For a code with 0.5 mm modules, that's 2 mm of clear space on each side, very little, but critical.
Quiet zone failures in production:
- Bleeds and crop marks that extend into the quiet zone when the print shop crops
- Background patterns (textures, watermarks) that run through the quiet zone
- Text or decorative elements placed too close to the code edge
- Card designs where the QR code is in a corner and the card edge cuts into the quiet zone
Call to action best practices
A QR code without a CTA is an unexplained prompt. Research published by QR Code Chimp in their 2025 QR Code Industry Report found that QR codes with specific benefit-oriented CTAs had scan rates approximately 30% higher than codes with generic "Scan Me" labels, and 2× higher than codes with no label at all.
Effective CTA patterns:
- Specific outcome: "Scan to see tonight's menu" outperforms "Scan here"
- Benefit-first: "Scan for 15% off your first order" outperforms "Scan to learn more"
- Context-aware: "Scan to connect to WiFi", in a coffee shop, no explanation needed
- Short: One line maximum. Seven words or fewer. Text below the code, not inside the quiet zone.
What doesn't work: "Scan me!" (no reason to), "Scan for more information" (too vague), or any CTA that requires the user to understand what a QR code does before they benefit from scanning it. Assume zero QR code literacy.
Placement best practices
Where you place a QR code determines whether users can physically scan it. Design-first placement decisions, "it looks good in the corner", routinely produce codes that fail in actual use.
Eye-level is mandatory for signage
A QR code placed at the bottom of a poster, below knee level, will have 80%+ fewer scans than the same code at eye level. Users scan while standing and holding their phone naturally, the code must be at chest-to-eye level (100–160 cm from the floor for adults). Codes at the bottom of menu boards, below display cases, or at the base of signage are effectively decorative.
Scan clearance space
The physical area immediately in front of the code must be accessible. A QR code on the back of a product that sits flush against a retail shelf is impossible to scan without removing the product. A code on the inside of a folded brochure cover can't be scanned without opening it first, which most users won't do. Consider the physical mechanics of scanning when determining placement.
Avoid these placements
- Matte black surfaces (reduces reflectance, causes scan failures in dim light)
- Curved surfaces with tight radius (distorts the code geometry, causing edge scan failures)
- Fabric or textured materials (the texture creates noise in the module pattern)
- Overhead signage above 2 meters (requires looking up with phone held at an awkward angle)
- Wet-environment surfaces without lamination (ink bleed and water damage destroy module edges)
Testing best practices
Testing is where most QR code failures are caught, or not caught. The standard desk test (scanning the code on your laptop screen with your own phone) catches obvious failures. It misses the 80% of production failures that only show up in actual deployment conditions.
The three-device rule
Test on at minimum three devices:
- iPhone (iOS 15 or later, tests the most common iOS camera behavior)
- Recent Android flagship (Samsung Galaxy or Pixel, tests Google's camera implementation)
- Mid-range or older Android (Android 9 or earlier, this is where failures show up that don't appear on premium devices)
If the code fails on the older Android, the problem is usually module density (code too small or too complex for the camera to resolve), contrast (luminance difference is marginal), or quiet zone violation.
Test at the actual scanning distance
Print a single copy at the intended size before committing to a full print run. Stand at the actual scanning distance and scan with each test device. For a wall poster at 60 cm scanning distance, test from 60 cm, not from 20 cm on your desk. The code that looks perfect at arm's length may fail autofocus at 60 cm if the modules are too small.
Test in actual lighting conditions
Dim restaurant lighting is not your office. Outdoor midday sun creates glare on glossy stock. A code that scans at 100% under office fluorescents may fail at 30% on a glossy outdoor poster in bright sunlight, the glare washes out module contrast. Test in conditions that match the deployment environment.
When these best practices don't apply
There are legitimate cases where following every best practice produces the wrong outcome.
Decorative QR codes in photography or video: QR codes used as visual design elements in product photography or marketing videos are never intended to be scanned. Artistic QR codes with custom shapes, extreme color combinations, or partial patterns are acceptable in contexts where scan functionality is irrelevant. Don't apply scan-reliability rules to visual design decisions.
Internal inventory and warehouse codes: Industrial QR scanners, handheld, wired, or mounted, are far more tolerant than smartphone cameras. Higher resolution, more powerful illumination, closer scanning distances. Codes for internal logistics often use minimal quiet zones and high-density versions that would fail on consumer phones but scan perfectly on industrial hardware.
Digital QR codes on screen: A QR code displayed on a website for users to scan with their phone is viewed under controlled conditions (calibrated screen, controlled brightness). Level L error correction is fine, minimum sizes are more lenient, and color combinations that would be risky in print are safe on backlit screens.
Creating QR codes that follow these best practices
QR Nova's generator applies several of these best practices automatically: error correction defaults to level H for codes with logo overlays, SVG export is the primary download option, and the minimum quiet zone is enforced in the output. Create a QR code free at QR Nova, no account required, with design customization and immediate SVG download.
For business cards with contact QR codes, the vCard generator creates static vCard codes that work permanently without any subscription. For network access codes, the WiFi QR code generator outputs codes that prompt iOS and Android users to join the network natively.
Generate once, test thoroughly, then print. Every hour spent on pre-print testing saves days of reprinting failed materials.
Frequently asked questions
What is the minimum size for a QR code?
The absolute minimum for reliable scanning is 2 × 2 cm (0.8 × 0.8 inches) at a standard scanning distance of 20–30 cm. For signage or posters that will be scanned from more than 50 cm, use the 10:1 rule: the scanning distance should be no more than 10 times the code width. A code on a poster scanned from 1 meter needs to be at least 10 cm × 10 cm.
What is the best file format for printing a QR code?
SVG (Scalable Vector Graphics) is the correct format for print. SVG is resolution-independent, it scales to any size without pixelation. If your designer needs a raster format, export PNG from the SVG at minimum 300 DPI at the intended print size. Never use JPEG for QR codes, JPEG compression artifacts blur the module edges and cause scan failures.
Can I customize the colors of a QR code?
Yes, with constraints. The module color must be significantly darker than the background, minimum 40% luminance difference. Dark brand colors (navy, dark green, dark red, brown) on a white or very light background work well. Never invert the code (light modules on dark background) on materials that will be scanned in poor lighting, it fails on some older cameras. Always test after customizing.
How much of a QR code can be covered by a logo?
Up to 30% of the code area can be obscured when using error correction level H. Generate at level H before adding any logo. Keep the logo centered, the three corner finder squares (the large squares in the corners) must remain uncovered, as they're required for the scanner to orient the code. Test the final design on three different devices before printing.
What error correction level should I use?
Use level H (30% error recovery) for any code that will be placed outdoors, on packaging that may be worn, or any design that includes a logo. Use level M (15% recovery) for standard indoor use without logo overlays. Level L (7% recovery) is rarely worth the denser-code tradeoff for the slightly smaller code size.
Should I add a call to action near my QR code?
Yes, always. A QR code without a CTA has an average 30% lower scan rate than the same code with a brief instruction. 'Scan to see the menu', 'Scan to get 15% off', 'Scan to connect to WiFi', one specific sentence that answers 'what do I get if I scan this?' Vague CTAs like 'Scan me' underperform compared to specific benefit-oriented instructions.
Does the quiet zone matter?
The quiet zone, the white border around the code, at least 4 modules wide, is mandatory. The scanner uses the transition from background to the code border to locate the code. If design elements, ink bleed, or crop marks overlap the quiet zone, the scanner fails to find the code boundary. The quiet zone is not decoration, it's part of the code specification.
Related articles
How to Test a QR Code Before Printing: 5-Step Checklist
5-step checklist: multi-device scanning, distance testing, URL verification, contrast ratio, and structural validation. Catch QR failures before ink hits paper.
QR Code for Posters: Size, Placement & Print Guide
How to add a QR code to a poster that actually gets scanned — distance-based sizing, placement, contrast, and a clear call to action. Free, no account needed.
QR Code Print Size Guide: Minimum Size & Resolution
QR code print size guide: minimum 2cm × 2cm, 300 DPI for print, SVG for large format. Every use case covered with exact specs. No guesswork.
Create your first QR code — free
Get started