← Back to blog

Dynamic Creative Optimization with AI in 2026

Feed a DCO element library with AI-generated variants instead of a stock shoot. Here is the 4-step workflow, the Advantage+ fit, and when DCO beats discrete variants.

Dynamic creative optimization used to have a supply problem. The engine assembles ads on the fly from a library of interchangeable parts, but somebody had to produce all those parts, and a shoot only gives you a handful of images and one or two headlines. The library stayed shallow, so the "thousands of combinations" pitch stayed theoretical. AI generation fixes the supply side. You can stock a DCO element library with 40 backgrounds, 20 hero shots, and a dozen motion variants for under $50 in compute, then let the platform's machine learning do what it's good at: finding the winning combination per impression. What you end up with is a genuinely deep library feeding a real optimization engine, built in an afternoon instead of a production quarter.

What DCO actually does

Before the workflow, be precise about the mechanism, because "DCO" gets used loosely. Dynamic creative optimization assembles a personalized ad in real time by combining modular elements, headlines, images, CTAs, backgrounds, product shots, from a library, choosing the combination predicted to work best for each viewer in each context. The assembly happens in under 100 milliseconds, before the impression renders. You are not building one ad. You are building a system of parts and letting the engine build the ads.

This is different from discrete variant testing, where you produce whole finished creatives and split-test them against each other. In DCO, the elements are the unit. The engine mixes them. That distinction drives when you'd choose one over the other, which we cover below.

The 4-step AI DCO workflow

Step 1: Structure the element library before you generate anything

DCO only works if your elements are truly modular, meaning any headline can sit on any background under any CTA without looking broken. So design the slots first. A typical Meta or programmatic setup needs: backgrounds or scene beds, hero product shots, motion clips (for video placements), headlines, and CTAs. Decide how many of each slot you want before generating a single asset. Ten backgrounds by six heroes by four CTAs is 240 combinations from 20 produced elements. That multiplication is the entire point.

Step 2: Generate the visual elements with Nano Banana Pro and Kling 3.0

Use Nano Banana Pro for the still elements, backgrounds, product hero shots, texture and detail frames, at roughly $0.04 to $0.08 per image and about 8 seconds each. Lock a single product reference image and feed it into every generation so the product itself stays identical across every background. That consistency is non-negotiable in DCO: the engine will pair your product with dozens of scenes, and if the product drifts between generations the whole library looks incoherent.

For placements that take video, generate motion beds with Kling 3.0 at $0.28 to $0.40 per 5-second 1080p clip, roughly 60 seconds each. Keep these motion elements neutral enough to pair with any headline overlay. On 8frame you build this as one workflow canvas: reference input node, then a Nano Banana batch node for stills and a Kling batch node for motion, both inheriting the locked reference.

Step 3: Write the text elements to combine, not to stand alone

The copy slots are where most DCO libraries fail. Headlines and CTAs have to read cleanly in any combination, so avoid writing a headline that only makes sense over one specific image. Write four to eight headlines that each carry the value claim on their own, plus three to four CTAs across urgency, benefit, and neutral framings. Keep them short enough to overlay on any of your generated backgrounds without crowding the composition.

Step 4: Load the library into the platform engine and let it assemble

For Meta, this means Advantage+ creative. You supply the assets and the objective, and the system handles enhancement and assembly, adjusting brightness and contrast, converting aspect ratios for feed versus Stories versus Reels, cropping for composition, and testing text positions and combinations automatically. Meta reports advertisers using Advantage+ Creative see around a 22 percent ROAS lift versus manual creative settings, though treat any single platform figure as directional rather than a promise. For programmatic DCO outside Meta, you upload the modular elements to a DCO platform (Omneky, StackAdapt, and similar) that runs the real-time assembly across the open web.

One 2026 constraint to build around: Meta's algorithm now weights early engagement signals from the first 24 to 48 hours far more heavily than it used to, when dynamic creative had 7 to 14 days to prove itself. Load your full library at launch so the engine has combinations to test while those early signals still count.

Cost math: AI library vs. traditional DCO shoot

A traditional DCO library sourced from a shoot means paying for a production day, then a retoucher to cut out enough element variations to make assembly worthwhile. Even a modest library runs into the low five figures once you count the shoot, the edit, and the versioning.

Line item Traditional shoot AI on 8frame
40 background/scene stills Shoot + retouch, $4,000-$8,000 40 x $0.06 = $2.40
12 hero product shots Included in shoot day 12 x $0.06 = $0.72
8 motion clips (5s, 1080p) $3,000-$6,000 8 x $0.34 = $2.72
Workflow compute overhead n/a ~$0.60
Total $7,000-$14,000 under $10

The AI library also refreshes. When elements fatigue, you regenerate the tired slots for cents instead of booking another shoot, which matters because DCO libraries fatigue the same way discrete creatives do.

When DCO beats discrete variants (and when it doesn't)

Use DCO when you have many audience segments and contexts, and the winning message genuinely differs by viewer. Personalization at the element level is DCO's home turf: retargeting with dynamic product feeds, multi-market campaigns, large prospecting audiences where the engine can find per-segment combinations you'd never guess.

Use discrete variant testing when you're still hunting for the concept itself. DCO optimizes within a system of parts, but it can't tell you that your whole angle is wrong. Find your winning concepts with AI ad variant testing first, then feed the proven elements into DCO to scale the personalization.

The measurement trap to avoid: DCO reports a blended result across thousands of combinations, so a strong average can hide a few dominant combinations doing all the work while the rest drag. Check the combination-level breakdown, not just the campaign average, or you'll keep paying to assemble elements that never win.

Related reads

For the underlying mechanism explained from scratch, see what is dynamic creative optimization. For why a deep element library is a fatigue defense as much as a personalization tool, see creative fatigue and the AI refresh math.


Build your DCO element library in one workflow canvas. Lock a product reference, batch out 40 backgrounds and 8 motion beds on 8frame, and hand the engine a library deep enough to actually optimize.

Related articles

use caseHow to Add Video Generation to Your AI Agentuse caseAI Video in Cursor and Claude Code via MCPuse caseHow to Generate AI Video from Claude (MCP Guide)

Make it
move.

Stay in the loop

Be the first to hear about our launch and get product updates