Troubleshooting

How to fix a blurry QR code, step by step

Paolo Matias TonelloUpdated 8 min read

A blurry QR code is one of the most common reasons a scan fails. The problem usually starts long before the code reaches the printer: it is exported at the wrong resolution, compressed by a messaging app, or scaled by software that anti-aliases the sharp edges the scanner needs.

Fix it in four steps

  1. Diagnose the blur: open the file at 100% zoom. Soft grey halos around the modules mean resampling or JPEG compression; hard but chunky squares mean the file is simply too small.
  2. Re-export from the source instead of retouching: SVG for anything printed, or a PNG rendered at the final physical size times 300 dpi.
  3. Check the physical size against the read distance (roughly one tenth of it) and keep the quiet zone of four modules intact after any resizing.
  4. Verify contrast and re-test: scan the actual proof with an iPhone and an Android at the real distance and lighting before approving the run.
DPI and pixel size needed per printed code size
Printed sizePixels at 300 dpiPixels at 600 dpiSafe format
15 mm (label)177 px354 pxSVG
25 mm (business card)295 px591 pxSVG
40 mm (table tent)472 px945 pxSVG
100 mm (poster)1181 px2362 pxSVG
300 mm (banner)3543 px7087 pxSVG

Why QR codes and barcodes become blurry

QR codes are designed to be read as a grid of sharp black and white squares, and 1D barcodes as sharp vertical bars. Anything that softens those edges makes decoding harder. The most common culprits are low-resolution PNG exports, JPEG compression, social media or chat apps that re-encode images, and scaling a small raster image up to print size.

  • Saving a QR code as JPEG instead of PNG or SVG
  • Compressing the image through email, WhatsApp or Instagram
  • Scaling a 200 px PNG to a 10 cm print
  • Printing through a driver that applies sharpening or smoothing
  • Laminating with a textured or matte film that scatters light

PNG vs SVG: which export keeps a QR code sharp

PNG is a raster format: it stores pixels. A PNG QR code is only sharp at the size it was exported. If you need it bigger, you must export it bigger. SVG is a vector format: it stores the exact position of every module as geometry. An SVG QR code stays razor-sharp at any size, from a business card to a billboard, because the printer recalculates the edges at the final resolution.

How to fix a blurry QR code image

  1. Go back to the source. Re-export the code as SVG from the generator if possible.
  2. If you only have a PNG, do not scale it up. Re-export at the exact print dimensions.
  3. Avoid JPEG. Its lossy compression introduces colour bleed around module edges.
  4. Open the image at 100% zoom and check that edges are still hard black and white.
  5. If a photo is blurry due to camera shake, retake it straight-on in even light.
  6. Use a QR sharpening tool only as a last resort; regenerating the code is safer.

Minimum resolution for sharp QR code printing

A safe rule of thumb is 300 pixels per inch of print. A 3 cm square code needs at least 350 pixels per side. But resolution is only half the story: the code must also have enough physical size for the scanning distance. A code that is sharp but 5 mm wide will still fail because the phone cannot resolve the modules from a normal distance.

Recommended QR code print sizes
Scanning distanceMinimum side lengthBest format
Handheld, 10-20 cm2.5 cmSVG or 300 dpi PNG
Table tent, 30-50 cm4 cmSVG
Poster, 1-2 m10 cmSVG
Banner or billboard, 3 m+30 cm+SVG

Blurred barcode on a photo, screenshot or scan

If the only copy you have is a photograph or a screenshot of a printed code, the missing detail cannot be recovered. Try decoding it first with a reader that tolerates noise; if that fails, the practical route is to read the destination from another copy and regenerate the code from the original data instead of retouching pixels.

  1. Retake the photo straight-on, filling the frame, in diffuse light with no flash glare.
  2. Turn off any beauty or HDR mode that smooths edges on phone cameras.
  3. Try a dedicated decoder on the file rather than the camera viewfinder.
  4. If it decodes, copy the payload and regenerate a clean code from it.
  5. If it does not, treat the code as lost and reprint from the source file.

Test before you print hundreds of copies

Always scan the proof from the distance and lighting your users will use. A code that scans perfectly on a bright desk may fail under restaurant lighting or when the phone is held at an angle. Print one copy, scan it with both iPhone and Android, and only then approve the full run.

FAQ

Can you sharpen a blurry QR code?

Not reliably. Sharpening filters raise local contrast but cannot restore the module edges the file has already lost. Regenerating the code from its data and exporting SVG is both faster and guaranteed to scan.

What DPI should a QR code be printed at?

300 dpi is the practical minimum for offset and digital print, 600 dpi for small labels under 20 mm. Vector SVG removes the question entirely because the printer rasterises at its own device resolution.

Why does my QR code look blurry after sending it on WhatsApp or email?

Messaging apps re-encode images as lossy JPEG and downscale them. Always send the original SVG or PNG as a file attachment, not inside a chat image.

How small can a QR code be before it stops scanning?

About 2 cm for a code read at arm's length, and only with a short encoded URL. Shortening the payload enlarges each module and buys back tolerance.

Author

Paolo Matias TonelloFounder, Qreator

Founder of MT Digital Services LLC and builder of Qreator. Writes about QR codes, print production and privacy-friendly analytics.

Put it into practice