From Raw Discovery to Delivered Scripts, Fully Automated
Content teams needed repeatable script generation across multiple clients, but manual workflows introduced delays and inconsistent quality. We built a multi-tenant automation platform that discovers content, fact-checks it, generates scripts, and delivers them directly to project management tools.
Business Impact
Content discovery spend reduced per client
Business Impact
Executive Outcomes
Discovery API spend dropped from 96 calls/day to 1 per client
Scripts go from topic discovery to ClickUp the same day
Fact-checking and delivery run without human intervention
Near-zero production cost lets every new client drop straight to profit
The Challenge
“The agency was producing short-form video scripts for multiple clients. Each client had different topics, prompts, and preferences. The manual process involved fragmented intake spread across tools, inconsistent script style, and high overhead for status tracking and delivery.”
Script production was manual and fragmented, with content scattered across different tools for each client
Topic discovery, fact-checking, and script generation each required separate human effort on every piece
Tavily was burning 96 API calls per day per client due to aggressive 15-minute discovery cycles
No consistent quality control meant scripts varied widely in style and factual accuracy across clients
Delivery to project management tools was manual, with frequent duplicate submissions and status confusion
The Transformation
What changed after we built the system
Script production was manual and fragmented, with content scattered across different tools for each client
Sheet-driven control lets each client manage topics, prompts, and preferences without engineering support
Topic discovery, fact-checking, and script generation each required separate human effort on every piece
Automated pipeline discovers content, fact-checks claims, and generates scripts end-to-end
Tavily was burning 96 API calls per day per client due to aggressive 15-minute discovery cycles
Separated sync and discovery schedules reduced Tavily from 96 calls/day to 1 call/day per client
No consistent quality control meant scripts varied widely in style and factual accuracy across clients
Fact-checking pass runs before every script generation, keeping output factually grounded and cited
Delivery to project management tools was manual, with frequent duplicate submissions and status confusion
Generated scripts deliver directly to per-client ClickUp lists with dedup and status tracking
How separating sync from discovery cut costs 96x
The original architecture ran both settings sync and content discovery on a single 15-minute schedule. Every cycle, the system would sync client preferences from Google Sheets and simultaneously hit Tavily for fresh topics.
The problem: topic discovery is expensive and does not need to run every 15 minutes. News articles and social media posts do not appear that fast. But settings changes, like a client updating a prompt or adding a topic keyword, do need to propagate quickly.
Splitting into a 15-minute sync job (lightweight, settings only) and a daily discovery job (heavier, API calls) reduced Tavily usage from 96 calls per day to 1 call per day per client. The system responds to settings changes within minutes while keeping API costs under control.
How We Built It
Technical architecture for the curious
Control Plane
Each client manages their own settings in Google Sheets. Non-technical teams tune behavior without code changes.
Discovery
Multi-source content discovery with daily scheduling. Web, social, and video content converge into a shared flow.
AI Processing
Claims are extracted and verified against retrieved sources before script generation. Per-client prompts drive output style.
Data
Tenant-isolated state with row-level security. 10 migrations support the schema evolution of a growing client base.
Delivery
Scripts land in the right ClickUp list automatically. Dedup prevents duplicate deliveries across runs.
Engineering Decisions
Tradeoffs we made and why
Separated 15-minute sync and daily discovery schedules
Benefit
Cut Tavily API costs from 96 calls/day to 1 call/day per client
Cost
Content discovery is only as current as the last daily run, not real-time
Google Sheets as the client-facing control plane
Benefit
Non-technical teams can tune behavior without code changes or engineering tickets
Cost
No built-in validation on sheet inputs, requiring defensive parsing in the pipeline
Mandatory fact-checking before script generation
Benefit
Claims are verified against retrieved sources before appearing in any script
Cost
Adds latency and API cost to every script generation run
Supabase with RLS for tenant state instead of shared Google Sheets
Benefit
Proper relational queries, tenant isolation, and schema migration support
Cost
Higher operational complexity compared to a spreadsheet-based state layer
Certain client names, proprietary workflows, screenshots, and internal assets referenced in this case study are protected under a non-disclosure agreement and have been anonymized or omitted to comply with our confidentiality obligations.
Need content operations that scale without burning budget?
Book a free 30-minute call. We will map your content pipeline, identify the biggest cost drivers, and design automation that scales with your client base.
30 minutes with Apurva. Not a sales call.
Book Your Free Audit