Use Cases
QR Codes for Retail & Product Packaging
Packaging is one of the harshest environments a QR code has to survive — printed directly onto cardboard, plastic film, or shrink wrap, exposed to warehouse handling, moisture, and abrasion, often at a small size dictated by whatever space is left after the rest of the label design. It's also one of the highest-stakes use cases, since packaging codes increasingly carry real functional weight: product authentication, care instructions, ingredient transparency, or warranty registration, not just marketing links.
Print method affects scannability more than design does
Unlike a code printed on standard paper stock, packaging codes are frequently printed via processes with lower resolution or more variability — flexographic printing on corrugated cardboard, direct thermal printing on shipping labels, or embossing into plastic. These methods can blur module edges in ways a standard inkjet or laser printer wouldn't. Two mitigations matter more here than in almost any other use case:
- Use higher error correction than you'd otherwise choose — Q or H level (see our error correction guide) — to build in tolerance for print inconsistency, not just physical damage after the fact.
- Test at the actual production print method and material before finalizing packaging artwork. A code that scans perfectly from a design proof on a monitor or a standard printer can fail once it's actually printed on the target material at production settings.
Contrast and surface matter
Reflective or glossy packaging materials — shrink wrap, laminated labels, metallic foil — create glare that can prevent a phone camera from resolving the code cleanly, even when the print itself is sharp. A matte finish over the code area, even just in that one spot, meaningfully improves scan reliability compared to a fully glossy surface. Low-contrast color combinations (light gray on white, for instance) should be avoided regardless of material — full black-on-white or a similarly high-contrast pairing gives the most reliable results.
Static vs. dynamic for packaging
This depends heavily on what the code actually does. A code that links to general product information, a recipe, or a how-to video benefits from being dynamic — packaging often stays on shelves or in inventory for a long time, and a dynamic code lets the destination be updated (a fixed typo, a new video, a seasonal promotion) without needing to reprint any packaging already produced. A code used purely for traceability or authentication — encoding a serial number or batch ID looked up against an internal database — is typically static by design, since the ID itself needs to stay fixed and verifiable.
Common mistakes
- Code placed in a fold or seam. Packaging codes placed across a fold line, seal, or seam risk being physically distorted or split when the package is assembled.
- Undersized relative to viewing distance. A code meant to be scanned by a warehouse worker from arm's length needs to be larger than one meant for a shopper holding the product close.
- No fallback if the destination changes. Discontinued products with static codes pointing to now-dead pages create a poor experience for anyone scanning old inventory still in circulation.