I Built an AI Marketing Ads Generator with VEO3 That Creates Videos in Minutes
Aymen K

Aymen K @kaymen99

About: AI Developer | AI Automation | solving problems with AI

Location:
Algeria
Joined:
Jan 4, 2025

I Built an AI Marketing Ads Generator with VEO3 That Creates Videos in Minutes

Publish Date: Jul 27
0 0

If you’ve been following the AI space or just scrolling through Twitter in the last couple of days, you’ve probably seen those Google VEO3-generated ads popping up everywhere. And for good reason. These things look amazing — and if no one told you, you’d never guess they were made by AI. Marketing videos that used to cost hundreds of thousands of dollars are now being made for literally under a dollar using AI.

As someone who doesn’t know much about marketing or design 😅, I was curious to see what I could come up with myself. So I built a simple app that lets anyone start generating these AI videos in seconds.

▶️ See the ad I generated in seconds for “Mercedes F1 Car Launch” — made entirely with Google VEO3. You won’t believe it’s AI:

So if you've been curious about the AI video generation space but haven't had a chance to build with it yet, this tutorial is for you 😅. I'll walk you through exactly how to built an AI video generation system that creates professional marketing ads in minutes

Here's what you'll learn:
VEO3 prompt engineering - The secret structured formats that unlock Google's VEO3 hidden potential
Cost-effective AI ad videos - How to create $10,000+ quality videos for under $1 each
Automated marketing ads workflow - Build your own app that generates marketing ads without the hassle

The best part? You don't need to be a video expert or have a massive budget. Just willingness to experiment with this new AI tools that are literally changing the game right now.

Let's dive in 🚀


🚀 Want to try it out? Test the live demo: VEO3 Ads Generator

🤔 New to Google's VEO3 video generation? Check my previous post: Turn Any Topic into Viral AI Videos Using Google's VEO3 Model


🎬 What Are These Viral VEO3 Ads?

If you've been on Twitter lately, you've probably seen these incredibly realistic marketing videos popping up everywhere:

  • IKEA furniture assembly ads that look professionally shot
  • Tesla car commercials with cinematic quality
  • Sneaker launch videos that rival Nike's production value

The secret? These aren't traditional video productions. They're AI-generated using Google's VEO3 model, and they're created using specially formatted prompts that unlock VEO3's hidden potential.

🔍 The Magic Behind Structured Prompts

What makes these ads so effective isn't just VEO3 itself - it's the structured prompt format that creators discovered. Instead of simple text descriptions, these prompts use markup languages like YAML and JSON:

# YAML Format Example
scene: "Close-up of hands assembling IKEA furniture"
character: "Person in casual clothing, focused expression"
environment: "Modern living room, natural lighting"
camera: "Handheld, intimate perspective"
Enter fullscreen mode Exit fullscreen mode
{
  "scene": "Luxury car driving through mountain roads",
  "character": "Confident driver, hands on steering wheel",
  "lighting": "Golden hour, dramatic shadows",
  "audio": "Engine purr, wind through windows"
}
Enter fullscreen mode Exit fullscreen mode

This structured approach works because VEO3 was trained on the entire internet - and the internet runs on structured data formats like these. When you feed VEO3 a properly formatted prompt, it understands exactly what you want.

Why Choose Google VEO3 for Marketing Ad Generation?

  • Cost-effective: Create professional ads for under $1 vs $10,000+ traditional production
  • Speed: Generate marketing videos in minutes instead of weeks
  • Scalability: Produce multiple video variations instantly
  • Accessibility: No video editing skills required - though you need to be a little creative 😅

🛠️ Building The Ads Video Generation

I built a simple system that automates the entire video generation workflow. Here's how it works:

1️⃣ Prompt Library Management

I started by diving deep into Twitter to collect any good prompts I could find from the community (Thanks to everyone for sharing them publicly!). There are tons of people experimenting with VEO3 designs right now, so I probably missed a lot of amazing prompts out there!

To make them all work together in a standard format, I converted everything into JSON and compiled a small prompt library that we can use as reference for our ad creative generation:

# Each prompt is a Python dict with structured data
amazon_gamer_room = {
    "name": "Amazon Gamer Room Setup",
    "scene": "Close-up of hands unboxing gaming gear",
    "character": "Gamer in casual hoodie, excited expression",
    "environment": "Modern bedroom, RGB lighting, gaming setup",
    "camera": "Handheld, first-person perspective",
    "lighting": "Colorful RGB ambiance, dramatic shadows",
    "audio": "Unboxing sounds, excited breathing"
}
Enter fullscreen mode Exit fullscreen mode

📚 Want to see all the prompts? Check out the complete VEO3 prompt library on GitHub - there are prompts for IKEA, Tesla, Nike, Jeep, and many more!

2️⃣ AI-Powered VEO3 Prompt Generation

The core of the system is an AI agent that takes a brand brief and transforms it using inspiration from the prompt library:

async def generate_veo3_video_prompt(ad_idea: str, inspiration_prompt: str):
    """Generate a VEO3-optimized prompt based on user idea and inspiration"""

    system_prompt = """
    Edit a structured prompt object (JSON) based on the provided user creative idea.  

    # Instructions:
    - Adapt the inspiration prompt to the user creative direction including style, room, background, elements, motion, ending, text, keywords
    - Do not modify any part of the structure unless the user explicitly requests it.
    - Maintain original structure and intention unless asked otherwise.

    # **Output**: Your response should be in the following structure:

    {
        "title": "Title of the video",
        "prompt": "Prompt for the video"
    }
    """

    user_message = f"""
    Create a VEO3 prompt for this ad idea: {ad_idea}

    Follow and get instructions directly from this prompt: 
    {inspiration_prompt}
    """

    result = await ainvoke_llm(
        model="gpt-4.1",
        system_prompt=system_prompt,
        user_message=user_message,
        temperature=0.3,
        response_format=VideoDetails  # Structured output
    )

    return result
Enter fullscreen mode Exit fullscreen mode

💡 Pro tip: I use structured output to make the LLM return both the ad title and the video prompt in a consistent format:

class VideoDetails(TypedDict):
    title: str = Annotated[str, "Title of the video"]
    prompt: str = Annotated[str, "Prompt for the video"]
Enter fullscreen mode Exit fullscreen mode

This ensures we always get clean, structured data that's easy to work with.

3️⃣ VEO3 Integration via Kie AI

There are lots of ways to use Google's VEO3 model currently, but the best one I found is Kie AI. They offer great pricing and don't require a subscription, so it's perfect for testing:

def start_video_generation(prompt: str, aspect_ratio: str = "16:9", model: str = "veo3_fast"):
    """Submit video generation request to Kie AI"""

    url = "https://api.kie.ai/v1/video/generate"

    payload = {
        "prompt": prompt,
        "model": model,
        "aspect_ratio": aspect_ratio
    }

    headers = {
        "Authorization": f"Bearer {os.environ['KIE_API_TOKEN']}",
        "Content-Type": "application/json"
    }

    response = requests.post(url, json=payload, headers=headers)

    if response.status_code == 200:
        return response.json().get("taskId")
    else:
        raise Exception(f"Failed to start generation: {response.text}")
Enter fullscreen mode Exit fullscreen mode

📌 What we need to provide to Kie AI:

  • Prompt: The structured video description we generated
  • Model: Either veo3_fast (cheaper/faster) or veo3 (higher quality/more expensive)
  • Aspect ratio: 16:9 for horizontal or 9:16 for vertical videos

Google VEO3 Video generator

4️⃣ Automated Video Generation

The system handles the complete workflow automatically:

async def run_workflow(inputs):
    """Complete video generation workflow"""
    try:
        # 1. Generate optimized prompt
        video_details = await generate_veo3_video_prompt(
            inputs["ad_idea"], 
            inputs["inspiration_prompt"]
        )

        # 2. Submit to VEO3
        taskid = start_video_generation(
            video_details.prompt,
            inputs["aspect_ratio"],
            inputs["model"]
        )

        # 3. Wait for completion
        result = wait_for_completion(taskid)

        # 4. Log and return results
        if result.get("status") == "completed":
            video_url = result.get("response", {}).get("resultUrls", [])[0]
            return {
                "title": video_details.title,
                "prompt": video_details.prompt,
                "video_url": video_url
            }

    except Exception as e:
        print(f"Workflow error: {str(e)}")
        return None
Enter fullscreen mode Exit fullscreen mode

🎨 Streamlit App

I know some people just want to test the power of the model and don't care about the code 😄, so I built a Streamlit web app that allows to get started easily, you just need to setup your API keys and you're good to go:

# Streamlit app for easy video generation
st.title("🎬 AI Video Generator")

# User inputs
video_idea = st.text_area("Describe your video concept:")
selected_prompt = st.selectbox("Choose prompt inspiration:", prompt_options)
aspect_ratio = st.selectbox("Aspect ratio:", ["16:9", "9:16"])
model = st.selectbox("Model:", ["veo3_fast", "veo3"])

if st.button("🎬 Generate Video"):
    with st.spinner("Generating your video..."):
        result = asyncio.run(run_workflow({
            "ad_idea": video_idea,
            "inspiration_prompt": selected_prompt['prompt'],
            "aspect_ratio": aspect_ratio,
            "model": model
        }))

        if result:
            st.success("✅ Video generated successfully!")
            st.video(result["video_url"])
Enter fullscreen mode Exit fullscreen mode

💰 Cost Breakdown

The economics are incredible:

  • VEO3 Fast: ~$0.40 per video (or $2 per video with the higher quality VEO3)
  • GPT-4 for prompt generation: ~$0.02 per request
  • Total cost per video: under $0.50

Compare this to traditional video production costs of $10,000-$100,000+ and the value proposition is obvious.

📊 Keeping Track of Everything

One thing I found super helpful was that all the videos and prompts generated are automatically saved to an Excel file, so you can review them whenever you want. This creates a nice history of:

  • Video titles and prompts that were generated
  • Direct links to the video files
  • Generation timestamps for tracking
  • Model settings used (VEO3 fast vs VEO3)
  • Aspect ratios chosen

This way, you can easily go back and see what worked well, reuse successful prompts, or share specific videos with others. It's like having a personal library of all your AI-generated content!


🔗 Try It Yourself

If you want to try it right now, you can use the free app I deployed here:
👉 Try AI Marketing video generation with VEO3

But if you prefer to check out the code and run it on your own machine, here’s how to get started:

1- Clone the repository from 🌐 GitHub

2- Install the required dependencies:

cd viral-ai-vids/video-ads-generation
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode

3- Create a .env file and add your API keys:

First, create an account on Kie AI. as I said before, their platform currently offers the best pricing options for accessing the VEO3 model. Once registered, generate your API key from your Kie AI dashboard.

For AI models, I usually use OpenRouter to access various LLMs in one place — but you can use any other provider like OpenAI, Claude, or DeepSeek, since LangChain supports them all.

Now, create a .env file and add your API keys:

KIE_API_TOKEN=your_kie_ai_token_here
OPENROUTER_API_KEY=your_openrouter_key_here  # For LLM access
Enter fullscreen mode Exit fullscreen mode

4- Run the script directly:

python main.py
Enter fullscreen mode Exit fullscreen mode

5- Or if you prefer a more user-friendly interface, run the Streamlit app:

streamlit run streamlit_app.py
Enter fullscreen mode Exit fullscreen mode

The app will open in your browser where you can:

  • 📝 Add your API keys
  • 💡 Enter your video idea
  • 🎨 Choose prompt inspiration from the library
  • ⚙️ Select VEO3 model and aspect ratio
  • 🎬 Generate professional marketing videos
  • 📥 Download the video

Google VEO3 Marketing Ads Generator

🚀 What This Means for Everyone

We're witnessing a massive shift in content creation. The ability to create professional-quality video content for under a dollar changes everything:

  • Small businesses can now compete with major brands without huge budgets
  • Content creators can experiment freely without financial constraints
  • Marketing agencies can scale video services without massive overhead

And we're just getting started! Right now we're limited to 8-second videos, but that's temporary. The models are improving rapidly, and the community keeps discovering new creative techniques daily.

The real exciting part? This is just VEO3. Imagine what's coming next!


🎬 Ready to Get Started?

The barrier to entry is incredibly low - just a laptop, some API credits, and curiosity. While others are still figuring out how to use these tools manually, you could be generating professional marketing videos at scale.

The question isn't whether AI will transform marketing - it's whether you'll be part of that transformation from the beginning.


What do you think about this approach? Have you experimented with Google VEO3? Share your experiences in the comments below!

Comments 0 total

    Add comment