QR Code Scanner Not Working? Here's How to Fix It

You're at a restaurant, pharmacy, or gate. You aim your camera at the code. Nothing. This post is the fix — all eight of them.

Most QR code scanner problems come down to one of a handful of causes, and almost all of them have a fix you can do in under a minute. Start at the top and work down — you'll likely find your answer within the first three.


The 8 Most Common Reasons a QR Code Won't Scan

1.

Camera too close or too far

Autofocus needs a bit of room to work. If you're hovering an inch away, the camera can't lock. Back up until the code fills roughly a third of your screen — that's the sweet spot where most phone cameras lock focus reliably. For tiny codes on receipts or name badges, getting closer actually helps more than pulling back (more on that in #8).

2.

Too much glare or too little light

Laminated menus, glossy signage, and outdoor screens are notorious for this. The fix is usually a slight angle change — tilt your phone 10–15 degrees so the reflection moves off the code. If you're in low light, turn on your flashlight before you scan. Dark restaurants and dim parking garages are where built-in cameras give up fastest.

3.

Damaged or low-contrast code

Torn corners, faded ink, codes printed on textured surfaces (like a rough cardboard box) — these all interfere with the pattern recognition the scanner needs to do. Built-in cameras take a quick pass and bail if they can't decode immediately. Dedicated scanner apps try multiple decode passes and adjust contrast algorithmically, which is why they often succeed where the native camera doesn't.

4.

Camera lens is dirty

Oil from your fingertips builds up on the lens faster than you think, and it wrecks focus. A quick 10-second wipe with a microfiber cloth — or even the inside of your shirt — is sometimes all it takes. This is especially common after eating, hence the restaurant menu problem.

5.

The built-in scanner is turned off

This one catches people off guard. On iPhone, go to Settings → Camera and check that Scan QR Codes is toggled on. On Android, it varies by manufacturer — some have it in Camera settings, others require enabling Google Lens. If you're on an iPhone and still stuck, the iPhone-specific guide walks through every toggle.

6.

The QR code itself is broken

Sometimes the problem isn't you — it's the code. Malformed codes happen when the generator had a bug, too much data was crammed in without error correction, or the file was exported at too low a resolution. Quick test: get someone nearby to try scanning it on their phone. If it fails everywhere, the code is genuinely bad and there's nothing to fix on your end.

7.

App needs a restart or update

Camera apps accumulate bugs over time, and a stale camera session sometimes gets stuck in a bad state where it stops detecting codes. Force-quit the app and reopen it — this fixes the frozen-camera problem more often than you'd expect. While you're at it, check for pending updates in the App Store or Google Play.

8.

The code is too small or printed at low resolution

Small codes on receipts, name badges, and product packaging can paradoxically benefit from getting closer, not further away. The phone's camera needs enough pixel data to resolve the pattern — if the code is tiny, give it more screen real estate by closing the gap. For very small codes, this overrides the general “back up a bit” rule from #1.


iPhone-Specific Fixes

A few iPhone quirks that trip people up more than the general advice above. The full iPhone QR scanner guide goes deeper, but here's the quick version:

  • Settings → Camera → Scan QR Codes must be ON. It's on by default, but it can get toggled off, especially after a restore or profile change.
  • Control Center has a separate QR scanner. If you added a Code Scanner tile to Control Center, that's a different scanner than the Camera app — and it has its own behavior. Neither one is better; they just behave slightly differently on certain code types.
  • iOS 11+ required for built-in scanning. If you're on an older device that can't update past iOS 10, the native Camera app won't scan QR codes — you need a dedicated app.
  • Scanned a URL but it just opened Safari? That's expected behavior. QR codes containing URLs always open in the browser — that's what they're designed to do.

Android-Specific Fixes

Android is more fragmented than iPhone, so the fix depends on which phone you're using. The Android QR scanner guide covers the major OEMs in detail — short version:

  • Samsung: Depending on your One UI version, QR scanning may live in the Camera app settings or inside Bixby Vision. If the Camera app isn't scanning, check the Camera settings menu for a QR code toggle.
  • Google Pixel: The Camera app should scan natively, but some builds route through Google Lens first. If Google Lens isn't enabled in your camera settings, the scan may silently fail. Enable it and try again.
  • Older Android (below 8.0): No native QR scanner. You'll need a dedicated app — the built-in camera simply won't do it regardless of settings.
  • Camera opens Google Lens instead of directly navigating? Normal behavior on stock Android. Lens decodes the code, shows you the URL, and you tap to open. It's one extra step but works fine for most codes.

When the Built-In Scanner Keeps Failing

Native phone scanners are good enough for the majority of codes — clean print, decent light, standard size. The problem is they fail predictably on a specific set of conditions: damaged codes, low contrast (gray on white, dark on dark), small codes, heavy glare, and low light. If those are your conditions, you've hit the ceiling of what the built-in camera is designed to handle.

A dedicated scanner app approaches image processing differently. It tries multiple decode passes, applies contrast normalization algorithmically, and doesn't give up after the first failed frame. The full breakdown of built-in scanner limitations explains exactly where the native camera draws the line — and why it draws it there. The short version: it's optimized for speed and convenience, not for difficult codes.


SnapScan — Built for the Codes That Don't Cooperate

SnapScan is designed specifically for the codes that give built-in cameras trouble — low light, low contrast, faded or damaged prints. It processes each frame more aggressively than the native camera will, which is why it reads codes that your Camera app simply shrugs at. No ads, works fully offline, one-time $14.97. Try SnapScan — $14.97 once, no subscription.


Common Questions

Why won't my phone camera scan QR codes?

The two most common culprits are a toggled-off setting (iOS: Settings → Camera → Scan QR Codes; Android: varies by OEM) and a physical condition issue like glare, dirt on the lens, or being too close. Run through the 8-point list above and you'll usually find it quickly.

Can a QR code expire?

Yes — some do. Static QR codes (those that encode the URL directly) don't expire on their own, but dynamic QR codes that redirect through a URL shortener absolutely can. Restaurant menus and event codes are frequently dynamic, which means the business controls when they go live and when they stop working. If a code scans successfully but the URL returns a dead page, the code itself is probably fine — the destination just expired.

What if the QR code is just broken?

Test it on at least one other device. If it fails consistently across different phones and apps, the code itself is likely malformed — bad generator, too much data compressed beyond what the error correction can handle, or exported at too low a resolution. At that point, contact whoever created the code; there is no scan-side fix for a truly broken code.

Does QR code scanning work in airplane mode?

Yes — decoding is done entirely on-device. The camera reads the pixel pattern, the app converts it to data, and the result appears on screen. Network access is only needed if the code encodes a URL and you want to open it. The scan itself is always offline.

Why does my QR code scanner keep freezing?

Freezing is a different problem from not scanning — it's usually related to app memory, ad SDK initialization, or a stale camera session rather than the code itself. That one has its own full diagnosis in the QR code scanner slow and lagging guide.


Most QR scanner problems have a 30-second fix. If yours doesn't, a dedicated app built for stubborn codes is worth $14.97 once.

Still can't scan? SnapScan handles the codes built-in cameras give up on.

One-time $14.97. No subscription. Works offline.

Get SnapScan — $14.97 One-Time

From the makers of this guide

No Ads. Just Scans.

SnapScan scans QR codes instantly — no ads, no tracking, works offline. One-time $14.97.

Get SnapScan — $14.97 (30-day guarantee)