Qraft

Why QR Codes Work in Color and Where They Break

QR Codes Don't Need to Be Black and White

Scanners detect contrast between 'light' and 'dark' areas, not specific colors. Any dark-on-light combination works: dark red on white, navy on white, dark green on white. Maximum contrast (black on white) is most reliable, but brand-colored QR codes function perfectly with sufficient contrast.

Color Combinations That Break QR Codes

Inverted colors (light modules on dark background) fail on many scanners. Low-contrast pairs (yellow on white, pink on orange, dark blue on black) prevent module boundary detection. Red-green combinations, while scanner-readable, are problematic for color-blind users and should be avoided for accessibility.

Contrast Ratio Guidelines

In practice, the working guideline for reliable scanning is a contrast ratio of at least 4:1 between modules and background, since the camera decoder thresholds brightness differences rather than hue. WCAG's 4.5:1 is a separate criterion, meant for humans reading text, and does not guarantee a scan. Free tools like WebAIM Contrast Checker verify ratios instantly, but a passing number is only a guide: always test an actual scan on the final print or screen. When in doubt, dark modules on light backgrounds is always the safest choice. Design that sacrifices readability defeats the purpose.

Gradients and Photo Backgrounds

Technically possible but risky, as varying background colors create inconsistent contrast. Safe approach: generous white quiet zone around the QR code with solid-color background inside, decorative design outside. For photo overlays, a semi-transparent white rectangle behind the code preserves both aesthetics and readability.

Having Fun with QR Code Colors

Brand colors create instant recognition (Coca-Cola red, Starbucks green). Seasonal palettes add charm (Christmas red/green, Halloween orange/black, spring pink/white). Module shapes can be changed to circles or hearts thanks to error correction, though always test before publishing.