There is a specific moment where AI-generated ads stop being impressive and start being useful, and it has nothing to do with how real the person looks. It is the moment the thing in their hand is unmistakably yours.
Video models are extremely good at producing a plausible object in a category. Ask for a person holding a protein tub and you will get a person holding a protein tub: correct proportions, believable lighting, plausible label design, and a brand name that is four letters away from yours. In a category-awareness brand film that is fine. In a direct-response ad where the viewer is meant to recognise the pack on a shelf, it is a failure, and it is not one that better prompting fixes.
Keep your product in the frame
siriusly.ai holds your product, packaging and claims in a reusable brand library, so every render starts from your real assets instead of a description of them.
Try it freeWhat Models Preserve and What They Invent
It helps to know, roughly, which parts of a product survive generation and which are reconstructed from scratch each frame:
| Attribute | How well it survives | Why |
|---|---|---|
| Overall shape and silhouette | Good | Large, low-frequency, stable across frames |
| Dominant colour | Good | Same reason, and colour is cheap to keep consistent |
| Logo mark | Poor to fair | Small, high-frequency, and reconstructed per frame |
| Label text | Poor | Text rendering degrades fastest at small scale and under motion |
| Fine texture and finish | Fair | Drifts slowly, usually unnoticed |
| Screens and UI in-frame | Very poor | Dense text plus layout - the worst case for generation |
The pattern is consistent: the smaller and more text-like a feature is, the less likely it is to survive. That is why the same generation that produces a flawless human face produces a label that reads correctly for four frames and then turns into approximate letterforms.
Three Strategies, In Order of Cost
1. Image-to-video from a real product photo
The cheapest and, for most products, the right default. Instead of describing the product in a prompt, you give the model an actual frame containing it and ask it to animate from there. The product starts correct, and the model's job narrows from inventing it to keeping it stable.
This does not make drift impossible - a long generation will still slowly erode a label - but it changes the starting condition entirely, and it makes short clips reliably accurate. Combined with sensible chunk lengths, it covers most direct-response use cases.
2. Framing the product out of the failure zone
A shot design decision, and free. Product accuracy problems are scale problems, so shots that either hold the product large and steady, or keep it small enough that its label was never legible, both avoid the ugly middle ground where the text is big enough to read and wrong.
Fails: product held at chest height, mid-gesture, occupying maybe 15% of frame, rotating slightly. Big enough to read, small enough to garble, moving enough to drift.
Works: a held beat where the product fills a third of the frame and stops moving for a second, or the product resting in the background with no legible text at that scale.
3. Masked replacement
The heavyweight option: generate the scene, then composite the real product into it - mask the region the product occupies and inpaint the correct asset there, frame by frame, leaving everything else untouched.
This is the only approach that gives genuinely pixel-accurate packaging, and it is worth the cost in exactly the cases where accuracy is non-negotiable: regulated categories, recognisable packaging, anything with legible copy on the pack. The important implementation detail is what happens to the rest of the frame - a naive swap regenerates the whole shot and quietly changes the background, the lighting and sometimes the creator. Preserving the original background and recompositing only the masked region is what keeps a swap from turning into a re-shoot.
Reference Images That Actually Work
Most product-accuracy failures trace back to the source image rather than the model. A useful reference photo is a different thing from a good marketing photo:
- Plain, even lighting. Dramatic studio lighting bakes highlights into the reference that then fight whatever lighting the generated scene has.
- The label facing camera, fully visible. A three-quarter hero angle looks better in a catalogue and gives the model half a label to guess at.
- Neutral or removable background. Anything the model might interpret as part of the product will become part of the product.
- Real scale cues. A product photographed in isolation has no size, and models will happily render a 300ml bottle as a litre jug.
- More than one angle. Front, side and in-hand, if you have them. A single angle constrains the model to shots from that angle.
- Resolution above what you need. Detail can be discarded; it cannot be recovered.
Software and offerings are a different problem
For software there is usually no physical object at all, and the "product shot" is a screen. Generated UI is the worst case for text rendering, so the answer is almost always to composite a real screen recording rather than generate one - the model produces the person and the room, the recording produces the interface.
For offerings with nothing to show at all - a course, a service, an event - the honest move is to stop trying to show the product and let the creator carry the whole ad. A generated stand-in for something that does not physically exist is the fastest way to make an ad look fake.
Accuracy Is Not Only Visual
A product can be pixel-perfect on screen and still wrong in the ad, because the script says something untrue about it. This half gets much less attention and causes more actual damage, because a wrong claim is a compliance problem rather than a quality one.
Three things worth holding as hard constraints on any generated script rather than as suggestions:
- Claims to avoid. Category-specific statements that are not permitted - health outcomes in supplements, earnings implications in finance, efficacy language in cosmetics. These vary by market as well as by category, so a localized variant can breach a rule the source language never had.
- Banned words. Specific vocabulary a brand or a regulator will not accept, including words that mean something innocuous in general use and something regulated in your category.
- Proof points. The claims you can make, with the substantiation behind them. Supplying these matters as much as banning the others, because a script writer with no permitted claims will invent plausible ones.
The critical part is where these live. If they are typed into a prompt for one run, they apply to one run. If they are attached to the product itself, every variant, every language and every future campaign inherits them - which is the only version that survives contact with a real content calendar.
And the Name Has to Survive the Audio
One last accuracy surface that is easy to forget: the product name is spoken as well as shown. Models mangle names in two opposite directions - running joined capitals together into an unpronounceable blob, or compressing a perfectly ordinary two-word name into a single mumbled syllable. Either one undoes the work of getting the packaging right, because the viewer hears a different brand than the one on screen. The fixes, and which one applies when, are in the piece on making an AI voice sound human.
A Workable Default
- Store the product once - real photos, correct name, pronunciation, price, claims to avoid, proof points - rather than re-uploading per run.
- Generate from a real product frame rather than a description, wherever the product appears.
- Design shots that avoid the middle scale where label text is legible but unstable.
- Reserve masked replacement for hero beats and regulated categories, not for every shot.
- Check the finished render at full size, paused, on the frames where the pack is largest. Most label failures are invisible at thumbnail scale and obvious at full screen.
Common Mistakes
Describing the product in the prompt and hoping. "A white 500ml bottle with a minimal navy label" describes a category, and the model will render the category.
Fix: start from a real image. Prompting is for what happens in the scene, not for what the product looks like.
Using the hero marketing shot as the reference. Dramatic lighting, a partial angle and a styled background all get inherited by the generation.
Fix: keep a plain, evenly lit, label-forward reference specifically for generation, separate from the shot you use in a catalogue.
Swapping the product in a way that regenerates the whole frame. The pack becomes correct and the background, lighting and sometimes the creator quietly change with it.
Fix: mask the product region and recomposite over the original frame, so only the region you intended to change actually changes.
Reviewing renders at thumbnail size. Label garbling is completely invisible in a small preview and completely obvious on a phone held at arm's length.
Fix: review paused, at full resolution, on the frames where the product is largest.
FAQs
Can a model be trained on my product so it just knows it?
Fine-tuning on a specific object does improve consistency, but it is a poor fit for products that change - new packaging, new variants, new SKUs each season - and it does not solve label text, which fails for reasons unrelated to whether the model has seen the object before. Reference images and masked replacement generalize better and update instantly.
How long can a clip run before the label drifts?
It depends on the model and how much motion is in the shot, but the useful rule is that drift accumulates with generated duration, so shorter chunks drift less. If the product is on screen for the whole reel, that is an argument for keeping the product beats short and separate rather than for one continuous take - the same reason longer videos are built by chaining.
Do I need a masked swap for every ad?
No, and doing it everywhere is expensive without being better. Use it where recognition genuinely matters: the hero beat, regulated packaging, anything where the viewer is meant to identify the pack later on a shelf. Elsewhere, image-to-video from a real photo is enough.
What about competitor products appearing in frame?
Keep them out. Generated near-copies of real competing brands are a legal problem with no upside, and comparison claims carry their own rules in most markets. If a comparison is central to the ad, it belongs in the script under your claims process, not in the background of a shot.
Does this change how many variants I can produce?
Only in what has to be checked. The product assets and claim rules are set once and reused, so the marginal cost of variant twenty is the same as variant two. What does not scale is manual review, which is why it is worth deciding up front which beats actually need a frame-level check.