AI SEO Content Brief Generator With n8n And Claude
Generate comprehensive SEO content briefs with Claude by analyzing Ahrefs SERP data and top-ranking competitor content.
Importing this blueprint? Follow the n8n guide — credentials, test runs, and common pitfalls.
Open import docs →Download Integration Assets
Import this editorially reviewed blueprint directly into your n8n dashboard.
Connected Apps
Interactive Workflow Canvas
Drag nodes vertically to re-order execution sequence. Edit or add steps to customize your blueprint.
Execution Steps
-
Read Keyword List from Notion
Generate comprehensive SEO content briefs with Claude by analyzing Ahrefs SERP data and top-ranking competitor content.
n8n Notion node -
Fetch SERP Data from Ahrefs API
Generate comprehensive SEO content briefs with Claude by analyzing Ahrefs SERP data and top-ranking competitor content.
n8n HTTP Request node (Ahrefs API) -
Claude 3.5 Sonnet Analyzes Top-Ranking Content
Generate comprehensive SEO content briefs with Claude by analyzing Ahrefs SERP data and top-ranking competitor content.
n8n HTTP Request node (Anthropic API) -
Generate Comprehensive Content Brief
Generate comprehensive SEO content briefs with Claude by analyzing Ahrefs SERP data and top-ranking competitor content.
n8n Code node + Anthropic API -
Post Brief to Notion and Alert via Slack
Generate comprehensive SEO content briefs with Claude by analyzing Ahrefs SERP data and top-ranking competitor content.
n8n Notion node + Slack node
Prompt Customizer Sandbox
Variables
You are a senior SEO strategist with 10+ years of experience. Analyze the following SERP data for the target keyword and generate a comprehensive content brief for a writer.
Target keyword: [TARGET_KEYWORD]
Monthly search volume: [SEARCH_VOLUME]
Keyword difficulty: [KD_SCORE]
Top 5 ranking URLs and their key characteristics:
[SERP_DATA]
Generate a content brief with the following sections:
1. **Search Intent**: Classify as informational/navigational/transactional/commercial. Explain in 2 sentences what the searcher actually wants.
2. **Recommended Format**: Article, listicle, how-to guide, comparison page, etc. Justify based on SERP patterns.
3. **Target Word Count**: Provide a specific range (e.g., 1,400–1,800 words) based on top-ranking competitors.
4. **Proposed H1 Title**: Write 3 title options that balance keyword inclusion with click-worthiness.
5. **Content Outline**: Provide H2 and H3 structure with brief descriptions of what each section should cover.
6. **Semantic Keywords to Include**: List 8–12 related terms and LSI keywords found across the top-ranking pages.
7. **Unique Angle**: Identify one differentiated approach this content can take to outperform current results.
8. **Internal Linking Opportunities**: Note 2–3 common internal link targets relevant to this topic.
Be specific. Do not give generic advice. Base every recommendation on the actual SERP data provided.
Content briefs are one of the most time-consuming deliverables in SEO — and also one of the most inconsistent. When created manually, their quality depends entirely on how much time the strategist has. A rushed brief gets one paragraph of vague direction. A thorough brief takes 45–60 minutes per keyword: pulling SERP data, reading competitor articles, identifying topic gaps, and structuring an outline. For teams managing 10+ keywords per week, that’s an entire day of work before a word is written.
This workflow compresses that 45-minute manual process into about 90 seconds per keyword, with quality that rivals a thorough human-written brief. The key is combining real Ahrefs SERP data with Claude 3.5 Sonnet’s analytical capability. Unlike prompt-only approaches that ask the AI to imagine what ranks, this workflow feeds Claude actual ranking URLs, domain ratings, traffic estimates, and word counts — then asks it to draw conclusions from evidence, not assumption.
The Intermediate difficulty rating reflects the Ahrefs API setup and the custom data transformation required in the Code node, not the conceptual complexity. If your team already uses Ahrefs and has basic n8n experience, plan for 35–45 minutes of setup. The $0.04-per-brief cost comes from Claude 3.5 Sonnet API usage (~1,500 input tokens + ~800 output tokens at Sonnet pricing).
Prerequisites
- An n8n instance (Cloud or self-hosted; n8n Cloud Starter plan recommended for reliable scheduling)
- An Anthropic API key with Claude 3.5 Sonnet access (usage-based; ~$2–4/month for 50 briefs/week)
- An Ahrefs account with API access (available on Ahrefs Advanced or Enterprise plans; the SERP Overview endpoint is required)
- A Notion database for keywords with properties: Keyword (text), Monthly Volume (number), KD Score (number), Brief Status (select: “Needs Brief” / “Brief Ready”), Brief Page (relation or URL)
- A Slack workspace with a
#content-teamchannel (or similar) and an incoming webhook or Slack bot token - Basic familiarity with n8n’s Code node (JavaScript) — needed to reshape the Ahrefs API response into Claude’s prompt format
Setup Guide
- Import the blueprint — Download and import the workflow JSON into n8n via the Import from File option.
- Configure Notion credentials — Authenticate the Notion node with your integration token. Select your keywords database. The filter should read:
Brief Status = Needs Brief. - Set up Ahrefs API — In the HTTP Request node labeled “Fetch SERP Data”, add your Ahrefs API token as a Header Auth credential (
Authorization: Bearer YOUR_TOKEN). The endpoint used ishttps://api.ahrefs.com/v3/serp-overviewwith query parameterskeyword,country(default:us), andlimit=10. - Add Anthropic credentials — In the HTTP Request node labeled “Claude Brief Generator”, add your Anthropic API key as a Header Auth credential (
x-api-key). The model is set toclaude-3-5-sonnet-20241022. - Review the Code node — The Code node transforms the Ahrefs response array into the
[SERP_DATA]string injected into the prompt. Inspect the default transformation logic and adjust if Ahrefs changes its response schema. - Connect Slack — Add your Slack credential (Bot Token preferred over Incoming Webhook for richer message formatting). Update the channel name in the Slack node from
#content-teamto your actual channel. - Update Notion write node — Configure the “Create Brief Page” Notion node to write to the same or a linked database. Map the
contentfield from the Claude response to the Notion page body using the Text block type. - Set the trigger — Default is a manual trigger. Change to a weekly Schedule Trigger (e.g., Monday 8 AM) if you want fully automatic processing of accumulated keywords.
- Test with a single keyword — Add one row to Notion with a real keyword and status “Needs Brief”. Run manually and inspect each node’s output before enabling the schedule.
Who This Is NOT For
- Teams without Ahrefs API access — the workflow degrades significantly without real SERP data; a DataForSEO or SemRush API adaptation is possible but requires custom node configuration not included in the blueprint
- Local SEO teams targeting city-specific or hyper-local keywords where Ahrefs SERP data may not reflect true local pack results
- Teams producing content at fewer than 5 briefs per month — at that volume, manual briefing is faster than the setup investment
- E-commerce teams needing product page briefs — the prompt and outline structure is optimized for editorial/blog content; product SEO requires different signals (schema, reviews, pricing data)
Did this blueprint work for you?
AI integrations change fast. Help keep recipes accurate.