Scanproof

Make it beautiful.
We check that it still scans.

Style the code however you like. Before you download it, we render the finished thing and read it back with a decoder.

PRINT CHECK

VECTOR INCLUDEDNO ACCOUNTNEVER EXPIRES

Printing a QR code that still scans

How the print check works

Before you download, the page draws the finished code with your colours, shape, logo and frame, then reads it back with a QR decoder. The verdict follows the worst of the checks: Scan safe, Worth a look or Will not scan.

Contrast
Brightness difference between code and background, 0 to 100%. At 40% or more it passes, 25 to 39% warns, below 25% fails.
Logo coverage
Share of the code’s area the logo covers. Up to 22% passes, 23 to 30% warns, above 30% fails.
Polarity
Dark on light is normal. Light on dark gets a warning.
Quiet zone
The empty margin around the code. Always 4 modules, fixed.
Error correction
Level M, or level H once you add a logo.
Min print size
The smallest printed width for the reading distance you chose.
Decode test
Passed or Failed: could the decoder read the drawn code? If it cannot run in your browser, the row says Unavailable and only the rules apply.

What size to print it

The minimum printed width is one tenth of the reading distance, and never less than 20 mm. Print the downloaded image at least this wide:

Printed onRead fromPrint at least
Business card20 cm20 mm (0.8 in)
Table tent50 cm50 mm (2 in)
Wall poster200 cm200 mm (7.9 in)
Storefront500 cm500 mm (19.7 in)

How big the logo can be

Small and Medium always pass. Large passes except on a few mid-size codes, where it reads 23% and warns. Huge always exceeds 30% and reads Will not scan.

A logo hides modules. A QR code survives that only because it carries spare data, the error correction. With a logo the page raises it from level M to H, the highest, and builds the code one version larger, so the pattern gets finer.

Colour and contrast

Dark on light is the safe choice. Keep the brightness difference at 40% or more: the Soft grey palette measures 21% and fails.

A light code on a dark background, like the Inverted palette, also gets a warning. Phones usually read it, but some older scanners read only dark on light.

Codes made from a short link

A short link redirects to the address you give it, and the printed code holds only the short link. So you can change the destination later without reprinting: from the next scan on, the code opens the new address. Only the edit key, shown once when you create the link, can change or delete it, so save it right away. The catch: the code works only while this service is online.

What the check cannot tell you

The decoder runs in your browser on a clean digital image, with one reader (jsQR) at one resolution. It cannot see smeared ink, rough paper, glare or a curved surface. A pass means very likely fine, not guaranteed. Before a big print run, print one copy at the final size and scan it with a few phones.