PostPrep
← Blog
2025-04-18

Canva Bulk Create Tutorial: A Complete Step-by-Step Guide

Complete Canva Bulk Create tutorial. Set up templates, prep your spreadsheet, embed images, and batch-generate designs. Beginner-friendly walkthrough.

Pete B.
Pete B.
Founder, Postprep

Canva Bulk Create can turn one template and one spreadsheet into hundreds of finished designs in under a minute. Product cards, social posts, listing graphics, certificates, real estate flyers, recipe pins — anything that follows a fixed layout with swappable content.

Most people who try it for the first time hit one of two walls. Either the data doesn't map correctly to the template, or the images come out blank. Both have clean fixes.

This is the complete Canva Bulk Create tutorial. By the end, you'll know how to set up a template, prep a spreadsheet, fix the image URL problem, and run your first batch.


What Canva Bulk Create Actually Does

Bulk Create is a Canva Pro and Canva Teams feature inside the Apps panel. It connects a spreadsheet to a template, then generates one design per row.

Each column in your spreadsheet becomes a variable. Each row becomes a finished design. If your sheet has 100 rows, you get 100 designs with unique content swapped into the same layout.

That's it. There is no AI generation, no design intelligence, no automation beyond data merging. Bulk Create is fancy mail-merge for Canva.

It's powerful for one reason: speed. Anything you'd normally duplicate manually 50 times — Etsy listing graphics, Shopify product cards, real estate listings, Pinterest pins, event invitations, certificates — can be done in a single upload.


Step 1: Choose or Build a Template

Open Canva and create a new design at whatever size you need. Pinterest pin, Instagram post, A4 flyer, your own custom dimensions — Bulk Create works on any canvas.

Design the layout once. Pick a hero image area, headline, supporting text, price tag, whatever your use case needs. Don't worry about exact content yet. The whole point is that each piece of content will be filled by your spreadsheet.

Keep the design clean. Bulk Create works best when text placeholders have generous space, because different rows have different lengths. A product name might be three words or eleven. Build the template assuming the longest plausible variant.


Step 2: Tag Your Variables

This is the step most people miss. For Bulk Create to know which spreadsheet column fills which text box, you need to tag each element.

Open the Apps panel on the left, find Bulk Create, click it. Once it opens, every text element and image placeholder on your template becomes taggable.

Right-click a text box, choose Connect data, and pick the spreadsheet column it should pull from. Do the same for image placeholders.

Name your columns clearly in your sheet — product_name, price, photo, not Column A, Column B. The matching is by header name, so messy headers cause messy merges.


Step 3: Build the Spreadsheet

Your sheet needs one row per design. Column headers map to your tagged template fields.

A simple Etsy product spreadsheet might look like this:

product_name price photo
Hand-thrown ceramic mug $32 (image)
Linen apron, oat $48 (image)
Brass candle snuffer $24 (image)

You can export this from your store, your CMS, your CRM, your inventory tracker — anywhere your data already lives. CSV and XLSX both work as upload formats, though the image column has a catch we'll cover next.

For text-only batches (certificates, name tags, quote graphics), you can stop here. Save the file, upload to Bulk Create, and you're done.

For anything with images, keep reading.


Step 4: Fix the Image URL Problem

This is where almost every new user gets stuck. Canva Bulk Create does not fetch image URLs.

If your photo column contains links like https://yourstore.com/images/mug.jpg, Canva treats those as plain text. The image placeholder either comes out blank or gets the URL pasted onto your design as ugly text.

The reason: Bulk Create only accepts images that are physically embedded inside the XLSX file as binary data, anchored to specific cells. The format is called DrawingML. A URL is not embedded data — it's a string.

You have two options.

Manual approach. Download every image to your computer. Open the spreadsheet in Excel (not Google Sheets — it doesn't support this export). Click each cell, go to Insert → Pictures → Place in Cell, upload the file. Save as XLSX. This works for 5 rows. It's painful at 30. It's impossible at 200.

Automated approach. Use Postprep to convert your URL column into embedded images. Upload your CSV or XLSX with the URL column intact. Postprep fetches each image, embeds it as DrawingML data, and returns a Canva-ready XLSX. Takes about 20 seconds for 100 rows.

We wrote a dedicated post on why this limitation exists and how Canva documents it: Why Canva Bulk Create Ignores Image URLs.


Step 5: Upload to Canva

Back in the Bulk Create panel, click Upload CSV or XLSX. Pick your processed file.

Canva reads the headers, matches them to your tagged template fields, and previews the first few rows. If a column didn't map, you can manually connect it now.

If your image column is correctly embedded, you'll see thumbnails of each image in the preview. If it shows a URL string instead, the file isn't embedded — go back to Step 4.


Step 6: Generate

Click Continue, then Generate designs. Canva creates one new page per row. A batch of 100 designs takes about 30 seconds to render.

Each design lands as a separate page inside the same Canva file. You can review them, edit individual designs if a particular row needs touch-up, and export the entire batch as a multi-page PDF, a ZIP of PNGs, or post directly to social channels.

Canva caps Bulk Create at 300 rows per upload. For larger batches, split your spreadsheet and run multiple generations.


Common Tutorial Pitfalls

A few patterns trip up new users:

Column header mismatches. If your template field is tagged product_name but your sheet header is Product Name, Canva sometimes fails to auto-match. Keep them identical, lowercase, underscore-separated.

Long text overflowing. Bulk Create doesn't auto-resize text. If a long product name spills past your text box on row 47, you'll need to edit that specific design. Build wider text containers than you think you need.

Mixed image aspect ratios. Canva fills the image placeholder regardless of source ratio. Tall photos in a landscape placeholder will crop. If your images vary wildly, standardize them before processing.

Trying to use Google Sheets directly. Canva can import from Google Sheets via their Sheets integration, but the image column problem still applies. Even from Sheets, URLs don't render as images. The fix is the same: use a tool like Postprep to embed the images first.


Use-Case Walkthroughs

The exact spreadsheet structure changes by use case, but the workflow above is identical. We've written dedicated guides for the most common verticals:

Canva Bulk Create for Shopify product graphics — pulling your product catalog into Canva for ad creative and social posts.

Canva Bulk Create for Etsy listings — generating listing photos, mockups, and Pinterest pins from your shop data.

Canva Bulk Create for real estate — batch-creating listing flyers, just-listed graphics, and open house cards from MLS exports.

Canva Bulk Create for recipe cards and food blogs — generating Pinterest pins and recipe cards from your blog database.

Pick whichever vertical matches your work — the spreadsheet examples in those posts plug straight into the workflow above.


FAQ

Do I need Canva Pro for Bulk Create? Yes. Bulk Create is a Canva Pro and Canva Teams feature. The free tier doesn't include it.

How many rows can Bulk Create handle? 300 rows per upload. For larger batches, split your spreadsheet and run multiple generations.

Can Bulk Create pull images from Google Drive or Dropbox? No. It only reads embedded images inside XLSX files. Cloud storage links and standard share URLs don't work.

Does Bulk Create work with Canva for Education? Yes, Bulk Create is included in Canva for Education accounts.

Can I use Bulk Create for video templates? Bulk Create supports video templates for text variables. Bulk video frame swapping is more limited and depends on the template type.

What's the difference between Bulk Create and Magic Switch? Bulk Create generates many designs from one template using spreadsheet data. Magic Switch resizes or reformats a single design for different platforms. They solve different problems.


The Short Version

A working Canva Bulk Create workflow is: build a template, tag every variable, prep a spreadsheet with matching column headers, embed your images properly, upload, generate.

The only step with real friction is the image embedding. Everything else is mechanical once you've done it once.

Try it free at postprep.app — 100 rows, no account required.

Try it free

Canva Bulk Create with real embedded images.

Upload your CSV or XLSX. Select your image column. Download a Canva-ready file. Free for up to 100 rows — no account needed.

Try Postprep →
Pete B.

Written by

Pete B.

Pete is a small business owner who got tired of social media eating his evenings. Posting product graphics across channels used to mean opening Canva, dropping in each image by hand, and repeating that for every listing and every platform. He kept hitting the same wall: Canva Bulk Create can save hours, but it refuses to read image URLs from a spreadsheet — turning a 5-minute workflow into a 2-hour copy-paste job. So he built Postprep to fix that one specific limitation, and writes about bulk content workflows, design tool limitations, and shipping social content without burning out.

Discussion