AI-Driven GTM Imagery: Part 5, Bulk Image Creation

The Production Workflow That Makes 150 Ads in a Day

AI-Driven GTM Imagery: Part 5, Bulk Image Creation

There’s a moment in every campaign build where the strategy work ends and the production work begins. You’ve done the positioning. You’ve built the copy bank. You’ve gathered every visual component you could find. And now you’re staring at a blank Canva project thinking: I need 150 ads by Friday.

This is the stage that terrifies most marketers. Not because it’s intellectually hard, but because it sounds like it should take two weeks and three designers. When I started building campaigns with AI, this was the step I expected to change the most. It did, but not in the way I predicted. The production workflow that actually works is less about any single AI tool doing magic and more about having all your ingredients ready so the assembly step becomes mechanical instead of creative.

I laid out the five-stage process in the first piece of this series. Strategic foundations, visual brand guidelines, the copy bank, component gathering, and then assembly. The first four stages are where all the thinking happens. Stage five, the one we’re talking about today, is where you combine ingredients in different configurations for different channels and formats. If you’ve done the prior stages well, this part goes fast. If you haven’t, this is where everything falls apart.

Three Steps, Three Tools

For bulk ad creation, whether it’s on a Meta property like Instagram or Facebook, for static ads or reels or carousels, I use a three-step process. It’s not complicated. But the order matters, and skipping any step makes the others harder.

The first step is generating all the text overlays. I use ChatGPT for this, loading in the campaign brief, the copy bank, and all the strategic underpinnings about who my customer is, how we speak to them, and what their jobs-to-be-done are. From that, I’ll create a list of roughly 50 text overlays per ad set. Within those 50, I’m thinking about the different hooks or wedges I want to test. Maybe a third of them are for one wedge, a third for another, and a third for a third. All those text overlays get produced first, before anything visual happens.

This is where the copy bank from stage three pays off. Instead of asking the LLM to invent ad copy from nothing, I’m feeding it a bank of pre-validated messages and saying: take these strategic inputs and produce text overlays formatted for the ad types I’m building. The difference between doing this with a copy bank and without one is the difference between getting copy that sounds like your brand and getting copy that sounds like it was written for a template gallery.

The second step is capturing and organizing visual assets. B-roll screen recordings, product photos, videos. Everything goes into one place. The goal is to be able to stack the image or video I want in the background of the ad with the text overlay that goes on top of it. For static ads specifically, I also bulk-generate background images at this stage. A typical campaign needs 10 to 15 different backgrounds, and the way a static ad is structured is: background layer, then a product photo or screenshot on top to show the thing you’re selling, then your text overlay with your hook and tagline, then a CTA button.

For the background generation, I’m using ChatGPT again, but this time to create a shot list. Thirty to thirty-five background images, each one specific and based on the strategic information from the beginning of the process. Not “blue gradient” or “abstract technology.” Specific shots that relate to the product positioning, the target audience’s environment, the campaign’s emotional territory. Then I feed that shot list into Gamma with a prompt engineered to produce all the background images at once. Gamma’s image generation through Flux 1 Pro produces solid results, and you can generate five images per batch at around 50 credits each. Two or three batches and you have your full set of backgrounds.

The third step is assembly. And this is where I’ll say something that might surprise people who expect this whole workflow to happen inside an AI tool: I use Canva, Templated.io, or Paper— depending on the image type and volume. Specifically, their MCP and bulk creation features.

Why I Use These Assembly Tools

I know. In a series about AI-assisted marketing production, recommending Canva feels like recommending a spreadsheet at a machine learning conference. But Canva’s bulk ad creation tool, from a volume production perspective, is still better than most other options for this specific step.

Here’s how it works in practice. I take all the sorted assets (backgrounds, B-roll, photography) and bulk import them into a single Canva project. I take all the text overlays from ChatGPT and import those too. Then I use Canva’s card-based system to drag background graphics or background video and text overlays into individual ad slots. One card per ad.

I’ll do one ad type first. Say I’m building Instagram Trial Reels. I get the text overlays into one card each, then drag the B-roll and screen recording video onto the card slots, pairing video with the text overlays I think they go with best. Then, I go through and make sure the text overlays have the right color, font sizing, wrapping, and position on the ad space. I add audio.

Templated.io is another great option for heavily-templated bulk imagery creation. If you’re in a more mature business and most of your imagery is templated similarly each time, Templated.io may be better. Try both, and see which work best for each job type.

As you do more creative work starting from the CLI (like Claude Code or ChatGPT), you’ll develop a big toolbox of “best tools per job”. For example, I use Paper to finesse and finish low-volume, high-impact graphics. I use Gamma to produce PDFs and Decks like case studies, etc. Let me know if you want me to share more about this!

Sending drafted graphics directly from Claude Code into Paper, where you can edit them like Figma files, never stops feeling magical.

This process sounds time-consuming. And it is, compared to a theoretical future where AI handles the entire composition. But compared to what this process used to look like, it’s dramatically faster. Superside’s research on their first 200 AI-enhanced projects found 30 to 60 percent fewer hours on AI-assisted work. My experience maps to something similar. What used to take a full week of production for a designer now takes a day of assembly, because the creative decisions were already made in stages one through four. The assembly step is just executing on those decisions in volume.

And here’s the thing about the assembly tools getting better: I haven’t spent a ton of energy trying to optimize this specific step, mostly because all the companies that sell ads are more incentivized than anyone else in the market to make it easier. As Meta continues to acquire tools like Manus that simplify ad management, they’re going to make this last mile smoother. The production tools will improve on their own. What won’t improve on its own is the strategic preparation that feeds into them. That’s where your time is better spent.

The Unsexy Truth About Volume

The reason this three-step workflow produces volume without chaos is that it separates creative decisions from production decisions. The creative decisions (what to say, how to say it, what visual style to use, which hooks to test) all happen upstream. By the time you’re in Canva dragging elements onto cards, there’s nothing left to decide. You’re a short-order cook working from a menu, not a chef inventing dishes in real time.

That separation is also what makes it possible to hand off the assembly step. Once the copy bank, the shot list, and the component library exist, someone with basic Canva skills can do the final assembly. You don’t need a senior designer for this part. You need a senior strategist for stages one through three and an organized person with good taste for stage five (when agency-side, we called these helpful teammates “producers”).

This connects to something Cristian Ginori at Superside described: “I’m the brain and AI is the hands. I focus on being very precise about what I need.” The precision lives in the preparation. The assembly, whether done by AI tools or by a person in Canva, is the hands.

The Export and Distribution Layer

Once the ads are assembled, the last question is how they get from Canva to wherever they need to be. I typically do this one of two ways. Either I pull the finished ads down in bulk from Canva and manually upload them into whatever platform (Meta Ads Manager, LinkedIn Campaign Manager, wherever they’re going), or I use API connections through tools like Publer to push them directly from the creation environment into the scheduling or ad management tool.

Neither option is particularly elegant. This is another area where the tooling will catch up. What matters more right now is that by the time you’re exporting, every ad in the batch has been built from strategic inputs, uses validated copy, features intentional visual compositions, and is formatted correctly for its target channel. The distribution is logistics. The quality was locked in upstream.

What to Do?

If you’re producing ads in volume (or want to), here’s how to start applying this workflow.

  1. Produce your text overlays before you touch any visual tool. Load your copy bank and campaign brief into ChatGPT and generate 50 text overlays organized by wedge. Even if you end up using only 20 of them, having the full set forces you to think about messaging variety before you get distracted by visual composition. The copy comes first because it’s the strategic layer. Everything else is presentation.
  2. Create a shot list for your backgrounds. Don’t open Gamma or Midjourney or any image generation tool and start typing generic prompts. Write out 30 specific shot descriptions that connect to your positioning, your audience’s world, and the emotional territory of the campaign. Then batch-generate the images from that shot list. You’ll be surprised how much better AI-generated backgrounds look when the prompts are rooted in strategy instead of aesthetics.
  3. Set up a folder structure for your components before you import anything. One folder for backgrounds, one for B-roll and video, one for product screenshots, one for logos and icons. The assembly step is only fast if you can find what you need. This sounds obvious, but I’ve watched people waste an hour in Canva scrolling through an unsorted uploads folder looking for the right screenshot.
  4. Do one ad type at a time. Don’t try to build Instagram Reels, LinkedIn static ads, and Facebook carousels simultaneously. Pick one format, build all the variants for that format, then move to the next. The muscle memory of the assembly process speeds up significantly after the first 10 or 15 cards.

Subscribers can access our bulk ad assembly workflow template, including the folder structure, the text overlay prompt, and the shot list format I use for background generation by clicking here.

Next up in this series: landing page production, where the same principles of strategic preparation and component-based assembly apply but the tools and workflow look completely different.