Product pages with video significantly outperform those without — higher engagement, longer time on page, and better conversion rates. But with thousands of SKUs, creating individual product videos is impossible with traditional production. Most e-commerce stores have great product images but zero product video.
Product catalog (name, description, images) → Prompt per product → Batch generate → Embed on product pages
Your product database already has everything Video Agent needs: name, description, features, and images. Turn that structured data into video at scale.
# From your catalog API, database, or CSVproducts = [ { "name": "CloudWalk Pro Running Shoes", "category": "Footwear", "price": "$129", "description": "Lightweight performance running shoe with responsive foam midsole and breathable knit upper.", "features": [ "ResponsiveFoam midsole — 30% more energy return", "Breathable knit upper — keeps feet cool on long runs", "Carbon fiber plate — propels you forward", "Only 7.2 oz — one of the lightest in its class", ], "images": [ "https://cdn.store.com/products/cloudwalk-hero.jpg", "https://cdn.store.com/products/cloudwalk-side.jpg", "https://cdn.store.com/products/cloudwalk-sole.jpg", ], }, # ... hundreds more]
2
Build category-aware prompts
Consider using different video styles for different product categories. For example, fashion might benefit from energy and aspiration, while electronics might call for clarity and specs.
CATEGORY_STYLES = { "Footwear": { "tone": "energetic and aspirational, like a Nike ad", "focus": "performance benefits, how it feels, lifestyle context", "duration": "20 seconds", }, "Electronics": { "tone": "clear, knowledgeable, like a trusted tech reviewer", "focus": "specs that matter, real-world use cases, comparisons", "duration": "30 seconds", }, "Home & Kitchen": { "tone": "warm, practical, like a friend recommending a product", "focus": "solving everyday problems, quality materials, ease of use", "duration": "25 seconds", },}def build_product_prompt(product): style = CATEGORY_STYLES.get(product["category"], CATEGORY_STYLES["Electronics"]) features = "\n".join(f"- {f}" for f in product["features"]) return f"""Create a {style['duration']} product video for {product['name']}.Product: {product['name']} — {product['price']}{product['description']}Key features:{features}Video structure:- Hook (3s): Bold statement about the key benefit- Features (70% of duration): Walk through 2-3 standout features with text overlays. Reference the attached product images.- CTA (3s): "Available now for {product['price']}"Tone: {style['tone']}Focus on: {style['focus']}Use the attached product images as visual reference."""
Then poll for completion and match video URLs back to product IDs.
4
Embed on product pages
Once rendered, add video URLs to your product data and display on your store.
# After polling all videos to completion:for job in video_jobs: update_product_page( product_id=job["product_id"], video_url=job["video_url"], thumbnail_url=job["thumbnail_url"], )