How to Scan QR Codes on Curved Surfaces (Bottles, Cans)
By Codexengr, QR Systems Engineer · Last reviewed
Scanning QR Codes on Curved Surfaces
Bottles, cans, tubes, wristbands, and cylindrical signs all curve the QR module grid that decoders expect to be flat. The result: codes that scan instantly on paper refuse to decode on a bottle. The fixes are geometric and work on any phone.
The core technique: center and back off
- Rotate the object so the code faces the camera as squarely as possible.
- Center the code in the viewfinder — the middle distorts least.
- Move back slightly until the curvature across the code looks minimal.
- Hold still and let the decoder work for two to three seconds.
Backing off feels wrong, but it flattens the apparent curvature. A code that fills the frame edge-to-edge on a curve will almost never decode; the same code at moderate size often will.
Control the reflections
Curved glossy surfaces sweep highlights across the code as you move. Find an angle where the bright reflection falls off the code, then freeze. Diffuse lighting — shade, indoor light — is far kinder to curved gloss than direct sun or spotlights.
Keep the whole code visible
Partial visibility plus curvature defeats decoders quickly. Make sure all four edges of the code and its quiet zone (the clean margin around it) are in frame. If a finger or label edge covers part of a curved code, reposition before retrying.
The photo-decode fallback
Photograph the code, then decode the photo with Google Lens or a web scanner. Still images let you retry without re-aiming, and some decoders handle geometric distortion better from a photo than from a live feed.
For codes you print
If you are putting QR codes on curved products: use the flattest area available, print the code generously large, and keep it away from the tightest curves (bottle necks, thin tubes). A bigger code on a gentle curve scans like a flat code.
What will not work
No phone setting fixes extreme distortion — a tiny code wrapped around a thin tube is beyond what geometry allows. In those cases the answer is a bigger code, a flatter placement, or a different label design, not a better scanner app.
Where the scanner lives on this device
Built-in scanner: Any built-in scanner; Google Lens for distortion.
How to reach it: Rotate the object so the code faces the camera as squarely as possible, then scan from slightly further back so the entire code is visible without edge distortion.
Common failure modes and fixes
Code on a bottle or can never decodes
Why it happens: Curvature bends the module grid, especially near the edges, beyond geometric tolerance.
Fix: Center the code in the frame and back off until the curvature across the code is minimal. The middle of the code distorts least.
Only part of the code decodes, then fails
Why it happens: The decoder locks onto the finder patterns but loses the warped edge modules.
Fix: Ensure the full code, including all four edges and the quiet zone, is visible and as flat-facing as possible. Partial visibility plus curvature is a losing combination.
Reflections move across the curved surface while aiming
Why it happens: Curved glossy surfaces sweep highlights across the code as the phone moves.
Fix: Find an angle where the highlight falls off the code, then hold still. Diffuse light (shade, indoors) beats direct light on curved gloss.
Small code on a sharply curved tube is hopeless
Why it happens: Tight radius plus small modules equals extreme distortion.
Fix: Photograph the code, then decode the photo — some decoders handle the distortion better from a still image. For codes you print, use larger codes and flatter label areas.
What this guide covers in testing
- QR codes on bottles and cans
- QR codes on curved packaging
- QR codes on wristbands
- QR codes on cylindrical signage
Performance notes
Curved surfaces are a geometry problem: the decoder expects a flat grid, and curvature bends it. The center of the code always distorts least, so centering and backing off are the core techniques. Larger codes on gentler curves scan fine; small codes on tight curves (thin tubes, bottle necks) are the hardest case in this family. When printing codes for curved products, place them on the flattest available area and size them generously.
Frequently asked questions
- Why will my phone not scan a QR code on a bottle?
- Curvature bends the module grid the decoder expects to be flat. Center the code in the frame, back off slightly to reduce the apparent curvature, and hold still for a few seconds.
- Does getting closer help with curved QR codes?
- No — closer usually makes it worse, because the curvature across the frame increases. Back off until the code looks flatter, keeping the whole code and its quiet zone visible.
- How do I stop reflections when scanning a curved can?
- Find an angle where the highlight falls off the code and hold still there. Diffuse light (shade or indoors) works far better than direct light on curved glossy surfaces.
- Where should I print a QR code on a curved product?
- On the flattest available area, printed generously large, away from tight curves like necks and thin tubes. Bigger codes on gentler curves scan like flat codes.
