Marketing Automation Agent
How we built an AI agent that 10×’d marketing campaign brief output for a B2B services firm. Reads brand guidelines, audience research, and past campaigns; produces structured briefs the marketing team edits and ships.
A marketing team capped by brief production
A B2B services firm with a small in-house marketing team kept hitting the same ceiling: producing campaign briefs. Each brief required reading brand guidelines, pulling target audience data from past research, and reviewing recent campaigns to avoid repetition. End-to-end, a senior marketer spent 4–6 hours per brief.
They could ship 8–12 campaigns per quarter. The pipeline of ideas was much longer. Hiring more senior marketers wasn't in the budget, and offshoring brief production had failed twice — too much context, too much brand voice nuance, too much risk of the wrong message reaching customers.
They wanted an AI tool that didn't hallucinate the brand, didn't produce generic output, and didn't require a 30-minute prompt-engineering exercise per brief.
A single-purpose agent with deep context
We scoped the agent to one job: produce structured campaign briefs from a short request. Not generate marketing copy, not run campaigns, not manage spend — just the brief that humans then edit and ship.
The agent has access to three knowledge bases via RAG: the brand guidelines, audience research (with citations to source documents), and the past 18 months of campaigns. Every section of every brief cites which source informed it.
Output is structured into the same template the team already uses: target audience, pain point, value proposition, channel mix, key messages, CTA. The agent fills each section. The marketer reviews, edits, and ships — typically in 30 minutes instead of 4–6 hours.
Stack
Anthropic Claude with structured output for the brief template; OpenAI GPT used for some retrieval reranking.
Three knowledge bases (brand, research, past campaigns) indexed in pgvector with custom chunking per content type.
Golden test set of 40 briefs with expected sources. Every model upgrade scored automatically before rollout.
Slack-native interface — marketers describe the campaign in a thread, agent posts the brief back. No new tool to learn.
Logging, drift monitoring, and a feedback channel where edits are captured and fed back into eval set.
Eight months in production
10× brief throughput
The marketing team now produces around 80 campaign briefs per quarter — up from 8–12 — without hiring.
90% accepted with light edits
Marketers edit roughly 90% of generated briefs in under 30 minutes. The remaining 10% are regenerated with extra context.
Brand voice consistency improved
Citations make the agent traceable. When something feels off, the marketer can see exactly which source the agent leaned on and correct course.
Senior marketers freed for strategy
The same team now spends time on positioning, channel strategy, and feedback loops instead of brief production.
“It’s not that the agent writes better than my senior marketers. It writes the first draft as fast as my senior marketers think. That’s where the leverage is.”
— Head of Marketing, B2B services firm
What we’d do again
Single-purpose beats general-purpose
We scoped the agent to one job and built deep context for it. A "general marketing assistant" would have been less useful, less trustable, and harder to evaluate.
Citations earned the trust
Marketers initially didn't trust the output. Once every claim was cited and verifiable, trust came fast — and remained when occasional errors surfaced.
Slack-native unlocked adoption
Building a new app would have killed adoption. Meeting the team where they already worked (Slack) made onboarding effortless.
Eval discipline saved us at month 4
When we upgraded to a newer model, the golden test set caught a regression in tone before it shipped. Without that, we'd have damaged trust.