Packaging is a hard place for a QR code. Labels are small. Surfaces curve. Materials are rough, dark, or shiny. Still, a code on a bag, box, or bottle can send customers to a brew guide, a recipe, a manual, or a reorder page. This guide covers what makes those codes scan.
Match the label size to the scan distance
Start with how the customer will scan. Do they hold the package in their hands, or does it sit on a shelf?
A common rule of thumb is that scan distance is about 10 times the code width. So:
- A 1 inch code scans from about 10 inches
- A 1.5 inch code scans from about 15 inches
- A 2 inch code scans from about 20 inches
Most packaging is scanned in hand, at around 6 to 12 inches. For close-range print, about 0.8 inch (2 cm) is the usual minimum. Treat that as the smallest you should go, not the target. If the label has room, go bigger.
Shelf scanning is different. If someone needs to scan a code on a box across a counter, size it for that longer distance.
Keep the code simple
A shorter URL makes a simpler pattern with larger modules. On a small label, that is a real advantage. A long address with tracking parameters packs many tiny squares into a tight space, and small print makes them hard to read.
Use a short page address that you control. Then put the detail on that page.
Remember that a static code cannot be changed after printing. Pick a destination you plan to keep for the life of the package. Editable codes are Coming soon and will depend on an active plan, so do not plan a print run around them.
Curved surfaces change the pattern
Bottles, cans, jars, and tubes bend the code. The pattern wraps around the curve, and the edges look squeezed from the camera's point of view.
Some ways to reduce the problem:
- Keep the code small relative to the curve, so less of it wraps away
- Put it on the flattest part of the container
- Orient it so the curve runs along one axis only, rather than across the whole code
- Avoid seams, ridges, and lids
A wide code on a narrow bottle is risky. Test on the real container, filled if it will be filled.
Kraft paper and rough materials
Kraft bags and boxes look great and are tough to print on. The brown base color lowers contrast, and the fibers make edges rough.
If you print on kraft:
- Use the darkest ink you can, black or a very dark brown
- Make the code larger than you would on white stock
- Avoid fine detail and thin lines
- Consider a white label or a white printed patch behind the code
A white patch with a clear border is often the most reliable answer. It restores the contrast and the quiet zone in one move.
Dark and colored materials
Dark packaging looks premium, and it makes scanning harder. Light-on-dark codes work on some phones and fail on others. Where you can, flip the setup: put a dark code on a light patch.
Contrast is the main thing to watch. Made to Scan warns when contrast is under 4.5:1 or when the code colors are inverted. These are warnings, not blocks, so read them before you download.
Also be careful with:
- Metallic and foil finishes, which reflect light unpredictably
- Gradients that fade to a light color at one end
- Colored backgrounds that shift under store lighting
Respect the quiet zone
The quiet zone is the blank margin around the code. The standard calls for 4 modules on each side. On packaging, this margin gets eaten by:
- Die lines and fold edges
- Border art and logos
- Seams and flaps
- Barcode stickers placed too close
Plan the label layout with this margin in mind from the start. A good code with no margin often fails.
Place it where people will see it
Think about where hands and eyes go.
- Bags and pouches: The back panel, near the seal, away from the fold.
- Boxes: A flat side panel or the inside of the lid, not a crease.
- Bottles: On a flat label area, away from the neck and base.
- Jars: On the label, not the lid curve.
Avoid placing the code where it will be cut, torn, or rubbed. Resealable zips and tear strips wear fast.
Add a call to action
A bare square does not explain itself. Put a short line next to the code that tells people what they get:
- "Scan for brew guide"
- "Scan for recipes"
- "Scan for setup steps"
- "Scan to reorder"
Keep the text outside the quiet zone. Short, plain wording works best. People scan when they know the payoff.
Test on the real package
A flat proof tells you very little about a curved, textured package. Before the run:
- Print a sample on the actual material.
- Apply the label to the real container.
- Scan with two phones, one iPhone and one Android.
- Try bright and dim light.
- Try after any lamination, coating, or varnish.
Made to Scan decode-checks each export before download, so the file reads back to the exact URL you typed. That does not account for kraft fibers, bottle curves, or foil glare. A print test is still the final check. Our guide on how to test a QR code before you print it lays out the full process, and the print size guide covers sizing in more detail.
Make your packaging code
Ready to make one? Create a free QR code in your browser. Nothing you enter is uploaded.