How to Bulk Create Canva Graphics from Your Etsy Listings
Etsy sellers can export listing data with image URLs — but Canva Bulk Create ignores them. Here's the exact workflow to turn your Etsy shop into a batch of ready-to-post graphics.

If you sell on Etsy, you're already sitting on everything you need to produce a full content calendar: product titles, prices, descriptions, and photos for every listing in your shop. The problem is getting that data into Canva in a way that actually works.
Canva Bulk Create should be the answer. Feed it a spreadsheet, generate 20 product graphics at once, done. Except when you try it with Etsy listing data — which includes image URLs — Canva either leaves the image slots blank or prints the URL as text.
Here's why that happens and the exact steps to work around it.
The Etsy + Canva Bulk Create Image Problem
Etsy's listing manager lets you export your shop data, and tools like Etsy's built-in export or third-party shop managers give you a spreadsheet with a column of listing image URLs.
Canva Bulk Create can't use those URLs. It requires images to be physically embedded inside the XLSX file as DrawingML objects — binary image data anchored to individual cells. A URL is just a string. Canva won't fetch it, won't resolve it, won't treat it as an image.
This is the same limitation that trips up Shopify sellers, real estate agents, and anyone else working from a URL-based image source. The fix is the same too: convert the URL column into properly embedded images before handing the file to Canva.
Step 1: Get Your Etsy Listing Data
There are a few ways to pull your listing data depending on what you need.
From Etsy's built-in export:
- Go to your Shop Manager
- Click Listings
- Use the bulk export option (available via the "Manage" dropdown or through Etsy's Pattern/Shop settings depending on your account)
- Download as CSV
Etsy's native export is limited — it doesn't always include image URLs directly. If that's the case, use one of the methods below.
From a third-party Etsy tool:
Apps like Vela, Marmalead, or EtsyHunt let you export listing data with image URLs included. If you're already using one of these for SEO or bulk editing, export from there.
Manual approach for smaller shops:
If you have 20-50 listings, it's often faster to build the spreadsheet yourself. Open each listing, grab the main image URL from the listing editor (right-click the image → copy image address), and paste into a spreadsheet alongside your title and price. Tedious at 50 listings, but fast at 10.
Your spreadsheet should end up looking something like this:
| title | price | image_url |
|---|---|---|
| Hand-Stamped Copper Ring | 28.00 | https://i.etsystatic.com/.../ring.jpg |
| Beeswax Taper Candles Set | 18.00 | https://i.etsystatic.com/.../candles.jpg |
| Linen Zipper Pouch | 22.00 | https://i.etsystatic.com/.../pouch.jpg |
Step 2: Convert Image URLs to Embedded Images
This is the step that makes Canva Bulk Create actually work with your data.
Postprep takes your CSV with Etsy image URLs and outputs an XLSX with each image embedded directly in the cell — the DrawingML format Canva requires.
- Go to postprep.app
- Upload your Etsy listing CSV
- Select your image URL column (
image_url, or whatever you've named it) - Download the converted XLSX
Every image gets fetched and embedded. Your other columns — title, price, any other data — carry through unchanged. The whole conversion takes under a minute.
Step 3: Set Up Your Canva Template
Create a template in Canva that matches what you want to make. Common formats for Etsy sellers:
- Instagram square (1080×1080) — product showcase, new listing announcement
- Instagram Story (1080×1920) — sale or promotion
- Pinterest pin (1000×1500) — product feature with title and price
- Facebook post (1200×630) — shop update or product spotlight
In your template, use Bulk Create data fields as placeholders:
- A text element with
{{title}}for the product name - A text element with
{{price}}for the price - An image placeholder where the product photo goes
The field names must exactly match your column headers (case-sensitive). If your column is called title, the placeholder is {{title}}.
Step 4: Generate in Canva Bulk Create
- Open your Canva template
- Go to Apps → Bulk Create in the left sidebar
- Click Upload data and select the XLSX from Postprep
- Connect your data fields to your template elements (use Auto-connect or drag manually)
- Click Generate designs
Canva creates one design per row. If you had 25 listings in your spreadsheet, you now have 25 finished graphics — each with the correct product image, name, and price.
Download as a ZIP of individual image files, or use Canva's publishing tools to schedule them directly.
Etsy-Specific Use Cases Worth Setting Up
New listing announcements. Every time you add a listing, drop it into a one-row spreadsheet, run through Postprep, generate the announcement graphic. Takes 2 minutes instead of 20.
Seasonal batch updates. Before a holiday rush, export your relevant listings (e.g., gift items), bulk-generate a set of holiday-themed graphics from a seasonal Canva template, and schedule them out.
Sale promotions. Pull your sale listings, add a "sale price" column, generate a batch of sale graphics with the original and sale price on each one.
Shop anniversary or milestone posts. Export your bestsellers, generate a "fan favorites" or "shop highlights" batch to mark the occasion.
Pinterest content calendar. Pinterest rewards volume and consistency. Bulk-generating 30 pins from your full listing catalog in one session is far more sustainable than making them one at a time.
Frequently Asked Questions
Etsy's native CSV export doesn't include image URLs. What do I do?
Use a third-party Etsy management tool (Vela is popular) that exports full listing data including image URLs. Alternatively, you can manually build the image URL column by copying image addresses from your listing editor.
Etsy images are hosted on i.etsystatic.com — will those URLs work?
Yes. Etsy's CDN images are publicly accessible. Postprep fetches them the same as any other public image URL.
Can I use listing thumbnail images vs. the full-size images?
Either works. The thumbnail URLs are smaller files and process faster. Full-size URLs give you higher resolution in the final designs — better if you're generating large-format graphics.
I sell digital products on Etsy. Does this still apply?
Yes. Digital product listings still have a main listing image (often a mockup), and the workflow is identical.
What's the row limit?
Free tier handles up to 100 rows — enough for most Etsy shops. A one-time unlock removes the limit for larger catalogs.
The Short Version
Etsy listing data + Canva Bulk Create should be a natural pairing. The only thing in the way is the image URL problem — Canva needs embedded images, not links.
Postprep converts your Etsy CSV in one step. Export your listings, convert with Postprep, bulk-generate in Canva.
Try it free at postprep.app — 100 rows, no account required.