How to Use Canva Bulk Create With Your eBay Listing Images
Draft — Post #13 · Target keyword: canva bulk create ebay · Meta: Your eBay listings export with image URLs, but Canva Bulk Create ignores them. Here's the full workflow to turn your eBay inventory in

Draft — Post #13 · Target keyword: canva bulk create ebay · Meta: Your eBay listings export with image URLs, but Canva Bulk Create ignores them. Here's the full workflow to turn your eBay inventory into batch graphics.
You have 240 active eBay listings. Each one needs a social graphic, a promoted-listing banner, or a fresh gallery image with your store branding on it. The product photos already exist. The titles, prices, and SKUs already live in a spreadsheet you can pull straight out of Seller Hub.
This is exactly the job Canva Bulk Create was built for. One template, one data file, hundreds of finished graphics. Then you upload your eBay report, drag the photo column onto the image slot, hit Generate, and every design comes out with a blank box where the product photo should be.
The text merged fine. The images did not. This post covers why Canva Bulk Create eBay workflows stall on that exact step, the manual fix most sellers waste an afternoon on, and the one upload that makes the whole batch work.
Why Canva Bulk Create Stalls for eBay Sellers
Your eBay data is full of image URLs. When you download an active listings report from Seller Hub, or upload through File Exchange, your photos travel as links in a PictureURL column. eBay hosts the images on its own servers, or you point to images hosted on an external https server, and the spreadsheet just stores the address.
Canva Bulk Create handles every text field in that report without a problem. Drop in your title, price, condition, SKU, or item number and Canva merges them into the template cleanly.
Image URLs are where it breaks. Canva Bulk Create only reads images that are physically embedded inside the XLSX file as binary data in a format called DrawingML. A URL is just a line of text as far as Canva is concerned. It either prints the raw link as a string inside your design or leaves the image frame empty. We covered the technical reason in full in Why Canva Bulk Create Ignores Image URLs.
For an eBay seller this is the whole game. A report of 240 listings with product photo URLs will not render a single image in Canva unless those photos are embedded inside the XLSX before you upload it.
The Manual Workaround Most eBay Sellers Try First
The usual hack goes like this. Open the report in Excel, click the first image cell, use Insert > Picture > Place in Cell, point to the downloaded photo on your drive, then repeat for every row. It works if every product photo is already saved to your computer, cropped to the same size, named to match the right listing, and sitting in the correct order.
In practice your photos live on eBay's image servers or in a mix of folders from past listing batches. To do the manual method you would download all 240 images first, rename them to line up with the rows, then insert them one at a time. By the time the photos are organized you could have hand-built half the graphics in Canva anyway.
The other dead end is the =IMAGE() formula. If you pull your listings into Google Sheets, =IMAGE("https://...") shows the photo right there in the cell, so it looks solved. It is not. We broke this down in Why =IMAGE() Doesn't Work for Canva Bulk Create. Short version: =IMAGE() is a live formula, not embedded image data. When Canva parses the file it sees an empty cell.
What You Need Before You Start
Two pieces.
A Canva template per graphic type. Most eBay sellers cycle through a few recurring designs. A product social post with the photo, title, and price. A promoted or sale banner with the photo and a discount badge. A store-branded gallery image to drop back into the listing itself. A "new arrival" or "back in stock" card for your social channels. Each template needs Bulk Create placeholders for the text fields like {{title}} and {{price}}, plus one image element for the product photo.
A clean listings spreadsheet with one row per output graphic. One column per text field and one column holding the direct image URL. The same one-row-per-output, one-column-per-field rule we use for Etsy sellers and Shopify stores applies here without changes.
Step 1: Pull Your eBay Listings With Image URLs
eBay does not have a one-click "export everything to CSV" button for every account, so this step varies by seller.
If you list through Seller Hub Reports (the tool formerly called File Exchange), you can download an active listings report and upload listing reports that include a PictureURL column. This is the cleanest path because the photo links are already in the file.
If your account does not give you a report with photo URLs, you have a couple of options. Copy the image address straight from each live listing by right-clicking the gallery photo and choosing Copy image address, which returns the eBay-hosted URL. Or, if your photos are stored in your own folder, Drive, Dropbox, or a CDN, use those direct links instead. eBay requires image URLs to be served over https from a server that can deliver the file directly, so the same rule works for any host.
When a listing has multiple photos joined by a pipe character (https://...jpg|https://...jpg), split out the single main image you want for the graphic and put just that one URL in your column. Canva uses one image per design frame.
Flag for review: eBay's export options differ by account type and selling volume. File Exchange and the full Seller Hub Reports download are not available to every seller, and eBay periodically changes what these tools expose. Confirm what your own account can download before promising a fully automated pull.
Step 2: Build the eBay Spreadsheet
Trim the export down to the columns your template actually uses. A typical eBay seller's bulk sheet looks like this.
| title | price | condition | sku | image_url |
| Vintage Pyrex Mixing Bowl Set | 48.00 | Used | PYX-114 | https://i.ebayimg.com/.../bowl.jpg |
| Carhartt Detroit Jacket Medium | 89.99 | Pre-owned | CAR-208 | https://i.ebayimg.com/.../jacket.jpg |
| Sony WH-1000XM4 Headphones | 179.00 | New | SNY-051 | https://i.ebayimg.com/.../sony.jpg |
Save it as CSV or XLSX. Column names do not have to match Canva exactly since you map them in the Bulk Create panel, but matching names lets Canva auto-connect them in one click.
Step 3: Convert the Spreadsheet With Postprep
This is the conversion Canva refuses to do for you.
Go to postprep.app, upload your CSV, and pick the column holding the image URLs. Postprep fetches each URL, downloads the photo, and embeds it inside the XLSX as DrawingML, the binary format Canva actually reads. Every other column passes through untouched. If you want to understand what is happening under the hood, we walk through it in How to Bulk Embed Images in Excel From URLs.
A 240-row sheet takes under a minute. The free tier covers 100 rows with no account required.
Step 4: Bulk Generate in Canva
Open your product template in Canva. You need a plan that supports Bulk Create.
Flag for review: Canva lists Bulk Create as a paid feature (Pro and the various team and business tiers) and it runs in the desktop app, not the mobile app. Plan names and eligibility change, so check Canva's current pricing page before stating which tiers include it.
In the left panel click Apps, then Bulk Create. Click Upload data and select your converted XLSX. Drag each column onto its matching placeholder, or use Auto-connect if your column names already line up. Click Generate designs. Canva produces one finished graphic per listing with the product photo, title, and price already merged.
Running three template types off the same sheet? Take the same converted XLSX into each template and run Bulk Create three times. One data file, three sets of branded assets. Download as a ZIP and you have the full batch ready to post or re-upload to your listings.
A Realistic eBay Seller Workflow
Here is the rhythm for a working store.
New inventory drop. Pull the new listings into one sheet with their photo URLs. Run it through Postprep. Generate social posts and "new arrival" cards in Canva. Schedule the posts. Total time is about 20 minutes regardless of whether you added 10 items or 200.
Weekend sale. Take the same sheet, add a discount column, and run it through your sale-banner template. Every item gets a matching promo graphic with the price and badge in place.
Listing refresh. When you re-shoot photos or rebrand, update the image URLs in the sheet, re-run Postprep, and regenerate the store-branded gallery images to drop back into the listings.
Without the converted XLSX, each of these batches is a multi-hour manual slog. With it, the spreadsheet does the heavy lifting and Canva does the design.
Frequently Asked Questions
Do I even need images for every eBay graphic?
No. If you are making a plain text promo, a store announcement, or a coupon card, skip the image column and use Bulk Create for the text fields alone. The conversion step only matters when a real product photo has to land in the design.
My listings have several photos each. Which one do I use?
Pick the main gallery image, the one buyers see first, and put that single URL in your column. If you want a graphic per photo, make one row per photo with the same title and different image URLs.
The eBay image URLs have a pipe character and look messy. Will that break it?
eBay joins multiple photo URLs with a | separator. Split them so each cell holds one clean https URL. A cell with several URLs joined by pipes will not embed correctly.
Some listings do not have a usable photo URL yet. What happens?
Leave that cell blank. Postprep skips the embed for empty cells and Canva leaves the placeholder visible. Re-run the batch once you add the URL.
Can I use this for promoted listing ad creative?
Yes. The generated designs export as PNG or PDF, so you can use them as social ads, promoted-listing banners, or store graphics. The photos embed at the resolution the URL returns, so start from full-size product images for print or large formats.
Does this replace my eBay listing tool?
No. Postprep does not list or relist anything on eBay. It only prepares the spreadsheet so Canva can generate your graphics. Keep using your existing listing tool for the store itself.
The Short Version
Your eBay listings already carry everything Canva Bulk Create needs except one thing: the product photos arrive as URLs, and Canva only reads images embedded inside the XLSX. That gap is why your designs come out blank.
Pull your listings into one sheet, convert it with Postprep, and bulk generate in Canva. Every product gets its graphic without you downloading and dragging a single photo by hand.
Try it free at postprep.app — 100 rows, no account required.