Read a Blurry QR Code
Drop in a photo of a QR code that won't scan: blurry, dark, low-contrast, unevenly lit or engraved on metal. If it doesn't read as it is, the photo is cleaned up in your browser and tried again. Nothing is uploaded.
Drop a photo of the code
Blurry, dark, low-contrast or engraved codes get an extra clean-up pass
Results
Add a photo of the code that won't scan. The result appears here, and links are never opened automatically.
What the reader does to your photo
First it reads the photo as it is. If that fails, it builds cleaned-up versions and tries each one until a code reads, then tells you what it took. It stops after a few seconds.
Inverts the colors
Scanners look for dark corner squares on a light background. Engraved metal and white-on-black codes are the other way round.
Stretches the contrast
Grey-on-grey and faded print are spread over the full range from black to white.
Evens out the lighting
Each part of the photo is compared with its own neighborhood, so a code that is bright on one side and shadowed on the other still splits into clean dark and light squares.
Sharpens and resizes
Soft edges between squares are steepened, small codes are enlarged and huge photos are shrunk, which also smooths out noise.
None of this adds detail the camera didn't capture. It removes what stops a decoder from seeing detail that is there. When the squares of the code have blurred into each other, the only fix is a better photo.
Why a QR code won't scan, and how to fix it
Blurry or out of focus
Phone cameras can't focus very close, and a moving hand smears the squares together.
Fix: Move back a little or use macro mode, tap the code to focus, hold steady. Mild blur often reads here; heavy blur needs a new photo.
Glare or reflections
A bright patch on glossy labels, laminate or metal wipes out part of the code.
Fix: Light from the side, tilt the code or the phone until the glare moves off it, and turn off the flash.
Low contrast
Faded print, grey on grey, or a dark room leaves too little difference between squares.
Fix: Add light, and try this reader: it stretches the contrast before decoding.
Light-on-dark (inverted) colors
Engraved metal, white-on-black stickers and dark-mode codes reverse the usual colors, and many scanners don't check for that.
Fix: Use a scanner that tries inverted codes, like this one. On metal, tilt until the engraving contrasts with the surface.
Too small or too far away
Each square needs a few pixels in the photo. A small code across the room is only a handful of pixels wide.
Fix: Move closer or zoom in optically, then crop the photo to the code.
Damaged, scratched or dirty
Scratches, peeling and grime remove parts of the code.
Fix: Clean it. Error correction covers some damage, but if the corner squares are damaged, the code needs replacing.
Missing quiet zone
QR codes need an empty border four squares wide. Codes printed edge to edge, or with text crowding them, can't be located.
Fix: Include the border in the photo. If the code was printed without one, reprint it with the border.
Wavy lines on a screen (moiré)
Photographing a screen makes the screen's pixel grid clash with the camera's, adding wavy bands.
Fix: Take a screenshot instead and drop it on this page, or change the angle and distance.
How QR error correction works
A QR code stores its data together with extra recovery data (Reed-Solomon error correction). Whoever makes the code picks one of four levels. The higher the level, the more of the code can be missing or misread and still be rebuilt, and the denser the code gets for the same data.
| Level | Can recover | Good for |
|---|---|---|
| L | about 7% of the codewords | Clean environments, the smallest code for the data |
| M | about 15% of the codewords | The usual default for print |
| Q | about 25% of the codewords | Labels that get handled |
| H | about 30% of the codewords | Labels on equipment that wears, or codes with a logo in the middle |
That is why a scratched or partly covered code can still scan: the damage hits a limited number of codewords and the rest rebuild them. Two things error correction can't handle. The three large corner squares are how a scanner finds the code at all, so they need to be intact. And blur is not local damage: it softens every square at once, so past a point there is nothing left for error correction to work with.
How to take a photo that scans
- Get close, but stay in focus. Most phones can't focus nearer than about 10 cm. Use the macro or close-up mode if your phone has one, or step back and zoom in.
- Fill the frame with the code. Keep the white border in the shot and crop out everything else before uploading.
- Light from the side. Glare from straight on hides squares. On engraved or metal tags, tilt the tag until the code stands out from the surface.
- Hold steady and tap to focus. Brace your elbows, tap the code on screen, and take two or three shots.
- Clean the surface. Dust, grease and fingerprints on a label or its cover blur it as much as a shaky hand.
- For a code on a screen, take a screenshot. It is always sharper than a photo of the screen.
Making QR codes that keep scanning
If you print QR codes for equipment, signs or tags, most scanning problems can be avoided when the code is made.
Size for the scanning distance
A common rule of thumb is a code at least one tenth as wide as the distance it is scanned from, and not much under 2 cm for close-up scanning. Shorter content makes a less dense code with bigger squares.
Error correction H for labels that wear
Level H rebuilds about 30% of the code, so scuffs and scratches matter less. Make the code a little larger to keep the squares the same size.
Strong contrast and a quiet zone
Dark squares on a light background read everywhere. Leave an empty border four squares wide on every side, and keep text and edges out of it.
Durable labels for equipment
Paper labels fade and peel. On tools and gear that get handled, use laminated, polyester or metal labels and place them where they won't rub.
Make codes with the free QR code generator and lay out printable labels with the free asset label designer.
FAQ
Can you fix a blurry QR code?
Sometimes. This reader inverts the colors, stretches the contrast, evens out the lighting, sharpens and resizes the photo, and tries each version until one reads. That rescues codes that are soft, dim or unevenly lit. If the blur has merged neighboring squares into one smear, the information is no longer in the photo, and no tool can bring it back. Take a new, sharper photo instead.
Why won't my QR code scan?
The usual causes are blur, glare, low contrast, light-on-dark colors, a code that is too small or too far away, damage, a missing white border (quiet zone), or wavy moiré lines when photographing a screen. Each has a different fix; the section on this page goes through them one by one.
Can a damaged QR code still be scanned?
Often, yes. QR codes carry error correction: depending on the level chosen when the code was made, a reader can rebuild roughly 7%, 15%, 25% or 30% of the data. A scratch or a torn corner is fine as long as the three large corner squares are still visible. Damage beyond that level, or to the corner squares, can't be read.
Does it read light-on-dark or engraved QR codes?
Yes. Laser-engraved metal tags, white-on-black stickers and dark-mode codes have reversed colors, which many scanners skip. This reader tries the inverted image when a photo doesn't read as it is, and the camera tries an inverted frame every half second or so.
Is my photo uploaded?
No. The photo is decoded and cleaned up in your browser. Images, camera video and the decoded text stay on your device, and the list is gone when you close the page unless you copy or download it.
What if it still won't read?
Take a new photo: move closer or use your phone's macro mode, fill the frame with the code, light it from the side to avoid glare, hold steady and tap to focus, and crop out everything else. If the code itself is worn out, ask whoever made it for a new one. Codes printed with a higher error correction level last longer.
Does it read other kinds of codes?
Yes. The clean-up pass works on QR codes, Data Matrix and Aztec codes. Sharp photos of 1D barcodes such as UPC, EAN and Code 128 read too, through the normal pass. The barcode scanner page covers those formats.
QR codes for your equipment
Shelf gives every asset its own QR code. When a tag is too worn to scan, the asset isn't lost: type the ID printed under the code or search for the asset by name, then link a new label to it. See QR code not scanning in Shelf.
Related free tools
































































Ready to organize your assets?
Join thousands of teams who trust Shelf to manage their physical assets. Free forever, or try the Team plan free for 7 days.
Out in the field? Shelf Companion is free on iPhone & Android.
