QRAnalytica

Should I Download My QR Code as SVG or PNG for Print?

For print, download your QR code as SVG: it stays sharp at any size. Use PNG only when a tool can't take SVG, sized to whole pixels per module.

Nookesh Karri · 8 min read
Dark cover card with the title 'Should I Download My QR Code as SVG or PNG for Print?' in white and a lime accent bar

Download your QR code as SVG for print. An SVG is vector artwork, so the printer draws every square at its own resolution and the edges stay sharp at any size. Use a PNG only when the tool you’re designing in can’t take SVG, and then export it at the exact print size with a whole number of pixels per module.

SVG or PNG QR code: the short answer

Where the file ends up decides it. Print shops, packaging and anything that may be resized want SVG; screens and tools that only accept images want PNG.

Where the code is goingDownloadWhy
Print shop, packaging, signageSVGVector, sharp at any size
Layout tool (InDesign, Illustrator, Affinity)SVGPlace it and export a PDF
Word or PowerPoint on Windows, Mac or AndroidSVGMicrosoft 365 inserts SVG files
Word or PowerPoint on iPhone or iPadPNGYou can’t insert SVG on iOS
Website, email, slide shown on a screenPNGDisplayed at a fixed size
AnythingNot JPGLossy compression softens the edges

What’s the difference between SVG and PNG?

SVG describes shapes. PNG stores pixels.

MDN describes SVG as an XML-based markup language for vector graphics, and says SVG images “can be rendered at any size without loss of quality” compared with formats like JPEG or PNG. A QR code is just black squares on white, which is exactly what vector graphics are good at.

The W3C PNG specification defines PNG as a format for “lossless, portable, well-compressed storage” of raster images. Lossless means PNG keeps every pixel exactly. The catch is the word raster: a PNG has a fixed number of pixels, and stretching it past that number makes the printer invent pixels in between.

Why SVG is the safer file for print

SVG is the safer print file because the printer never has to scale pixels. It reads “a square here, a square there” and draws each one at its own resolution.

That matters for QR codes in a way it doesn’t for photos. A phone reads the code by finding the edges of each module (one small square of the pattern). DENSO WAVE, the company that created the QR code, recommends at least 4 printer dots per module for stable reading. Blurry edges eat into those dots.

With an SVG, the same file works on a business card and on a banner. A designer can resize it in the layout without coming back to you for a new export.

If a print shop asks for PDF or EPS, they want vector artwork. Place the SVG in your layout tool and export a PDF from there. A size guide from U2L gives the same advice: SVG, “or EPS/PDF”, whenever the file goes to a printer.

When a PNG is the better choice

A PNG is the better choice when the code will only ever be shown at one size, or when the app you’re using can’t take SVG. Two common cases:

  • Screens. A code on a website, in an email or on a slide shown on a projector displays at a fixed pixel size. A PNG at that size is simple and works everywhere.
  • Office on iPhone or iPad. Microsoft’s support page says Word, PowerPoint, Outlook and Excel for Microsoft 365 on Windows, Mac and Android can insert SVG files. It also says plainly: “You can’t insert an SVG image in iOS.” On those devices, a PNG is your only option.

Working in Canva? Our guide to putting a dynamic QR code in Canva covers that workflow.

How to size a PNG QR code so it prints sharp

To print a PNG QR code sharp, export it at the final print size and make every module a whole number of pixels. “High resolution” alone isn’t enough.

The usual rule for raster print files is DPI. The U2L guide says to “aim for 300 DPI at the final print size” for commercial printing, and says 150 DPI is often acceptable for large signs viewed from 3 metres or more.

The step most guides skip is the module grid. If a module is a fraction of a pixel too wide, the software has to blend the edge pixel into gray. If it’s exactly 10 pixels, every edge lands on a pixel boundary and stays black or white. Here’s the math with DENSO WAVE’s own numbers:

  1. Count the modules. DENSO WAVE says a Version 3 code is 29 modules wide, and every code needs “a four-module wide margin at all sides.” So the image is 37 modules across.
  2. Pick whole pixels per module. At 10 pixels per module, the PNG is 370 pixels wide.
  3. Check the printed size. At 300 DPI, 370 pixels prints about 1.23 inches, roughly 3.1 cm. That clears Vistaprint’s minimum of 2 cm x 2 cm.
  4. Place it at full size. Don’t let the layout tool scale it up or down, or you lose the whole-pixel grid you just built.

If you need it bigger, raise the whole number of pixels per module, not the export scale. For more on sizes, see what size a QR code should be for printing.

Why you should skip JPG

Skip JPG for QR codes because JPG compression is lossy: it throws away detail and leaves faint smudges around sharp edges. The U2L guide puts it bluntly: “Never save QR codes as JPG.”

PNG does the same job without that loss.

Common file mistakes that stop a printed code scanning

Most file problems come from resizing a raster image or cropping the margin.

  • A screenshot of the code. It’s a low-resolution PNG in disguise. Download the real file.
  • A small PNG stretched in the layout. The edges go soft. Use the SVG, or re-export the PNG at the print size.
  • The margin cropped off. DENSO WAVE’s four-module margin is part of the code. Leave it in the file.
  • A logo pasted in a photo editor. Flattening the code with a logo can blur it. Our guide to putting a logo in the middle of a QR code covers the safe way.

Before the full run, ask for a proof. Vistaprint suggests you “create a PDF proof and check it for the actual size,” and then scan the printed proof with a phone. Our checklist for printing a QR code that scans walks through the rest.

What I’d download

My take: download both, use the SVG for anything that touches paper, and keep the PNG for the website and email footer. It costs nothing to have both, and it stops a designer screenshotting the code from a PDF.

In QRAnalytica you can download a code as SVG, PNG or JPEG from the free QR code generator. One limitation: there’s no direct EPS or PDF download, so if your printer insists on one of those, place the SVG in a layout tool and export the PDF yourself.

The other limit is on the SVG side. It only helps if every tool in the chain keeps it as vector. If someone opens it in a photo editor and saves a raster copy, you’re back to pixels, so tell your designer to place the file, not convert it.

FAQ

Is SVG always better than PNG for a QR code?

For print, almost always, because a vector file stays sharp at any size. For a website, an email or a slide shown on screen, a PNG at the size it will be displayed works just as well.

What resolution should a PNG QR code be for printing?

One common guideline is 300 DPI at the final print size. Better still, make each module a whole number of pixels so the edges stay crisp, and include the four-module margin in the image.

Can I use JPG for a QR code?

Avoid it. JPG compression is lossy and can smear the edges of the squares. If you need a raster file, PNG is lossless.

My printer asked for a PDF or EPS. What do I send?

Place the SVG in your layout tool and export a PDF from there. A PDF keeps the code as vector artwork, which is what the printer is asking for.

Can I put an SVG QR code in Word?

Yes, in Word for Microsoft 365 on Windows, Mac and Android. On an iPhone or iPad you can’t insert an SVG, so use a PNG there.

Sources

Track your dynamic campaigns. 7-day trial, no credit card.
Generate Dynamic QR