Published · 6 min read

QR Codes on Product Packaging: Placement & Design Best Practices

A minimalist cardboard product box on a retail shelf with a small QR code printed on its side label

Product packaging is one of the highest-stakes places to print a QR code: it’s produced in volume, often on surfaces that behave differently than flat paper, and it has to keep working for as long as the product sits on a shelf or in someone’s home — which for some goods is years.


What packaging QR codes are actually used for

Before sizing or design, it’s worth being clear about the destination, since packaging codes serve several genuinely different purposes:

  • Usage instructions or care information — often replacing a printed insert, useful for products where instructions are too long to fit legibly on the package itself.
  • Sourcing, authenticity, or traceability information — increasingly common for food, cosmetics, and higher-value goods.
  • Registration, warranty activation, or support — directing a customer to a page rather than a phone number.
  • Marketing or loyalty content — recipes, related products, a rewards program signup.

A static code pointed at your own URL supports all of these and lets you change what that page shows over the product’s life without touching the packaging itself — see static vs dynamic QR codes if you’re weighing whether a dynamic/tracked code is worth it for a specific campaign.


Surface changes the sizing and design math

Packaging is the use case most likely to be printed on something other than flat matte paper, and each surface introduces its own risk:

Curved surfaces — bottles, cans, tubes. The steeper the curve relative to the code’s width, the more the module grid distorts. Keep the code narrow relative to the container’s diameter, orient it so the curve runs vertically through the code rather than horizontally across it, and size up roughly 25% over the flat-surface minimum.

Glossy or varnished finishes. Common on premium packaging, glossy stock reflects a phone’s own flash and overhead lighting back into the camera, washing out sections of the code. Size up about 20%, and if the packaging allows it, request a matte varnish specifically over the code’s footprint.

Flexo printing on corrugated cardboard. Common for shipping boxes and outer cartons, flexo printing has a coarser practical module floor than offset or digital printing — plan for larger modules (0.6 mm minimum) to avoid ink spread closing the gaps between them.

Full detail on module size, the quiet zone, and DPI by distance is in the general size guide.


Error correction for a code that travels

Packaging is handled, shipped, stacked, and sometimes stored in less-than-ideal conditions before it ever reaches a customer. Q-level error correction is a sensible baseline for most packaging, and H is worth it for anything shipped loose, stored outdoors, or exposed to moisture — recovering from roughly 25-30% damage rather than the 15% a default M-level code tolerates. See error correction levels explained for the full breakdown.


Don’t let branding win over contrast

Packaging design usually carries a full brand palette, and it’s tempting to render the QR code in a brand color to match. This is safe as long as the actual tonal contrast between the code and its background clears a safe threshold — see color contrast requirements for what that threshold is and which color pairings quietly fail it. A code that blends into a package’s color scheme visually might look intentional and still be unreadable to a scanner.


Placement that survives real handling

Keep the code away from fold lines, perforations, and die-cut edges — a crease running through the code is one of the most common causes of a packaging code that scanned fine on the proof and fails on the shipped product. Keep it away from areas that get handled or gripped repeatedly, since repeated contact wears print faster than a static display surface. And if the package will be scanned at retail before purchase, place the code somewhere reachable without needing to remove shrink-wrap or open the package.


Quick reference

  • Curved surfaces: size up ~25%, orient the curve vertically through the code
  • Glossy finishes: size up ~20%, request matte varnish over the code if possible
  • Error correction: Q baseline, H for shipped or outdoor-stored goods
  • Contrast: test brand-color pairings against a real contrast threshold, don’t assume
  • Placement: away from folds, die lines, and high-wear handling zones

Generate a free, permanent QR code for your packaging — no account, no expiry.Create yours with EtchedQR

For the guide to QR codes on equipment and asset labels, see QR code asset tags for equipment. For static vs dynamic, sizing, and every other use case, see QR codes for print: the complete guide.