QR code shapes are a property of the drawing, not of the content: swapping square modules for round ones rearranges ink inside the same grid and leaves the encoded link untouched. The six module styles are square, rounded, dots, classy, classy-rounded and extra-rounded, and each one removes a little material from the corners of every module. A camera tolerates that easily at normal sizes and tolerates it less as the code shrinks or the printing softens, which is the one trade-off worth understanding before picking a style for something that goes to a printer.
Choosing a module shape that survives printing
Start from square and change one thing
Square modules fill the grid completely and are the most forgiving baseline. Change the module style first, look at the preview, and only then touch the corners — two changes at once make it hard to see which one cost you definition.
Set the corner squares separately
The three large squares are the alignment markers a camera finds before it reads anything. They have their own setting with three options, and keeping them square while the modules are round is a common combination precisely because it protects the part that matters most.
Decide on the dot inside the corners
The small block in the middle of each corner square can be square or round independently of everything else. It is the least risky of the three settings to change, because its job is bulk rather than edge precision.
Read the preview, not the thumbnail
MakeQR decodes the generated image before offering the download. If the decode fails the download is blocked, so treat a successful preview as the real test and a small on-screen thumbnail as no test at all.
Export SVG when a printer is involved
Rounded and classy styles are made of curves, and curves are where a resized bitmap shows its stair-stepping first. SVG keeps every edge mathematically exact at any output size.
Why a shape can cost you a scan but a colour cannot be rescued
Contrast and geometry fail in different ways. A low-contrast pairing fails everywhere at once, under every light, which makes it easy to catch. A shape failure is conditional: the code reads fine on a phone held 10cm from a monitor and stops reading on a matte label under a shop light, because ink spread has eaten the thin necks between round modules. That is why shape deserves a printed sample where colour often only needs a warning.
The thirty-six combinations, and the handful worth using
Six module styles multiplied by three corner-square styles and two corner-dot styles gives thirty-six permutations, and most of them are variations nobody will notice. The ones that read as deliberate are square throughout for maximum reliability, rounded modules with extra-rounded corners for a soft modern look, and dots with square corners when the code sits next to type that already has a lot of circles in it.
What shapes cannot do
A QR code is a fixed grid with required alignment patterns, so no setting turns the code itself into a circle, a logo outline or a silhouette. The outline stays square because the specification needs it to. What changes is how each cell inside that square is drawn, which is enough to make two codes look clearly different without touching the standard either of them has to obey.
What the shape leaves alone
The grid, the version, the error-correction level and the data itself are identical whichever shape you pick. A rounded code and a square code built from the same link produce the same bytes for any scanner, which is why switching style never invalidates something already printed as long as the content has not changed.
https://example.comGiving a shaped code room
Non-square modules lose a fraction of their area at every corner, and that loss is proportionally larger the smaller the code is printed. Where a square-module code is dependable down to about 20mm at arm's length, a rounded or classy style is safer one size class up, which also buys margin against the ink spread that soft paper introduces.
Print it at least 25 mm (2.5 cm) wide
Shape choices that come back at the printer
Rounding the corner squares and the modules together
Softening everything at once removes the sharp right angles a scanner uses to orient the grid. It usually still works, and it is the first combination to fail on a worn label or a code photographed at an angle.
Judging a curved style from a PNG scaled down in a layout
Page-layout software resamples bitmaps to fit a frame, and curves degrade in that resample before straight edges do. The code looks slightly fuzzy on screen and prints exactly as fuzzy as it looked.
Picking a style to match a logo that will also be placed on the code
A logo already covers the centre and raises error correction to level H to compensate. Stacking a thin module style on top of that spends the same budget twice, and the margin you were relying on is smaller than you think.
Shape is independent of static or dynamic
The style settings are saved with the code either way, so this choice does not push you toward one or the other. Use a static code, free and permanent, when the destination is fixed once it is printed. Choose dynamic when the link itself may need to change later; the first two dynamic codes are free forever, and the shape you picked is kept when the destination is edited.
How dynamic QR codes workWhere a deliberate shape earns its place
- A restaurant table card where rounded modules sit better with a soft-cornered menu design.
- A product label where the code shares space with a circular certification mark.
- A business card printed letterpress, where square modules hold the deepest impression.
- A large window decal where dots read as a pattern rather than as a technical artefact.