Workflow objective#
This blueprint takes a marketing campaign from initial brief through keyword research, content creation, SEO review, human approval, and multi-channel distribution. It is designed for marketing teams that produce regular content output (weekly or higher frequency) and want to reduce the manual coordination between research, writing, review, and distribution steps.
The workflow assumes AI agents handle the repeatable, research-intensive steps while humans retain final approval before any content goes live.
Preconditions#
- Campaign brief template with required fields (topic, audience, goal, CTA, keyword focus).
- SEO tool access for keyword data (SEMrush, Ahrefs, or equivalent).
- CMS or content scheduler access for each distribution channel.
- HubSpot or email platform connection for email distribution.
- Defined brand voice guidelines loaded into the AI agent's system prompt or knowledge base.
- Approval stakeholder list with designated reviewer per content type.
Workflow steps#
- Campaign brief submission: Marketing team or requester submits a structured brief specifying topic, target audience segment, campaign goal, primary keyword, and desired channels.
- Keyword and audience research: Research agent queries SEO tool for keyword volume, competition, and SERP intent; identifies top 3 ranking pages; extracts secondary keyword opportunities.
- Content brief generation: Brief agent synthesizes research into a structured content brief: recommended headline, outline, word count, keyword placement guidance, and competitive differentiation notes.
- Draft creation: Writing agent generates full draft content based on brief, applying brand voice guidelines and targeting word count and structure requirements.
- SEO review: SEO review agent checks draft against brief requirements: primary keyword in H1 and first 100 words, secondary keyword coverage, recommended internal linking opportunities, meta description draft, and estimated readability score.
- Human approval checkpoint: Draft, SEO review notes, and suggested meta data are routed to designated reviewer via Slack notification. Reviewer approves, requests edits, or rejects. Rejected drafts re-enter the writing step with reviewer feedback appended.
- Multi-channel distribution: Approved content is formatted for each approved channel — blog post to CMS, LinkedIn version to social scheduler, email version to HubSpot email sequence, summary to internal Slack channel.
- Performance logging: Campaign record created in tracking sheet with publish date, channel list, primary keyword, and 30-day review reminder.
Copy-ready workflow template#
Trigger: New campaign brief submitted via intake form.
Step 1: Parse brief fields.
- Required: topic, audience, goal, primary_keyword, channels[]
- Validation: reject if any required field is empty → notify requester
Step 2: Keyword research.
- Tool: SEMrush API or equivalent
- Queries: volume + KD for primary_keyword, top 10 SERP URLs, related terms
- Output: keyword_brief_object {
primary: {keyword, volume, kd},
secondary: [{keyword, volume}...],
top_competitors: [{url, title, word_count}...]
}
Step 3: Generate content brief.
- Input: keyword_brief_object + campaign brief
- Output: content_brief {
recommended_h1, outline[], target_word_count,
keyword_placement_notes, competitive_angles[]
}
Step 4: Generate draft.
- Input: content_brief + brand_voice_guidelines
- Output: draft {body_text, meta_description, social_summary}
Step 5: SEO review.
- Check: H1 contains primary_keyword (pass/fail)
- Check: primary_keyword in first 100 words (pass/fail)
- Check: secondary keywords present (coverage %)
- Check: meta_description length 120-160 chars (pass/fail)
- Check: word_count within 10% of target (pass/fail)
- Output: seo_review_report {checks[], pass_count, fail_count, notes[]}
Step 6: Approval gate.
- Route to: designated_reviewer (Slack DM + email)
- Payload: draft + seo_review_report + meta_data
- Decision options: APPROVE / REQUEST_EDITS / REJECT
- If REQUEST_EDITS → append feedback → return to Step 4
- If REJECT → notify requester → end workflow
- Timeout: 24 hours → escalate to backup reviewer
Step 7: Distribution.
- If channels includes "blog" → post to CMS as draft (human publishes)
- If channels includes "linkedin" → schedule to social scheduler
- If channels includes "email" → create HubSpot draft campaign
- If channels includes "slack" → post summary to #marketing-updates
Step 8: Logging.
- Create row in campaign tracker:
{date, topic, channels, primary_keyword, reviewer, status: "published"}
- Set 30-day review reminder
Decision nodes and approval gates#
Brief validation gate (Step 1): Rejects incomplete briefs immediately rather than passing them downstream where incomplete fields cause agent errors. This gate saves the most time over high volume.
SEO review threshold (Step 5 → Step 6): Consider adding a threshold: if the SEO pass count is below 3 of 5 checks, automatically return to the writing agent with the review report before routing to human review. This reduces reviewer burden for drafts with obvious SEO gaps.
Approval timeout escalation (Step 6): Set a maximum wait time for human approval. After 24 hours without a response, escalate to a backup reviewer. After 48 hours, notify a team lead. Workflows that stall at human gates are a common failure mode in marketing automation systems.
Channel-specific formatting (Step 7): Each distribution channel requires different formatting. The LinkedIn version of a blog post should be 150-250 words, not a truncated blog excerpt. The email version needs a subject line and preview text. Build channel-specific formatting as separate sub-steps rather than asking one agent to handle all formats.
Tool connections#
| Step | Tool | Action | |------|------|--------| | 2 — Keyword research | SEMrush / Ahrefs | Keyword volume, KD, SERP data | | 4 — Draft creation | OpenAI / Anthropic | Content generation | | 6 — Approval routing | Slack + Email | Reviewer notification | | 7 — Blog distribution | WordPress / Webflow CMS | Draft post creation | | 7 — Social scheduling | Buffer / Hootsuite | Post scheduling | | 7 — Email distribution | HubSpot | Campaign draft creation | | 8 — Performance logging | Google Sheets / Airtable | Campaign record |
Governance guidance#
- Version-control your brand voice guidelines and content brief template. When voice guidelines change, update the agent's system prompt and re-run a sample batch to validate output quality before full deployment.
- Maintain a feedback log from human reviewers. Patterns in edit requests indicate where agent prompts need adjustment.
- Review the approval gate timeout configuration quarterly. As reviewer confidence in agent output increases, timeout windows can be shortened.
FAQ#
How many drafts typically go back for edits before approval?#
In early deployment, expect 40-60% of drafts to require at least one revision cycle. This rate typically drops to 15-25% after 4-6 weeks as prompt refinements address systematic weaknesses. Track revision rates by content type and keyword category to identify where the workflow needs improvement.
Can this workflow handle multiple concurrent campaigns?#
Yes. The workflow is stateless by design — each campaign brief triggers an independent workflow instance. Run as many concurrent instances as your LLM rate limits and reviewer bandwidth support.
What if keyword data is unavailable for a niche topic?#
Add a fallback branch at Step 2: if keyword tool returns insufficient data (volume below threshold or no SERP results), flag the brief for manual keyword research before proceeding. Continuing with no keyword data produces drafts without a clear SEO angle.
Related resources#
- Parent page: AI Agent Templates
- Related template: Marketing Content Generation Prompt Template
- Related template: Marketing AI Agent Launch Checklist
- Cross-playbook: AI Agent Marketing Examples
- Cross-playbook: What Are AI Agents?
- Cross-playbook: Build an AI Agent with LangChain