How big should a QR code be?
The single most common reason a printed code fails.
The working rule is one tenth of the scanning distance. Read at arm’s length, about 30 cm, means 3 cm across. A poster read from 3 metres needs 30 cm. A billboard at 20 metres needs 2 metres, which is usually the moment somebody discovers the code was an afterthought in the layout.
That rule assumes a moderately simple code. Density matters just as much: a short link might need 25 modules across, while a full contact card can need 100+. At the same physical size, each module in the dense version is a quarter the width — and module width is what a camera actually has to resolve. Two codes the same size on paper can behave completely differently.
This is the strongest practical argument for a dynamic code on anything space-constrained: it encodes a short link regardless of how much content sits behind it, so the pattern stays sparse and scannable.
Set the intended print width in the generator and the readability check accounts for it, warning you when the content is too dense to survive at that size.