Universal compatibility is the practical reason most people reach for PNG from any generator: it works everywhere without worrying whether a form or a printer accepts vector files, which makes it reliable for screens, documents and most upload boxes. PNG stores a QR code as a fixed grid of pixels rather than scalable shapes, and that's exactly why resolution matters more here than it does with a vector format.
A file exported small and then stretched to fit a larger space loses the crisp edges a scanner depends on. Getting the resolution right at export time, matching or exceeding the size the code will actually be displayed or printed at, avoids that problem without needing a vector alternative at all.
Exporting a PNG that stays sharp at its intended size
Decide the final display or print size first
A code destined for a 5 cm sticker needs a different export resolution than one going on a 30 cm poster, even though both are PNG.
Export at 300 dpi for anything printed
Print production generally expects 300 dots per inch — a 5 cm (about 2 in) code at 300 dpi needs roughly 600×600 pixels to stay sharp.
Match pixel dimensions to on-screen display size for digital use
A code shown at 200×200 pixels on a web page only needs to be exported around that size, not significantly larger or smaller.
Never resize a low-resolution PNG upward after the fact
If the exported file turns out too small for its final use, regenerate it at the correct resolution rather than stretching the existing image.
Why resolution matters more for PNG than for a vector file
A PNG's pixel grid is fixed the moment it's exported — there's no additional detail hidden inside the file to reveal by enlarging it, only the existing pixels stretched across more space, which is what produces visible blur and soft edges on the code's modules. A vector file avoids this by redrawing its shapes fresh at any size, but a PNG doesn't have that option once it's saved.
The 300 dpi rule, applied to a QR code specifically
Standard print production assumes 300 dots per inch for anything viewed up close, which for a QR code means working backward from the physical size it needs to be: a 2 cm code needs at least about 240×240 pixels, and a 10 cm code needs around 1,200×1,200 pixels, to hold that resolution at its final printed dimensions.
When PNG is genuinely the better pick over a vector file
A code embedded in a document that won't be resized, uploaded to a platform that restricts vector formats for security reasons, or displayed once on a fixed web page layout gets no real benefit from vector scaling — PNG's universal support and simplicity make it the more practical choice in exactly those cases.
What resolution does and doesn't affect
Pixel resolution changes only how sharply the code renders at a given size — it has no effect on what the code actually contains. A static PNG holds its destination directly; a dynamic one holds a short, repointable link, at any resolution.
https://example.com/downloadMatching pixel dimensions to physical print size
Regardless of resolution, the physical floor stays about 20 mm on a side for a close scan, and scanning distance runs roughly ten times the code's printed width — resolution only determines whether that physical size renders sharp or blurry.
Print it at least 20 mm (2.0 cm) wide
Where PNG exports go wrong
Exporting at screen resolution and then printing
A PNG sized for a web page is typically far below 300 dpi once printed at any meaningful physical size, producing a visibly soft result.
Stretching an existing file instead of regenerating it
Resizing a PNG upward in image-editing software doesn't add real detail — it only enlarges the existing blur.
Not accounting for the final print size before exporting
Exporting at a single default resolution regardless of whether the code ends up on a sticker or a poster leads to a mismatch for one of the two uses.
Resolution and dynamic status are unrelated choices
A PNG's pixel resolution has nothing to do with whether the code is static or dynamic — that decision depends on whether the destination might need to change after the file is already in use, not on the export settings.
How dynamic QR codes workWhere PNG is the practical default
- A code embedded in an email signature at a fixed display size.
- A code uploaded to a platform that restricts vector file uploads.
- A code included in a slide deck that won't be resized later.
- A code added to a web page at one known display size.