Why Did My QR Code Stop Working? 7 Causes and Fixes
· 7 min read · generate-qr.cc
You printed a QR code on your menus, flyers or packaging, it worked for weeks, and now people tell you it does nothing, shows an error, or opens a page asking you to upgrade. The good news: there are only a handful of reasons a QR code stops working, and you can usually tell which one it is in under a minute.
Quick test: scan the code with your phone camera and look at the link it shows before you open it. That link tells you most of what you need to know.
1. Your “free” QR code was a trial that expired
This is the most common cause by far. Many QR code websites create a dynamic code by default: instead of your website, the code contains a short link on their domain, and their server forwards people to you. When the free trial ends or a subscription is cancelled, the site stops forwarding and shows its own page instead, often with a message like “This QR code has been deactivated” or an offer to upgrade.
How to check: if the link your camera shows is on the QR site’s domain (not yours) and opens a “deactivated”, “expired” or pricing page, this is your problem.
How to fix it: you only have two options, because the printed code points to their server, not yours. Either reactivate the account with that provider, or replace the printed code with one you control. If you reprint, choose either a static code (it contains your link directly and never depends on anyone’s server) or a dynamic code from a provider that does not switch codes off when you stop paying.
2. The page the code points to no longer exists
The QR code itself may be fine, but the website behind it has changed: a page was moved, a menu PDF was replaced with a new file name, a promotion ended, or the domain expired.
How to check: the code opens your own website, but you see a 404 “page not found” error or an empty page.
How to fix it: put the page back at the same address, or set up a redirect from the old address to the new one. For the future, a dynamic QR code lets you change the destination at any time without reprinting.
3. The code is printed too small
Phone cameras need enough pixels on each tiny square of the code. If the code is small and people scan it from a distance, the camera simply cannot read it. A good rule of thumb is that the code should be at least one tenth of the scanning distance. See our QR code size guide for exact sizes.
4. Not enough contrast or a missing white border
Scanners look for dark squares on a light background. Codes in light colours, codes on busy photos, and codes printed right up to the edge of a coloured area are much harder to read.
- Use a dark pattern on a light background. Inverted codes (light on dark) fail on some scanners.
- Keep a clear border around the code, ideally as wide as four of its small squares.
- Avoid gradients and pale colours like yellow, light grey or pastel pink for the pattern.
5. The logo or design covers too much of the code
QR codes have built-in error correction, so a logo in the middle is fine. At the highest level a code can lose about 30% of its data and still scan. Large logos, logos placed over the three corner squares, or heavily stylised patterns push past that limit.
How to fix it: make the logo smaller, keep it in the centre, and leave the three big corner squares untouched. Then test with more than one phone.
6. Too much data in a static code
A static code stores its content inside the pattern. A very long web address, or a contact card with many fields, creates a dense pattern of tiny squares that is hard to scan, especially when printed small.
How to fix it: shorten what goes into the code. Use a shorter link, fill in only the contact fields you really need, or use a dynamic code, which always contains a short link no matter how long the destination is.
7. Physical damage, glare or a curved surface
Scratches, stains, folds, a glossy laminate that reflects light, or a code wrapped around a bottle or cup can all stop a code from scanning, especially if they hit the corner squares.
How to fix it: use a matte finish, place the code on a flat part of the surface, print it slightly larger than the minimum, and replace worn stickers.
A special case: Wi-Fi QR codes
A Wi-Fi QR code contains the network name and password. If you change your Wi-Fi password or rename the network, the old code stops connecting people. Create a new code whenever your Wi-Fi details change.
How to make a QR code that keeps working
- Decide whether the destination will ever change. If not, a static code is the safest choice: it has no middleman and never expires.
- If you need to change the link later or count scans, use a dynamic code, and read the provider’s terms. Check what happens to your codes if you stop paying.
- Print the code large enough for the scanning distance, with strong contrast and a clear border.
- Before a big print run, print one copy at the real size and scan it with two or three different phones from the distance people will actually use.
At generate-qr.cc, static codes are free with no watermark, and dynamic codes keep redirecting even if you downgrade or cancel. We wrote that into our terms because we have seen too many printed menus stop working overnight.
Make a QR code that won’t switch off
Free, no watermark, PNG and SVG. No sign-up needed for static codes.