Your QR code design looks perfect on screen. Then it comes back from the printer on a spot-UV business card or a foil-stamped packaging box — and half the people who try to scan it get nothing. Print finishes are one of the least-discussed reasons QR codes fail in the wild, and the damage only shows up after you've paid for the run.
This article covers the specific finishes that cause problems, why they fail at the physics level, and what to check before you approve any print job that includes a QR code.
Why Print Finishes Interfere With Scanning
Phone cameras read QR codes by detecting contrast between dark modules (squares) and the light background. Any finish that changes how light reflects off the surface — or that blurs the edge between a module and its neighbour — can destroy that contrast or confuse the decoder.
There are two main failure modes:
- Glare-induced contrast loss: A highly reflective surface bounces light back into the camera lens, washing out the dark modules. The scanner sees a bright blob, not a pattern.
- Edge blur: Embossing, debossing, and certain soft-touch coatings physically deform or visually soften module edges, making the code harder for the decoder to threshold correctly.
The Finishes That Cause the Most Failures
Spot UV Over the QR Code
Spot UV is a clear gloss coat applied to selected areas for visual pop. Applied directly over a QR code, it creates a mirror-like surface. Under any directional light — a lamp, sunlight, a ceiling fluorescent — the code reflects instead of absorbs. Scan failure rate in these conditions is high enough that it should be treated as a near-certain failure.
Fix: Apply spot UV to every part of the design except the QR code. Leave the code area with a matte or uncoated finish. The contrast between the shiny design and the flat QR zone actually draws the eye to it.
Foil Stamping
Hot foil and cold foil are metallic finishes used on premium packaging, invitations, and certificates. If the QR code itself — or the background behind it — is foil-stamped, the reflectivity makes it unscannable under most lighting. Even a foil-stamped border close to the quiet zone can cause lens flare that spills into the scan area.
Fix: Never foil the code itself. Keep a clear, non-foil quiet zone of at least four modules around the code boundary. If your brand requires a metallic look nearby, test in both indoor and outdoor lighting before approving.
Full-Surface Gloss Laminate on Small Codes
A full-bleed gloss laminate on a flyer or packaging isn't automatically a problem for large QR codes (3 cm or bigger), but it becomes unreliable for small codes printed at 1.5–2 cm. The glare effect is proportionally more damaging because there are fewer pixels per module for the camera to work with.
Fix: Either increase the code size (the sizing and quiet-zone rules for print recommend a minimum 2 cm print width for laminated stock), or switch to a matte laminate for any piece with a small QR code.
Embossing and Debossing
Both techniques physically raise or recess areas of the stock. If a QR code is embossed, the shadows and highlights created by the three-dimensional surface layer over the module pattern. Debossing is equally destructive. Neither should ever be applied to a QR code area.
Soft-Touch Coating
Soft-touch (also called velvet or suede coating) gives packaging a premium tactile feel. It generally doesn't create glare, but some formulations leave a slight haze that softens edges. For high-error-correction codes (version 5 and above) this is usually fine. For small, low-version codes it can push scan reliability below acceptable levels. Test before committing.
Finishes That Work Well
| Finish | Behaviour on QR Code | Verdict |
|---|---|---|
| Uncoated stock | Clean contrast, no glare | ✅ Best |
| Matte laminate | Low reflectivity, sharp edges | ✅ Good |
| Soft-touch coating | Slight haze on edges | ✅ Usually fine, test small codes |
| Satin/silk laminate | Low-to-moderate gloss | ✅ Acceptable, avoid tiny codes |
| Full gloss laminate | Glare under direct light | ⚠️ Test with target lighting |
| Spot UV on code | Mirror-like glare | ❌ Avoid |
| Foil on code | Extreme glare | ❌ Avoid |
| Emboss/deboss on code | Structural distortion | ❌ Avoid |
How to Proof-Test Before the Full Print Run
- Request a physical proof, not just a digital proof. Finishes only show their scan behaviour on real substrate.
- Test in the environment where the code will actually be used — the lighting in your print shop is not the same as a retail shelf or outdoor signage.
- Test with at least three phone models: a current flagship, a mid-range Android, and a phone that's two or three years old. Older camera modules are less forgiving.
- Scan from multiple angles, not just dead-centre. Slight tilt amplifies glare from reflective finishes.
- If any scan fails, increase error correction from M (15%) to Q (25%) and reprint the proof. This is done in your generator settings before exporting the code. For the broader rules around designing a scannable branded code, the guide on designing branded QR codes in 2026 covers module styles and error correction in detail.
Briefing Your Print Supplier
Most print suppliers don't think about QR scannability when applying finishes. You need to specify it explicitly. Add a note to your artwork brief:
"The QR code area must remain uncoated / matte. Do not apply spot UV, foil, emboss, or gloss laminate to the QR code or its 4-module quiet zone."
If you're using a QR code generator) to produce the final export, make sure you export at the highest resolution available (SVG preferred, or 600 dpi+ PNG) so the printer isn't upscaling a low-res image — that also degrades module edges after finishing.
Key Takeaways
- Spot UV, foil stamping, and embossing over a QR code are near-certain scan failures. Never do it.
- Full-gloss laminate is risky for codes smaller than 2 cm; matte or satin laminate is safer.
- Soft-touch coating is usually acceptable but warrants a physical proof for small codes.
- Always test on real printed stock, in real lighting, with multiple phone models before approving a run.
- Brief your print supplier in writing: specify no finish on the code area or its quiet zone.
- Increase error correction to Q level if your design requires any coating near the code.
