Why some colored QR codes don't scan
Find out why some colored QR codes fail to scan, which color combinations keep strong contrast, and how to test a code before printing it.
A colored QR code can be valid and still be hard for a phone to read. For reliable scanning, use a dark pattern on a light, plain background, keep the contrast strong, and test the finished code with a phone before sharing or printing it.
Color itself is not the problem. Scanning fails when the camera cannot distinguish the squares from the background, or when glare, blur, size, or a design element hides part of the pattern.
Why a colored QR code may not scan
A phone camera captures light and shade, then looks for the QR code's pattern of dark and light squares. It does not read the design in the same way a person sees color. Two colors that look different to you can appear nearly the same brightness to the camera.
For example, a red pattern on a dark green background may have weak contrast even though the hues look distinct. In dim light, on a glossy surface, or through a low-quality camera, the pattern can become even harder to separate. The code may also fail if the background is busy or if the printed image is blurry.
QR codes include error correction, which can help a scanner read a partly damaged code. It is not a substitute for contrast, and it cannot guarantee that a code will work if too much of the pattern is obscured or unreadable.
Which QR code colors are safest?
For the most dependable result, keep the background light and the QR pattern very dark. Black on white is the safest default. Other dark colors can work well when the background is pale and the pattern remains clearly darker.
- Reliable pairings: Black on white, dark navy on white, or dark brown on cream. A deep color on a very light background gives the camera an obvious difference between the pattern and its surroundings.
- Use with care: Dark green, burgundy, or dark purple on a pale background. These can scan if the contrast is strong, but do not rely on how the colors look to your eyes alone.
- Risky pairings: Light yellow on white, pale pink on cream, or two colors with similar brightness. The edges between the squares may be difficult for a camera to detect.
In most cases, keep the QR pattern darker than its background. Light patterns on dark backgrounds can work with some scanners, but they are less dependable across different phones and scanning apps. Do not assume an inverted design will scan just because it looks clear on a screen.
What makes a color combination hard to scan?
The foreground and background have similar brightness
Hue is the name of a color, such as red or blue. Brightness is how light or dark it appears. A blue foreground and a yellow background might look very different, but if both are too light or close in brightness, their edges can be difficult to detect. Choose a noticeably dark pattern and a noticeably light background.
The background is transparent or uneven
A transparent background can show whatever is behind the code, so the contrast changes from place to place. A photo, gradient, texture, or colored surface can also interfere with the pattern. Use a solid background and leave clear space around the code.
There is glare, blur, or too little light
A glossy print can reflect a bright lamp or window, washing out parts of the code. A small, blurry image may lose the sharp edges that a phone needs to identify the squares. Keep the code in focus and use enough light to see the pattern without reflections.
A logo or border covers the pattern
A logo placed over the center can hide squares that carry information. Error correction may help with a small obstruction, but the result is not guaranteed. Do not crop the clear margin around the code, and keep decorative borders away from the pattern.
Make a colored QR code and test it
- Open the QR Code Generator and enter the link or other information the code should contain.
- Choose a dark foreground color and a light, solid background. If you add a logo, keep it small and avoid covering important parts of the pattern.
- Scan the code on your screen with a phone. Hold the camera steady and make sure the code is large enough for the camera to focus on it.
- Print a sample at the size you plan to use. Scan the actual print, not only the version on your computer screen.
- Try the sample with more than one phone if other people will need to scan it. Test it in the lighting and at the distance where people will encounter it.
If the code scans on screen but not in print, check the printed copy for blur, glare, low contrast, or a missing clear margin. If it is unreliable, change to a darker foreground or lighter background and test again.
How to make a QR code easier to scan
- Keep the pattern sharp. Use a clear export and avoid stretching a small image to make it larger. Scaling a low-resolution image can blur the square edges.
- Leave a quiet zone. A quiet zone is the blank border around a QR code. Keep it free of text, lines, and other shapes so the camera can find where the code begins.
- Use a plain background. A uniform light color is easier for cameras than a photo or a patterned surface.
- Give the code enough space. If the code is too small or viewed from too far away, the phone may not be able to resolve its individual squares. Make a test at the expected viewing distance.
- Check the final version. Any change to colors, size, logo, or layout can affect scanning. Test the exact file or printed version people will use.
For a code used on packaging, posters, or labels, test a physical sample before making many copies. A quick scan in good light is useful, but testing from the real distance and surface is a better check of whether the color choice works in practice.
