Catalog Video (dynamic creative optimization, or DCO) gives every product in your catalog its own real video ad — generated from one approved template, personalized per product, delivered where your ads run, and kept up to date as your catalog changes. For the product story and pricing at a glance, see the Catalog Video product page.
Early access. Catalog Video is rolling out in stages. The docs below describe the full capability; get early access to join the rollout.
Why this exists
Every major ad platform now serves per-product video straight from your product feed — Meta catalog ads, Google’s video_link, TikTok Video Shopping Ads, Pinterest shopping. But almost no merchant has a video per SKU, because making them one-at-a-time is impossible at catalog scale, and traditional feed tools only paste text overlays on your product images.
Wavemaker generates true video per product — real scenes, motion, voiceover — at prices comparable to what overlay tools charge for static banners.
How it works
- Connect your products. Paste your shop URL, upload photos or a CSV, connect Google Sheets, Shopify, or your Merchant Center feed. See Connect your catalog.
- Approve a template. Wavemaker’s Template Studio pitches concepts, you pick one, and a full master video is generated with the usual quality gates. Its text, price, image, and spoken lines become slots — the parts that change per product. See Templates & slots.
- Every product gets a video. Each catalog row is bound into the template’s slots and rendered. Costs are quoted before anything runs.
- It’s delivered, not downloaded. Hosted feeds plug into Meta/Google/TikTok/Pinterest in minutes; every variant is also fetchable at a URL any system can construct from the SKU. See Delivery.
- It never goes stale. Catalog syncs detect changes and re-render only what’s affected — with a cost quote and a budget cap. See Sync & freshness.
Variant tiers — pay for what actually changes
Each product’s video is priced by what changes relative to the template:
| Tier | What changes | Credits |
|---|---|---|
| S — Overlay | Text, price, product image, end card, logo | 3 per video |
| A — Audio | Tier S + spoken lines re-voiced per product (“The Anker 737 — now thirty-nine ninety-nine”) | 6 + 2 per re-voiced line |
| M — Hero | The product’s real photo becomes a generated hero shot | 25 per video |
| L — Flagship | A full generation for a handful of top products | standard generation pricing |
A typical setup: your top products by revenue get hero treatment; the long tail ships at Tier S — so a 10,000-product catalog is affordable.
Built for every catalog size
The same engine serves three very different customers:
- Boutique (1–50 products) — paste your Etsy or Shopify shop URL, pick products from a visual picker, pick a look, get videos. No feeds, no jargon, every video individually reviewable. Includes marketplace-ready listing videos (e.g. Etsy’s silent 1:1 format) and social cuts.
- Growth DTC (50–5,000) — store connectors, sample previews with a quote before the full run, daily sync, hosted ad feeds as the primary delivery.
- Enterprise (5,000–100k+) — multi-feed ingestion, approval workflows, budget caps, hourly sync, API/MCP-first operation, and campaign matrices (geo × language × offer). See Targeting & Signal Packs.
You never migrate between these — a growing shop just becomes a bigger catalog on the same campaign.
Quality at scale
Every variant passes deterministic checks before it can publish: text fit, no blank/null renderings, prices verified against your own feed data (a price not in your feed can’t appear), platform spec conformance, and sampled visual review. Templates themselves are approved only after a robustness probe — your catalog’s longest title, extreme prices, and worst image are test-rendered first, so edge cases fail once at template time, not 500 times at catalog time.