How to add a QR code to a Canva design
There are two ways to add a QR code in Canva: use the QR code app in the editor's Apps panel for a quick link code, or make a styled code in a free generator and upload it as SVG or transparent PNG. Either way, test-scan the downloaded design before you print.
17 September 2026
Method 1: Canva's QR code app
Canva has a QR code app inside the editor. It turns a link into a code and drops it onto your page, which is ideal for a quick flyer or social post.
- Open your design in the Canva editor.
- Select Apps in the side panel and search for QR code.
- Open the QR code app and paste your link.
- Generate the code. Canva adds it to your page.
- Drag it into place and resize it from a corner.
Method 2: upload a styled QR code
Canva's app is built around links and has limited design options. If you want your logo in the middle, a frame with a label, rounded dots, a gradient, or a code for Wi-Fi, a contact card or WhatsApp, make it in a dedicated generator and upload it.
- Make the code in a free generator and style it to match your design.
- Download it as SVG, or as PNG with a transparent background.
- In Canva, open Uploads and select Upload files.
- Choose the file, then drag it from Uploads onto your design.
- Resize it from a corner so it does not stretch, and place it on a light, plain area.
Which method to use
- Canva's app: a plain link code, made in seconds, without leaving the editor.
- An uploaded code: your logo, colours, frames, other content types, and a file you can reuse on your website, packaging and other print work.
- An uploaded SVG stays sharp at any size and, in Canva, its colours can be changed like other graphics.
- NeoReader test-scans the design as you build it, so you know it reads before it goes into your layout.
Placing a QR code on a Canva design
Canva makes it easy to do things to an image that quietly stop a code scanning. Keep these rules in mind as you lay out the page.
- Keep the code dark on a light, plain background. Do not place it over a photo or a busy pattern.
- Do not lower its transparency, apply filters or add effects such as shadows to the code.
- Leave a clear margin around it, about four of the code's small squares on every side.
- Do not crop into the edges of the code, and do not rotate it at an odd angle on a printed piece.
- If you recolour an SVG, keep the dots clearly darker than the background. Pale and pastel codes often fail.
- Lock the element once it is placed, so it does not get nudged or resized by accident.
- Add a short call to action next to it, such as "Scan to book", so people know what they will get.
Downloading your Canva design for print
How you export matters as much as how you design. For a printer, download the design as PDF Print, which keeps vector elements such as an uploaded SVG sharp. For screens and social media, PNG is fine.
Check the code's printed size before you order. On a flyer or business card it should be at least 2 × 2 cm, and on a poster roughly a tenth of the distance people will stand from it. Then open the downloaded file, not the editor, and scan the code with two different phones. If you can, print one copy at actual size and scan that too.
Reusing the same QR code across Canva designs
If the same code goes on your menu, flyers, business cards and social posts, make it once and keep the file. Upload the SVG to Canva and it stays in your Uploads, ready to drag into any new design, so every piece uses an identical code rather than a slightly different one each time.
Because a NeoReader code is static, the link lives inside the code itself. There is no account behind it and nothing to renew, so the code in last year's design still works in this year's. If you think the destination may change, point the code at a page on your own site and update the page instead of the code.
If your Canva QR code will not scan
- The code sits on a coloured or photo background. Put a light box behind it.
- The colours were changed and the contrast is too low. Go back to dark on light.
- It was stretched out of shape. Delete it and place it again, resizing from a corner.
- Another element overlaps it. Check the layers, and move text or shapes out of the margin.
- A small PNG was enlarged. Upload the SVG instead.
- The logo covers too much. Remake the code with a smaller logo in a generator that raises error correction.