Text generation is the easy part. Any model will write you a script.
The hard part is everything after: turning the script into a video, getting it approved by a human, publishing it to the right platform at the right time, and doing that repeatedly without someone babysitting it.
This is the stack we actually run for our own content agent, and the version we adapt for clients. Nothing here is theoretical.
The shape of the system
Our content agent is one specialist inside a larger multi-agent setup. A manager agent routes the request, the content agent produces the asset, an evaluator agent checks it, and a human approves before anything publishes.
That last step is not a limitation we are working to remove. It is the design. Anything that leaves the company gets a human in front of it.
The pipeline has five stages:
1. Brief — what to make and for whom 2. Script — the text, structured for the format 3. Render — script becomes video 4. Check — automated evaluation, then human approval 5. Publish — scheduled to the platform Each stage is a separate step you can debug on its own. That matters more than any individual tool choice.
Stage 1 and 2: brief and script
The script step is the one everybody gets wrong, and not for the reason they expect.
The problem is not writing quality. It is structure. A script that a video tool can render needs scene breaks, a defined length, and no formatting the renderer will choke on. A model asked to "write a script" produces prose. A model asked to return a specific JSON structure with scene fields produces something a pipeline can use.
What we learned: specify the output format precisely at this stage, or you spend the rest of the pipeline parsing text with regular expressions. That is a bad place to be.
We keep the content agent separate from the outreach agent for the same reason. Two narrow agents that do one thing each are far easier to make reliable than one general agent that writes both marketing content and sales emails.
Stage 3: render
This is where the tool choice actually matters, and where most of the cost sits.
Avatar and voice video
HeyGen is our default for talking-head content — product explainers, announcements, anything where a presenter carries the message. Avatars, voice cloning and multi-language translation with lip sync.
Where it is strong: consistency. The same avatar and voice across fifty videos, which matters enormously for brand. It also has a proper API, which is the difference between a tool you can automate and a tool you have to click.
Where it is weak: it is a talking head. It is not going to produce cinematic B-roll, and pretending otherwise wastes credits.
Cost model to understand: HeyGen bills on credits, and credits map to video minutes. Long-form content burns through an allowance far faster than people expect during trials. Estimate your monthly output in minutes, not videos, before choosing a tier.
Generated visual footage
For B-roll, motion and anything not a presenter, we use generative video tools — Higgsfield and Veo among them.
Where they are strong: short atmospheric clips, product motion, visual filler that would otherwise cost a stock subscription or a shoot.
Where they are weak: control. You get something close to what you asked for, not exactly what you asked for. Budget for regeneration. Any pipeline that assumes the first output is usable will stall constantly.
Practical rule: use generated footage for clips under about ten seconds, cut between them, and do not try to generate a continuous long scene.
What we would change
If we started again, we would build the render stage as a swappable module from day one. We did not, and swapping a video provider was more painful than it should have been. Video tools in this category change pricing and capability every few months. Assume you will move.
Stage 4: check
This stage is what separates a pipeline from a toy, and it is the one most teams skip.
The evaluator agent checks the output before a human ever sees it. Not for creative quality — for the mechanical things that go wrong constantly: wrong length, missing call to action, mangled brand name, script that does not match the brief, a render that failed halfway and produced thirty seconds of silence.
Catching those automatically means the human review is a genuine approval decision rather than a proofreading job. That is the difference between a person spending two minutes and twenty minutes per asset, and it is what decides whether the whole system saves time at all.
Then a human approves. Always. Nothing publishes without it.
Stage 5: orchestration and publishing
n8n holds the whole thing together — triggering the pipeline, calling each tool, handling failures, waiting on the approval step, and pushing the finished asset to the scheduler.
We use n8n rather than Zapier here for one specific reason: per-execution billing. This pipeline loops. Renders fail and retry. A run might involve fifteen internal steps. On per-task pricing every one of those is billable; on per-execution pricing the whole run is one unit. We covered the full comparison in n8n vs Zapier for AI agents, including the case where Zapier is genuinely cheaper.
The approval step deserves a note. n8n can pause a workflow and wait for a human response before continuing. That single capability is what makes human-in-the-loop practical rather than a manual handoff that breaks the automation.
The honest cost picture
Nobody publishes this part, so here it is.
Video rendering dominates. It will be your largest recurring line by a wide margin. Everything else is noise next to it.
Model API costs are small for scripting. Scripts are short.
Orchestration is a flat monthly cost and is the most predictable item on the list.
The hidden cost is regeneration. Failed renders, off-brief scripts and rejected outputs all cost credits and produce nothing. Assume a meaningful percentage of your generation spend produces nothing usable, and price the pipeline accordingly. Teams that budget only for successful outputs run out mid-month, every month.
Should you build this?
Probably not, if you publish a handful of videos a month. The pipeline costs more in engineering than you will save. Use the tools directly.
Probably yes, if you publish daily, across multiple platforms or languages, or you are producing content for clients at volume. The pipeline pays for itself through consistency more than speed — same format, same brand, same quality, every time, without depending on who is available that week.
The volume threshold is roughly where a person is spending more than a day a week on production mechanics rather than on the ideas.
Where to start
Do not build all five stages at once. Build the script stage, run it manually into your video tool for two weeks, and see whether the output is good enough to be worth automating. Most teams discover their real bottleneck is deciding what to make, not making it — and no pipeline fixes that.
If you want the build costed, ZAC Estimator gives a range in about two minutes with the assumptions written out. To talk through whether it is worth automating at your volume at all, describe your setup to ZAC Consultant.
More on how we build this work: AI automation, business process automation, and systems we have shipped.


