Tools Nimbus

Why is my QR code not scanning

Tools Nimbus is a free, no-signup developer toolkit that runs entirely in your browser, so your data is never uploaded to a server. A QR code that will not scan is almost always one of nine problems: too small, too dense, low contrast, inverted colors, a missing quiet zone, blur, a dead redirect, a typo in the URL, or screen glare. This guide walks each fix; you can regenerate a clean code in seconds with the Tools Nimbus QR Code Generator.

Last updated June 2026

First, find out which kind of failure you have

There are two different failures that people call "not scanning," and they have different causes. If the camera never reacts at all, the scanner cannot read the pattern: a physical problem with size, contrast, focus, or layout. If the camera reads the code but the destination is wrong, dead, or shows someone else's error page, the pattern is fine and the problem is the data inside it. Work out which one you have before changing anything, because the fixes do not overlap.

The nine causes and fixes

SymptomCauseFix
Camera never reactsCode printed too small for the scanning distanceMinimum 2 x 2 cm; use a 10:1 distance-to-size ratio
Camera never reactsCode too dense (very long URL)Shorten the URL so the module grid is coarser
Scans erraticallyLow contrast between modules and backgroundDark modules on a white or very light background
Camera never reactsInverted colors (light modules on dark)Re-export with standard dark-on-light polarity
Camera never reactsNo quiet zone (cropped tight)Leave at least 4 modules of empty margin on all sides
Scans up close onlyBlurry print or upscaled low-resolution imageExport at full resolution; print sharp, never stretch a small PNG
Scans, then error pageDynamic code whose redirect expiredGenerate a static code that encodes your real URL directly
Scans, wrong destinationTypo or missing https:// in the encoded textDecode the code, read the raw text, regenerate
Works printed, not on screenGlare, night mode, or low screen brightnessRaise brightness, disable color-shifting modes, avoid glossy reflections

Size and density: the two that cause most print failures

A QR code is a grid of modules, and a phone camera has to resolve every module to read it. Two things shrink modules: printing the whole code small, and stuffing in long data. They compound. A 600-character URL in a 2 cm sticker produces modules well under half a millimeter, beyond what a camera at arm's length resolves. Keep the encoded text short (a clean URL, not one dragging tracking parameters), and never print below 2 x 2 cm. For posters and signage, size the code for the farthest realistic scanning distance using the 10:1 rule.

Contrast, inversion, and the quiet zone

Scanners binarize the image: every pixel becomes either dark or light. Brand-colored codes in mid-tones, dark-on-dark palettes, and busy background imagery all collapse in that step. Standard polarity is dark modules on a light background; many scanners simply do not attempt the inverted form. And the quiet zone is not decoration, it is part of the spec: the scanner needs roughly four modules of clean margin to find the code's edges. The classic failure is a designer cropping the code flush against a border in a layout tool.

Expired codes: the failure that is not about the pattern

Static QR codes cannot expire. The pattern is nothing more than your text, and ink does not stop working. What expires are dynamic codes from subscription QR services: they encode a short redirect URL on the provider's domain, and when the free trial or plan lapses, the redirect dies. The code still scans perfectly and lands on an upgrade or error page. This is the most common reason a code that worked for weeks suddenly stops. The fix is to generate a static code that encodes your destination directly. The QR Code Generator builds static codes in your browser: the URL never leaves your machine, no account is involved, and there is no service in the middle that can expire, track scans, or break your links later. The trade-off is honest and worth knowing: a static code cannot be edited after printing, so if you need to change the destination of an already-printed code, a dynamic provider you pay for and trust is the right tool for that job.

A 60-second debugging checklist

  • Scan someone else's known-good code: rules out your camera.
  • Scan your code from a phone screenshot at full brightness: if that works but print fails, the problem is size, contrast, or print quality.
  • Read the decoded text with any scanner app: if the text is wrong or is a shortener you do not recognize, regenerate the code from the correct URL with the QR Code Generator.
  • Check the margin: if anything sits within four modules of the code, add space and reprint.
  • Long URL? Trim tracking parameters, or use a clean slug on a short path you control, then regenerate.

Frequently asked questions

Why does my QR code work on screen but not when printed?+

Print failures are almost always size or contrast. A QR code needs to be at least 2 x 2 cm (about 0.8 inches) for close-range scanning, printed dark on light with a clear quiet zone around it. Glossy lamination, low-contrast brand colors, and inverted palettes (light modules on a dark background) all break scanners that handle the on-screen version fine.

Did my QR code expire?+

A static QR code that encodes the URL directly never expires; the pattern is just the text of your link. What expires is dynamic QR codes from subscription services, which encode a short redirect URL the provider owns. When the trial or plan ends, the redirect is turned off and the code dies even though it still scans. If your code scans but lands on an error or paywall page, this is what happened.

How far away can a QR code be scanned?+

A useful rule of thumb is a 10:1 distance-to-size ratio. A 2 cm code works at about 20 cm, a poster scanned from 1 meter needs a code at least 10 cm wide, and a banner read from 5 meters needs roughly 50 cm. If users have to step closer than feels natural, the code is too small for its placement.

Why does my QR code scan but open the wrong page?+

The code encodes exactly the text it was given, so the usual culprits are a typo in the URL, a missing https:// prefix (some scanners treat bare text as a search instead of a link), or a shortener or redirect chain that has changed underneath it. Decode the code with any scanner, read the raw text, and regenerate the code if the text is wrong.

Can a QR code hold too much data to scan reliably?+

Yes. Capacity tops out near 3KB, but long before that the modules become so small that printing and phone cameras cannot resolve them. A code holding a 1,000-character URL is far denser than one holding a 30-character link. Shorten the URL so the grid stays coarse and scannable.

Do QR codes need a quiet zone?+

Yes. The spec calls for a margin of at least four modules of empty space on every side. Cropping the code tight against text, borders, or imagery is one of the most common reasons an otherwise valid code will not scan.

Try these browser-based tools mentioned in this guide. Everything runs locally, so your data never leaves your device.