Why Did My QR Code Stop Working? (And How to Fix It)
Your QR code scans but lands on a 404? Here are the 5 real reasons QR codes stop working and how to fix each one without reprinting.

Someone scans your code. Their phone locks on to it, the URL pops up, they tap. Then: a "404 Not Found" page, a blank screen, or a domain parking ad. Your QR code "stopped working."
This guide is for anyone who printed a QR code that used to work and now doesn't, or who just discovered a code in the wild that's sending people nowhere. We'll cover what actually broke, how to diagnose it in under a minute, and what to do today.
The QR Code Itself Is Almost Never the Problem
Here's the first thing to understand: a QR code is just a pattern of black and white squares encoding a string of text. Once it's printed correctly, it doesn't decay, expire, or forget anything. The QR standard even has built-in error correction that lets a code scan when up to 30% of its surface is damaged or obscured.
What breaks is almost always the destination the code points to. Not the code. The URL.
When people say "my QR code stopped working," they usually mean one of two things:
- The code scans fine but lands on an error page or wrong destination.
- The code won't scan at all.
These are completely different problems with completely different fixes. Broken destinations are far more common. Physical failures are usually obvious.
5 Reasons a QR Code Stops Working
1. The destination URL died
The most common cause by a large margin. A QR code points to a specific URL, and URLs break all the time. Research from the Pew Research Center found that 38% of webpages that existed in 2013 were no longer accessible just ten years later. Link rot is a real and ongoing problem.
If your code pointed to a product page, a seasonal landing page, or a campaign URL that has since been deleted, every scan now hits a dead end.
2. The URL path changed
You redesigned your website. You updated a page slug for SEO. You migrated to a new CMS. The old URL path now returns a 404 because the content moved somewhere else. The code still encodes the original path perfectly. It just doesn't go anywhere useful anymore.
This is the hidden cost of site migrations nobody thinks about until the QR codes on their printed materials stop working.
3. The domain expired
If the domain itself lapsed, every URL on it goes down simultaneously. One forgotten renewal wipes out every QR code that pointed to that domain. This happens more often than you'd think with promotional domains created for short-lived campaigns.
4. A typo in the original URL
Simple, but it happens. If the URL was mistyped when the code was generated, it never worked. It looked fine on screen because the printing was clean, but the encoded string pointed to a page that doesn't exist.
Scanning the code yourself and reading the URL is the fastest way to check this.
5. A third-party service shut down
Some free QR generators route codes through their own short-link infrastructure rather than pointing directly to your URL. If that company pauses or discontinues the service, every code they issued becomes a dead end overnight. The code pattern is fine. The middleman is gone.
Quick Test: Which Kind of Failure Is This?
Run through three questions before you do anything else.
Does the code scan at all? Try two different phones. If neither can pick it up, the issue is physical: contrast too low, code too small, quiet zone blocked, or print quality too poor. If both phones scan it fine, the pattern is good and the problem is the destination.
What does the destination show? A generic "404 Not Found" or "Page Not Found" usually means the specific URL is dead but the domain is alive. A domain parking page or "this domain is for sale" screen means the domain itself lapsed. A homepage instead of the expected page means the URL structure changed during a site update.
Did the code ever work? If you tested it at the proof stage and it worked, then stopped working later, something changed on the server side. If it was never tested and has always been broken, look for a typo in the original URL.
How to Fix It
The page still exists, just at a new URL. Set up a 301 redirect from the old path to the new one. Most website platforms and CMS tools make this straightforward. The printed code stays the same. Anyone who scans it gets forwarded to the right place automatically. This is the cleanest fix available.
The page is gone and won't come back. If it's a static code, you have to reprint. If you control the domain, you can create a new page at the old URL path, which at least keeps the code working. But if the original destination is truly gone and you can't recreate it, the code is done.
A typo in the URL. No fix without reprinting. The wrong text is baked into the code pattern permanently.
A dead third-party shortener. Same situation as a typo. You don't control the short URL. Reprint with a code that uses a URL you own.
Physical failure. Clean the surface. Make sure nothing is covering the quiet zone around the code. Check that the code is at least 2.5cm (1 inch) square in print. If the print itself is faded or warped, a reprint with better materials is the only option.
Make your next QR code with QRhubly. Free to start, no card, edit the destination anytime and see every scan.
Try dynamic freeThe Permanent Fix: Dynamic QR Codes
Every failure scenario above except physical damage shares one root cause: the destination is locked in at print time and you can't change it later.
Dynamic QR codes solve this. Instead of encoding your final destination URL directly, a dynamic code encodes a short redirect URL that you control through a dashboard. You can update that redirect to point anywhere, anytime, without touching the printed code. The physical pattern never changes. The destination can change as many times as you need.
For any QR code going on printed materials, a dynamic code isn't a luxury add-on. It's just the sensible default. According to data from imqrscan.com, 78% of businesses putting QR codes on printed materials already use dynamic codes. The ones that don't tend to find out why the hard way.
You can read the full comparison in our guide to dynamic vs static QR codes, but here's the short version:
| Situation | Static Code | Dynamic Code |
|---|---|---|
| Fix a broken destination URL | Reprint required | Edit in dashboard |
| Update destination after campaign ends | Reprint required | Edit in dashboard |
| See scan counts, locations, devices | No | Yes |
| Works forever, no subscription needed | Yes | Requires active plan |
| Good for one-off or personal use | Yes | Overkill |
If you're putting a QR code on a business card, a product label, a restaurant menu, a poster, or any printed material that you can't instantly replace, a dynamic code is the right choice. A static code is genuinely fine for things like a WiFi password QR stuck to the back of your router or a personal link shared digitally.
How Analytics Can Warn You Before It Gets Bad
One underrated benefit of dynamic codes is early warning. With a static code and no tracking, a broken destination can sit broken for weeks before a customer mentions it. Nobody's counting.
With analytics, you see the scan events. If your code is being scanned regularly but conversions drop to zero, something broke on the destination side. You catch it in hours, not weeks.
Our guide on how to track QR code scans covers what to look for in your scan data and how to interpret the numbers.
FAQ
Can I fix a static QR code without reprinting it? Sometimes. If the broken destination lives on a domain you control, you can add a 301 redirect from the old URL to the correct one. Your server forwards anyone arriving at the old path to the right place, and the printed code keeps working. This only works if you own the domain the code points to and the domain is still live.
Do QR codes expire on their own? No. The physical pattern doesn't have an expiry date built in. A static QR code will scan indefinitely as long as the print is readable and the destination URL is live. Dynamic QR codes from a paid service may be paused if the subscription lapses, but the pattern itself doesn't degrade over time.
Why does my QR code work on my phone but not on someone else's? This is almost always a design or print quality issue. Low contrast, a small code size, a curved surface, or poor lighting push a borderline QR code below the threshold that older or lower-quality phone cameras can handle. Flagship phones are more forgiving. If a code works on some phones but not others, the pattern is marginal, not clearly broken. Increasing the size and improving contrast usually fixes it.
What is "link rot" and why does it matter for QR codes? Link rot is the natural decay of URLs over time as pages are deleted, restructured, or moved. It matters more for QR codes than for ordinary digital links because a broken link on a webpage can be corrected in seconds, but a broken link baked into a printed static QR code can only be fixed by reprinting. Physical materials outlive the web pages they reference all the time.
How long does a printed QR code last? A well-printed indoor QR code can last years, assuming the destination URL stays live. Outdoor codes exposed to UV, weather, and physical wear degrade faster. The URL is usually the weaker link. The print quality comes second.
Create a dynamic QR code, change the destination anytime, and see every scan. Free to start, no card.
Related guides
Make a QR code you can edit and track
Create dynamic QR codes, change the destination anytime, and see every scan. Free to start, no card.