Why QR Codes Fail to Scan (and How to Fix It)
You created a QR code, but it does not scan. Before you start over, diagnose the problem. Most scan failures come from one of seven predictable causes.
1. The Code Is Too Small
This is the most common cause of scan failure. Phone cameras need to resolve individual modules (the black squares) clearly. If the code is too small for the scanning distance, the camera sees a blurry blob instead of distinct modules.
Fix: Follow the 1:10 rule — the QR code width should be at least 1/10th of the expected scanning distance. A code scanned from 30 cm away needs to be at least 3 cm wide. See our size guide by format for exact recommendations.
2. Not Enough Contrast
QR scanners detect edges between dark modules and light background. When the contrast ratio is too low, the scanner cannot distinguish the pattern.
Common contrast mistakes:
- Dark gray modules on light gray background
- Colored modules on a colored background (like blue on green)
- Light-colored modules on white (yellow on white is nearly invisible to cameras)
Fix: Use dark modules on a light background with a contrast ratio of at least 4:1. Black on white is the safest choice. If you use colors, test with a contrast checker. See our guide on best colors for QR codes.
3. The Quiet Zone Is Missing or Invaded
The quiet zone is the blank margin around the QR code. Without it, scanners cannot determine where the code boundaries are. This happens when:
- The QR code is cropped too tightly
- Text or graphics are placed right against the QR code edge
- The QR code is placed inside a busy background pattern
Fix: Maintain at least 4 module-widths of clear space on all four sides. In practice, this means a visible white (or light) border around the code.
4. The Encoded Data Is Corrupted
If the URL or data encoded in the QR code is malformed, the code may scan but lead nowhere — or the scanner may reject it entirely.
This happens when:
- The URL was copied with extra whitespace or hidden characters
- Special characters in the data were not properly encoded
- The data was truncated during generation
Fix: Copy your URL directly from the browser address bar. After generating, scan the code yourself and verify the destination before printing.
5. Physical Damage or Distortion
Printed QR codes can be damaged by:
- Scratches, folds, or tears across module areas
- Fading from UV exposure or water damage
- Printing on curved surfaces that stretch the pattern
- Low print quality that blurs module edges
Fix: Use error correction level Q or H for codes that will be exposed to wear. Test the code after printing on the actual material. For outdoor use, consider lamination or UV-resistant materials.
6. The Code Is Too Dense
QR codes encoding long strings of data (long URLs, full vCard data, paragraphs of text) have very dense module grids. Each module becomes tiny relative to the overall code size, making it harder for cameras to resolve.
Fix: Shorten the encoded data. Use a URL shortener instead of a long URL. For vCards, include only essential fields. If you need to encode a lot of data, increase the physical size of the code proportionally.
7. Glare or Reflections
QR codes printed on glossy surfaces or displayed on screens can reflect light in ways that obscure modules from the camera. This is especially problematic under:
- Direct sunlight
- Overhead fluorescent lighting
- Flash photography angles
Fix: Print on matte surfaces when possible. If the code must be on a glossy surface, position it at an angle that minimizes glare from typical viewing positions. For screen-displayed codes, increase screen brightness.
Quick Diagnostic Checklist
When a QR code fails to scan, check these in order:
- Size — Is the code large enough for the scanning distance?
- Contrast — Are modules clearly darker than the background?
- Quiet zone — Is there enough clear space around the edges?
- Data — Does the code contain valid, correctly formatted data?
- Surface — Is the print clean, undamaged, and glare-free?
- Density — Is the encoded data minimal (short URL, basic info)?
- Devices — Test on multiple phones, not just the newest model
Prevention Is Easier Than Diagnosis
Most scan failures are preventable with basic preparation:
- Generate the QR code with error correction level M or higher
- Export as SVG or high-resolution PNG (300+ DPI for print)
- Test on at least three different devices before finalizing
- Print a proof on the actual material before mass production
- Keep encoded data as short as possible
A QR code that fails to scan is worse than no QR code at all — it wastes the user’s time and damages trust. Take the extra five minutes to test it properly.
Generate a Reliable QR Code
Open QR Generator →Frequently Asked Questions
Why does my QR code work on some phones but not others?
Older phones have lower-resolution cameras and less sophisticated image processing. A QR code that scans fine on a new iPhone might fail on a budget phone from three years ago. Use larger sizes and higher contrast to improve compatibility across devices.
Can a QR code be too complex to scan?
Yes. QR codes have a maximum data capacity (about 3,000 bytes of alphanumeric data), but codes near this limit have very dense module grids that are hard for cameras to resolve. Keep encoded data as short as possible.
Does screen brightness affect QR code scanning?
Yes. If you display a QR code on a phone or monitor, low brightness can reduce contrast enough to cause scan failures. Set screen brightness to at least 70% when displaying a QR code for someone else to scan.