QR Code Checker

Upload the code you are about to print. Get a score and the exact things to fix before it goes to the printer.

Analysed in your browser · No upload · No account

Drop the QR code image here, paste it, or click to choose a file
Uploaded image preview
Your score will appear here. The image is analysed in your browser and is never uploaded.

What the checker measures

Whether it decodesThe image is read with a standard open-source decoder. If that fails, so will many phones.
ContrastThe brightness difference between the modules and the background, as a ratio. 4.5:1 or more is the target; pastel or brand-coloured codes often fall below it.
Blank borderHow many modules of empty space surround the code on its tightest side. The standard asks for four.
Sharpness headroomThe image is shrunk until each module is 3, then 2 pixels wide, and decoded again. A code that survives has room for distance, small print and a shaky hand.
DensityThe more data a code holds, the more modules it has and the larger it must be printed. The checker reports the module count and the smallest sensible width.

How to read the score

85–100
Ready to print. Nothing in the image is likely to cause failed scans.
65–84
It works, with something to fix. Usually a tight border, mid contrast or a dense code.
Under 65
Likely to fail for some people. Fix the marked items before paying for print.

How to fix the most common problems

  • Low contrast. Make the modules darker, not the background more colourful. Near-black on white or cream is the most reliable pairing.
  • Tight border. Move text, frames and photo edges away from the code until four modules of empty space remain on every side.
  • Inverted colours. Swap them: dark modules on a light background. If the design needs a dark panel, put the code on a light patch inside it.
  • Dense code. Shorten what the code holds. A dynamic code stores a short link, so it stays light however long the destination is.
  • Logo too large. Keep the logo to about a fifth of the code width and use high error correction.

What this tool cannot tell you

It reads the image you upload, not the finished print. Ink spread on uncoated paper, glossy lamination, a curved bottle, poor lighting and a scratched phone lens all happen after this step. Treat a high score as “the artwork is sound”, then print one copy on the real material and scan it with an iPhone and an Android phone from the distance people will really stand at.

Frequently asked questions

Does this upload my image?

No. The analysis runs in your browser and the image never leaves your device.

Should I test a screenshot or a photo of the print?

Both are useful. The exported image file tells you whether the artwork is sound. A straight-on photo of a printed proof tells you what the paper and ink did to it.

My code scores low but scans on my phone. Is it a problem?

It may be. A recent phone in good light is the easiest case. The score reflects how much margin is left for older phones, dim rooms, distance and worn prints.

Can it check a code that has a logo in the middle?

Yes. If the code still decodes after shrinking, the logo is small enough. If the sharpness check fails, reduce the logo or raise the error correction level.

Start with a free code.

Analysed in your browser · No upload · No account

Create your QR code — free →