Skip to content

Guide

What Size Should a QR Code Be? A Table by Scan Distance

A QR code fails at the size where its individual squares get too small for a camera to separate them. That threshold depends on how far away the phone is, how much data the code carries, and what it is printed on. The rule of thumb — the code should be about a tenth of the distance it is read from — gets you most of the way there, and the rest of this explains when it is not enough.

The rule that covers most cases

Print the code at roughly one tenth of the distance it will be scanned from. A code read from three metres wants to be about thirty centimetres across. One on a table, read from thirty centimetres, wants about three.

The reasoning underneath it is the module: one of the small squares the pattern is built from. A camera has to resolve each one separately, and phone cameras manage that comfortably down to about half a millimetre per module in print. Since a code is between 21 and 177 modules wide depending on how much it carries, the physical width you need follows from the module count — the ten-to-one rule is that arithmetic rounded into something you can use without doing it.

Treat the result as the smallest size that works, not the size to aim for. Every real-world factor in the fourth section pushes it upward, and none of them push it down. Printing generously costs nothing; reprinting because it scanned in the office and not in the shop costs the whole run.

Sizes by where the code is placed

Below, the first number is the minimum from the rule, and the second is what to print if you have the space. The gap between them is the margin for bad light, an older phone, a hurried customer and a long URL.

  • Table tent, menu, receipt — read from about 30 cm: 3 cm minimum, 4 cm comfortable.
  • Business card or badge — read from about 30 cm, but on a small surface: 2 cm is the practical floor and demands a short destination.
  • Flyer, leaflet, product label — read from 30 to 50 cm: 3 to 5 cm minimum, 5 cm comfortable.
  • Packaging on a shelf — read from about 50 cm: 5 cm minimum, 6 cm comfortable.
  • Window sticker or counter sign — read from 1 m: 10 cm minimum, 12 cm comfortable.
  • In-store poster — read from 2 to 3 m: 20 to 30 cm minimum, 35 cm comfortable.
  • Wall poster or banner — read from 5 m: 50 cm minimum, 60 cm comfortable.
  • Billboard read from the pavement — 10 m: 1 m minimum. From a road, at 20 m or more: 2 m and upward, and consider whether a QR code is the right instrument at all.

A longer URL makes a bigger code

This is the factor people miss, because it is invisible until the code is already dense. A QR code holds more characters by adding modules: the smallest version is 21×21, and it steps up to 177×177 as content grows.

At a fixed printed size, more modules means each one is physically smaller — so a campaign URL with UTM parameters can halve your effective module size compared with a short address, at exactly the same width on the page. The pattern looks busier, and busier patterns fail earlier in poor light.

The cheapest fix is a shorter destination. A dynamic code carries a short redirect address by construction, which is why the same physical size scans more reliably with one; if you are printing a static code, shortening the URL on your own domain does the same job.

Five things that mean you need more than the minimum

The rule assumes good conditions. Each of these takes some of that margin away, and they add up rather than replacing one another.

Low contrast between the pattern and its background; anything below a clear dark-on-light relationship costs you readable distance. Textured, reflective or curved material — kraft paper, foil, bottles, fabric — scatters the edges of every module. Poor or coloured light, which is most bars, most evenings and most warehouses. Movement, whether the code moves or the reader does: escalators, vehicles, a screen in a rotation. And a logo in the middle, which removes modules that error correction then has to reconstruct.

If two or more apply, go up a size from the table rather than testing at the minimum and hoping. Three or more, and it is worth asking whether the placement is right at all.

The quiet zone is part of the size

The specification requires a clear margin of four modules on all four sides. It is not decorative padding: it is how a scanner finds where the code ends and the world begins.

This matters for layout because the quiet zone is usually what gets eaten. A designer fits the code into a box, text creeps up to its edge, a background image runs underneath it, and the code that measured correctly now fails. When you specify a size, specify the size including that margin, and keep it the same colour as the light modules.

Practically: if your code is 3 cm across at 25 modules, one module is 1.2 mm and the quiet zone is about 5 mm on each side. Anything closer than that — a price, a border, a fold — is a defect, not a tight layout.

Resolution, format and the final check

Export vector — SVG or PDF — whenever the destination file allows it. A vector code is resolution-independent and scales to a billboard without softening an edge. If you must supply raster, generate the PNG at the final printed size at 300 dpi or more, and never scale a small PNG up: an upscaled code has blurred module edges, which is the same failure as printing it too small.

Then test on the actual material at the actual size, because that is the only test that means anything.

  • Print a proof at final size on the real stock, not on office paper.
  • Scan it from the distance the customer will actually stand at, not from arm’s length over a desk.
  • Test on at least one Android and one iPhone, and on an older phone if you can find one.
  • Test in the light the placement will live in, including after dark.
  • For anything laminated or behind glass, test at an angle as well as straight on.
  • Check that the quiet zone survived the layout and that nothing overprints the code.
  • Confirm the destination opens on mobile data, not only on the office network.

About the author

Andrii Petlovanyi

Builds Mosaqo across web, iOS and Android.

FAQ

Frequently asked questions

What is the minimum size for a QR code?

About 2 cm across for a code held in the hand with a short destination, and that is a floor rather than a recommendation. Below roughly half a millimetre per module, phone cameras start to struggle, and a small code carrying a long URL crosses that line while still looking fine on screen.

How big should a QR code be on a poster?

Roughly a tenth of the reading distance. An in-store poster read from two to three metres wants 20 to 30 cm; a wall poster read from five metres wants about 50 cm. If the poster is in a corridor where people pass rather than stop, print the larger figure — nobody walks back to scan something.

Does a QR code with a logo need to be bigger?

Yes, in practice. A logo covers modules that error correction then has to reconstruct, which spends margin you would otherwise have for distance, light and material. Keep the logo under roughly a quarter of the code area, raise the error correction level, and print a size up from the table.

Can I scale up a QR code image?

Only from a vector file. Scaling a small PNG up softens the edge of every module, and a soft edge fails for the same reason a small module does. Export SVG or PDF for print, or generate the raster at final size at 300 dpi and above.

NEXT STEP

READY FOR YOUR FIRST QR?

Create a QR code and test it before print

The first Mosaqo release is free and requires no payment card.

Start free