What size does a 3D printed QR code need to be
By Tiehl Roberto Matías · 7 min read · Updated 25 October 2026
«How big should I make it?» is the question that comes up most and gets answered worst, usually with a single number and without anyone asking what nozzle you print with. The minimum size is not an opinion: it comes out of a multiplication with three numbers in it.
The three numbers you need
To know how big the piece has to be you need to know, in this order:
- How many modules your code has. That depends on the link you put in, not on the piece.
- Your nozzle diameter. Almost always 0.4 mm, sometimes 0.6.
- How far away it will be scanned from. This pushes the minimum up, never down.
Number 1: how many modules your code has
The module count is decided by how much information goes in. A QR code has 40 versions and each
one adds four modules a side: version 1 is 21 × 21 and version 40 is 177 × 177. The formula is
modules = 17 + 4 × version.
What decides the version is how many characters you put in and which error correction level you pick. This table says how many characters fit in each version, worked out with the encoder of this same site:
| Version | Modules | Level L | Level M | Level Q | Level H |
|---|---|---|---|---|---|
| 1 | 21 × 21 | 17 | 14 | 11 | 7 |
| 2 | 25 × 25 | 32 | 26 | 20 | 14 |
| 3 | 29 × 29 | 53 | 42 | 32 | 24 |
| 4 | 33 × 33 | 78 | 62 | 46 | 34 |
| 5 | 37 × 37 | 106 | 84 | 60 | 44 |
| 6 | 41 × 41 | 134 | 106 | 74 | 58 |
| 7 | 45 × 45 | 154 | 122 | 86 | 64 |
| 8 | 49 × 49 | 192 | 152 | 108 | 84 |
| 9 | 53 × 53 | 230 | 180 | 130 | 98 |
| 10 | 57 × 57 | 271 | 213 | 151 | 119 |
Read it left to right: find your character count in the column for your level and see which version you land on. With 40 characters at level M you are on version 4, 33 modules a side.
Number 2: the minimum module size
Here is the physical limit. The printer lays down a bead of material roughly as wide as the nozzle diameter. For a module to come out as a square with straight edges, rather than as a stretched blob, two beads have to fit inside it.
| Nozzle | Minimum module | Comfortable module |
|---|---|---|
| 0.2 mm | 0.4 mm | 0.6 mm |
| 0.4 mm | 0.8 mm | 1.0 mm |
| 0.6 mm | 1.2 mm | 1.5 mm |
| 0.8 mm | 1.6 mm | 2.0 mm |
All of this table is filament printing. In resin there is no nozzle and the limit comes from the camera that will read the code rather than from the machine: the minimum module drops to about three tenths of a millimetre. The numbers are in the resin guide (in Spanish).
There is a second minimum that almost nobody looks at and that sometimes outranks this one: the one imposed by layer height, because the relief can only be a whole number of layers. That is in the layer height guide (in Spanish). The «comfortable» column is the one actually worth using. The minimum works with the printer well calibrated and the first layer at exactly its height; the comfortable value also works on the days the machine is not at its best.
Careful with big nozzles. Plenty of people fit a 0.6 mm nozzle to print faster and then cannot work out why their codes stopped reading. At 0.6 mm, a version 5 QR needs 54 mm a side as a minimum against the 36 mm it wanted with the 0.4: half as much piece again for the same code. For QR codes, the fine nozzle is not a fussy preference. If you want to find where the line falls on your own printer, the test kit (in Spanish) is six pieces and thirty-five grams.
The formula
side of the piece = (modules + 8) × minimum module
The 8 modules added on are the quiet zone: four on each side, required by the standard. Without them the reader cannot find where the code ends.
If you would rather not do the arithmetic by hand, the size calculator (in Spanish) does it with your exact content: you paste the link, pick your nozzle and it gives you the millimetres.
Worked table for a 0.4 mm nozzle
| Version | Modules | Minimum (0.8 mm) | Comfortable (1.0 mm) |
|---|---|---|---|
| 1 | 21 | 23.2 mm | 29.0 mm |
| 2 | 25 | 26.4 mm | 33.0 mm |
| 3 | 29 | 29.6 mm | 37.0 mm |
| 4 | 33 | 32.8 mm | 41.0 mm |
| 5 | 37 | 36.0 mm | 45.0 mm |
| 6 | 41 | 39.2 mm | 49.0 mm |
| 7 | 45 | 42.4 mm | 53.0 mm |
| 8 | 49 | 45.6 mm | 57.0 mm |
| 10 | 57 | 52.0 mm | 65.0 mm |
Worked table for a 0.6 mm nozzle
| Version | Modules | Minimum (1.2 mm) | Comfortable (1.5 mm) |
|---|---|---|---|
| 1 | 21 | 34.8 mm | 43.5 mm |
| 2 | 25 | 39.6 mm | 49.5 mm |
| 3 | 29 | 44.4 mm | 55.5 mm |
| 4 | 33 | 49.2 mm | 61.5 mm |
| 5 | 37 | 54.0 mm | 67.5 mm |
| 6 | 41 | 58.8 mm | 73.5 mm |
| 8 | 49 | 68.4 mm | 85.5 mm |
| 10 | 57 | 78.0 mm | 97.5 mm |
Number 3: the reading distance
So far we have worked out the minimum for the printer to be able to reproduce the code. What is missing is the minimum for the camera to see it from wherever people will be standing.
The rule of thumb used in signage works here too:
maximum reading distance ≈ 10 × side of the code
| Side of the code | Reads comfortably up to | Typical use |
|---|---|---|
| 30 mm | 30 cm | Keychain, in the hand |
| 50 mm | 50 cm | On the counter |
| 90 mm | 90 cm | Stand on the table |
| 150 mm | 1.5 m | Wall plate |
| 300 mm | 3 m | Shop window, sign |
It is a conservative rule: a modern phone in good light reaches considerably further. But it is built for the realistic worst case, which is somebody with an old phone in mediocre light, and that is exactly the case you have to cover once the piece is printed and screwed to a wall.
If the size you end up with does not fit on your printer's bed, read the guide to oversized codes (in Spanish) before cutting the piece into chunks: usually you do not need to, and when you do there are cuts that cannot be made.
The final size
Take the two numbers — the one from the nozzle and the one from the distance — and keep the larger of the two. That is your size.
A worked example. You want a plate for the workshop wall linking to a machine's manual, and it will be scanned from a metre and a half away:
- The shortened link is 38 characters at level M → version 4, 33 modules.
- With a 0.4 mm nozzle and a comfortable 1.0 mm module → 41 mm minimum for printing.
- To read at 1.5 m you need 150 mm of code.
- The second one wins: the plate is made 150 mm, and the modules end up at 3.6 mm each, comfortable even for a 0.8 nozzle.
There is one case where this calculation cannot be applied as it stands, because the size is decided in advance: the 3D printed business card (in Spanish). There the piece measures whatever a pocket measures, and the only variable left is shortening the link until the modules fit. And with even less room, on a pet collar tag (in Spanish), where the size is decided by the animal wearing it.
Or let the tool work it out
The generator tells you the version and the module count of your code as soon as you paste the link, and sizes the object so the modules never drop below what your printer can lay down.
Open the generatorKeep reading
- Which filament pairs work and which ones ruin the scanWhy red on black does not read even though it looks different, and the list of pairs that do work.
- Your 3D printed QR code will not scan: nine causes and their fixesAn ordered diagnosis, from the most common cause to the rarest, with the check that rules each one out.