DEV Community

Aria Cole
Aria Cole

Posted on

How I Built a 273 Template AI Ad Generator as a Solo Dev

Two weeks ago I had an idea: what if you could drop any brand's URL and get professional ad creatives generated instantly?

Today, Silo has 92 users, 273 ad templates, and people are actually using it to generate real ads for their brands.

Here's how I built it.

The Stack

Nothing fancy:

  • Next.js 14 (App Router)
  • Prisma + SQLite on Fly.io (single machine, volume mounted)
  • Gemini AI for both Brand DNA extraction and image generation
  • Stripe for billing
  • Google OAuth for sign in

Total infrastructure cost: under $10/month. SQLite on a single Fly.io machine is honestly all you need until you hit thousands of users.

How Brand DNA Works

When a user drops a URL, here's what happens:

  1. We scrape the page using Cheerio (server side, no headless browser needed)
  2. Extract all visible text, meta tags, Open Graph data, and image URLs
  3. Send everything to Gemini with a detailed prompt asking it to analyze: brand colors, typography style, voice/tone, target audience, key messaging
  4. The AI returns structured JSON we call "Brand DNA"

This Brand DNA becomes the foundation for every ad we generate. It's what makes the output actually look like the brand instead of generic AI slop.

The Template System

This is where it gets interesting. Each of our 273 templates is essentially a mega detailed AI prompt with [BRACKET] placeholders.

For example, our "Steam Mirror Writing" template describes exactly: the background (steamy bathroom mirror), the text style (finger drawn on condensation), the product placement, the lighting, everything. When we generate, the AI fills in the brackets with brand specific info from the Brand DNA.

The key insight: the more detailed the prompt, the better the output. A vague prompt like "create an ad for this product" gives you garbage. A 200 word prompt describing exact layout, typography, colors, and composition gives you something that actually looks professional.

The Pivot That Changed Everything

I originally built a Fabric.js canvas editor so users could manually adjust generated ads. Layers, text tools, drag and drop, the whole thing.

After building it 5 different ways, I scrapped everything and pivoted to an AI chat editor. Users just describe what they want changed ("make the text bigger", "change the background to blue") and the AI regenerates the image.

Way simpler. Way better results. Sometimes the best code is code you delete.

What's Actually Working for Growth

Forget paid ads for now. Here's what's driving real signups:

  1. Twitter/X (32 visitors in one day from organic posts)
  2. TAAFT directory listing (9 referrals, totally free)
  3. Organic word of mouth: A Polish AI educator found Silo, wrote a full tutorial about it, and drove 42 signups in a single day

That last one blew my mind. I didn't reach out to him. He found the tool, liked it, and shared it with his audience. You can't buy that kind of marketing.

The Numbers (Keeping It Real)

  • 92 total users
  • 1 paying customer at $59/month
  • 192 total ad generations
  • 273 templates across 15+ categories
  • ~$0.067 per generated image (Gemini AI)
  • Under $10/month infrastructure

Am I getting rich? No. But the product works, people are using it, and organic growth is happening. That's enough signal to keep building.

What's Next

  • More SEO content (comparison pages are converting)
  • Template library keeps growing
  • Trying to crack the free to paid conversion
  • More direct outreach to DTC brands

If you're building something similar or have questions about the stack, drop a comment. Happy to share more details.

Try it free: siloai.app

Top comments (0)