How Party and Event Rental Companies Can Use Canva Bulk Create for Inventory Catalogs, Package Cards, and Availability Posts
Canva Bulk Create for party rental companies: turn your Booqable or Goodshuffle inventory export into catalog cards, package graphics, and social posts.

A bride emails at nine at night asking what chairs you have in gold. You know the answer. What you do not have is a graphic showing the four gold chair options with prices, because building four graphics takes forty minutes and you have done it eleven times this month for eleven different brides.
Meanwhile your inventory sits in Booqable or Goodshuffle Pro with a photo attached to every item. Four hundred SKUs. Chiavari chairs, farm tables, arbors, linens in nine colors, three tent sizes, a wall of glassware. All of it already photographed and already priced.
That is a spreadsheet with a photo column. Which is exactly the shape Canva Bulk Create wants, right up until you try it and every image slot comes out empty.
Why Canva Bulk Create Stalls for Party Rental Companies
Bulk Create is genuinely good at the text half. Feed it a CSV of your inventory and the item name, daily rate, color, quantity on hand, and minimum order all merge into your template correctly, four hundred rows deep, in one pass.
The images do not. Canva's own help documentation states it plainly: image URLs from cloud photo storage are not supported and will be treated as plain text. Your export column full of https://cdn.goodshuffle.com/... links does not become photos. It becomes four hundred rows of visible blue link text sitting where your chair photo should be.
The reason is structural. Canva only reads images that are embedded inside the XLSX file itself, as binary picture data in a format called DrawingML, placed within a single cell rather than floating over several. A URL is a pointer to an image somewhere else. Canva never follows it. We broke this down in full in why Canva Bulk Create ignores image URLs.
For rental companies this stings more than it does for most verticals, because your inventory photos are the product. Nobody rents a farm table off a text description.
The Manual Workaround Most Rental Companies Try First
The next thing everyone tries is Excel. Open the export, click into the photo cell, use Insert > Picture > Place in Cell, browse to the photo, repeat.
This does work. Place in Cell writes real embedded picture data Canva can read. The catch is the word "browse." Every photo has to already be on your laptop, named so you can find it, and matched to the right row. On a four-hundred-item catalog built over six years by three different people, that falls apart before you reach the linens. Re-sort the sheet by category afterwards and your placements no longer line up.
Twenty items is a tolerable evening. Four hundred is not a project you finish. Full walkthrough of that grind: how to bulk embed images in Excel from URLs.
The other dead end is =IMAGE(). In Google Sheets it shows the picture right there in the cell, which makes it look solved. It is a live formula, not embedded data, so the moment the file leaves Google Sheets the image is gone. That trap gets its own post: why =IMAGE() doesn't work for Canva Bulk Create.
What You Need Before You Start
Three things.
An inventory export with an image URL column. Booqable's help center confirms that when you export inventory data, the main image is included in the export spreadsheet as a URL. Goodshuffle Pro has a dedicated export for this: select all your filtered items, click Download, and choose Inventory - All Columns, which generates a spreadsheet with links to your item images and emails it to you. Goodshuffle notes this is available on all plans. If you run Rentman, Tapgoods, or a homegrown Airtable base, check your export for a column of image links before you go further. If there isn't one, ask your vendor whether they can add it, because everything downstream depends on that column existing.
A Canva plan that includes Bulk Create. Canva lists it for Pro, Teams, Business, Enterprise, Education, and Nonprofits, on desktop only. If you are on the free plan it will not appear. More detail in does Canva Bulk Create require a Pro plan.
A template with real placeholder elements. Canva connects data to elements you have already put on the page. Text needs its own text box per field. Photos need a frame or grid from the Elements tab. A plain image dropped on the canvas is not a placeholder and nothing will merge into it.
Step 1: Export Your Inventory
In Goodshuffle Pro, filter your Inventory tab down to the items you actually want graphics for, hit Select All, click Download, and pick Inventory - All Columns. Adjust your custom columns first, since the CSV reflects exactly what is visible in your inventory view.
In Booqable, go to Inventory and click Export. One note worth knowing: Booqable exports trackable products individually, so a product with ten stock items produces ten rows. For a catalog graphic you want one row per item, not one row per physical chair, so plan to deduplicate.
Filter before you export. You almost never want all four hundred SKUs in one batch. You want the twelve tent packages, or the linen color range, or the eighteen items you just added for fall.
Step 2: Build the Spreadsheet
Trim it to the columns your template actually uses. One row per graphic.
| item_name | category | daily_rate | color | qty_available | image_url |
| Gold Chiavari Chair | Seating | $6.50 | Gold | 240 | https://cdn.example.com/chiavari-gold.jpg |
| Farm Table 8ft | Tables | $85.00 | Natural Oak | 22 | https://cdn.example.com/farm-8ft.jpg |
| Ivory Floor Length Linen | Linens | $18.00 | Ivory | 60 | https://cdn.example.com/linen-ivory.jpg |
Keep the URLs as plain text. Do not wrap them in =IMAGE(), do not turn them into hyperlinks. The conversion step needs to read the address as text so it can go fetch the file.
Canva caps a single Bulk Create run at 300 rows and 150 columns. A big rental catalog blows past that, so batch by category. Batching strategy is covered in the Canva Bulk Create row limit.
Step 3: Convert the File So the Images Are Actually Embedded
Upload your CSV or XLSX to postprep.app and select the image URL column. It fetches each photo and writes it into the XLSX as embedded DrawingML picture data, one image per cell, which is the only form Canva reads. Every other column passes through untouched.
Free tier covers 100 rows with no account, so run one category first and confirm the photos land before you push your whole catalog through.
Step 4: Bulk Generate in Canva
Open your template, click the page background, select Edit, then Bulk create. Choose Upload data and pick the converted XLSX. If the file has multiple sheets you will be asked which one, and you can specify a range.
Then connect the fields. Auto-match fields lets Canva guess the mapping, which usually gets item name and price right and occasionally puts color somewhere strange. Un-map the wrong ones and redo them by hand, or drag each field onto its element yourself. Preview a few rows before generating.
Under Advanced options, set Output to Individual designs and set Name each page using to your item_name column. That way you get four hundred separate files named "Gold Chiavari Chair" instead of a single monster design you have to slice apart later. More on that in Canva Bulk Create download.
A Workflow That Actually Repeats
The reason this pays off for rental companies specifically is that one export drives five different deliverables off identical rows.
Keep one master export per category. From those same rows you generate a catalog card for the client-facing PDF, an Instagram post per item, a package card grouping items into "Garden Party for 50," a quote-attachment sheet for proposals, and a warehouse pull card with the photo and count on it.
Then it repeats on your real calendar. New inventory lands in spring and fall, so twice a year you export the new SKUs and generate. Rates change annually, so once a year you re-export and regenerate everything rather than hunting down forty old Canva files. Before a bridal show you export the twenty items you are featuring and build the booth signage in one pass.
The spreadsheet stays the source of truth. Canva becomes the printer.
Worth being honest about the limit: this only helps where every output differs by row. A single "Book your 2027 date" story is one design, not a batch. Do that one by hand.
Frequently Asked Questions
My rental software doesn't export image URLs. Now what?
Then this workflow does not start. Ask your vendor whether an image column can be enabled, since several platforms keep it behind a specific export option rather than the default. Failing that, host the photos somewhere that gives you direct links and build the URL column yourself once.
Can I show more than one photo per item?
Yes, if your export gives you more than one image column. Keep each in its own column and each gets fetched independently. Your template then needs a separate frame for each.
What about items with no photo?
That row's image slot comes out empty and the text fields still merge normally. Fill the gaps in your rental software and re-export.
Does this work for package graphics, not just single items?
Yes, but you build the rows yourself. Make a sheet where each row is a package, with a name, an inclusion list, a price, and one hero photo URL pulled from your inventory export.
Is this the same as what event planners do?
Related but not identical. Planners batch invitations, vendor cards, and sponsor graphics for one event at a time, covered in Canva Bulk Create for event planners. You are batching an inventory catalog that outlives any single event. For day-of signage, wedding place cards and welcome signs is the closer fit.
Can I use this to build a full rental catalog PDF?
That is the product catalog job. Same mechanics, different output setting: how to build a product catalog from a spreadsheet.
The Short Version
Your rental software already holds a photo and a price for every item you own. Booqable and Goodshuffle Pro both put those photos into your inventory export as URLs. Canva Bulk Create merges the text fine and ignores the URLs, because it only reads images embedded inside the file as DrawingML.
Export the category you need, keep the URL column as plain text, convert the file once so the photos are truly embedded, then let Canva generate one design per item. Forty minutes of chair graphics becomes about two.
Try it free at postprep.app — 100 rows, no account required.