Keyword Research Workflow
Scale your keyword research with AI-powered analysis
What you’ll build
A workflow that automates keyword research by fetching data from multiple sources, analyzing search intent with AI, and organizing results for content planning.
Time to build: 20 minutes
Nodes used: Semrush, YourTextGuru, LLM, Google Sheets
The problem
Traditional keyword research is slow:
- Manually checking tools like Semrush, Ahrefs
- Analyzing search intent for each keyword
- Categorizing and prioritizing hundreds of keywords
- Creating content briefs from keyword data
This workflow does it all automatically.
Workflow overview
graph LR
A[Seed Keywords] --> B[Semrush Expand]
B --> C[Loop Keywords]
C --> D[YourTextGuru]
D --> E[LLM Intent Analysis]
E --> F[Google Sheets]
Step-by-step guide
Step 1: Define your seed keywords
Start with a list of seed keywords in Google Sheets:
| Keyword |
|---|
| seo tools |
| keyword research |
| content optimization |
Step 2: Create the workflow
- Click New Workflow
- Name it “Keyword Research”
Step 3: Fetch seed keywords
Add Google Sheets Reader
Configure:
- Spreadsheet ID: Your seed keywords sheet
- Range:
Seeds!A:A
Step 4: Expand keywords with Semrush
Add Loop node
Configure:
- Items:
{{GoogleSheets_0.data}}
Add Semrush Keyword Overview
Configure:
- Keyword:
{{Loop_0.currentItem.keyword}} - Database:
us(or your target country)
This returns:
- Search volume
- Keyword difficulty
- CPC
- Related keywords
Step 5: Get content optimization data
Add YourTextGuru Keywords node
Configure:
- Keyword:
{{Loop_0.currentItem.keyword}}
This returns:
- Important terms to include
- Competitor analysis
- Optimization targets
Step 6: Analyze search intent with AI
Add LLM node
Configure:
- Model: GPT or Claude
- Instructions:
Analyze this keyword for search intent and content planning.
Keyword: {{Loop_0.currentItem.keyword}}
Search Volume: {{Semrush_0.volume}}
Difficulty: {{Semrush_0.difficulty}}
Related Keywords: {{Semrush_0.relatedKeywords}}
Provide:
1. Search Intent (informational, navigational, commercial, transactional)
2. Content Type Recommendation (blog post, landing page, guide, etc.)
3. Suggested Title
4. Key Topics to Cover (5-7 points)
5. Target Word Count
6. Priority Score (1-10 based on volume vs difficulty)
Format as JSON. Step 7: Save to Google Sheets
Add Google Sheets node
Configure:
- Operation: Append
- Values: Include all analyzed data
Columns:
- Keyword
- Volume
- Difficulty
- Intent
- Content Type
- Suggested Title
- Topics
- Word Count
- Priority
Sample output
| Keyword | Volume | Difficulty | Intent | Content Type | Title | Priority |
|---|---|---|---|---|---|---|
| seo tools | 12,000 | 65 | Commercial | Comparison | ”15 Best SEO Tools in 2024” | 7 |
| how to do keyword research | 8,000 | 45 | Informational | Guide | ”Keyword Research: Complete Guide” | 9 |
| semrush pricing | 5,000 | 30 | Transactional | Landing Page | ”Semrush Pricing & Plans” | 8 |
Advanced options
Competitor keyword gap analysis
Find keywords your competitors rank for but you don’t:
graph LR
A[Your Domain] --> C[Gap Analysis]
B[Competitor Domains] --> C
C --> D[Missing Keywords]
D --> E[Prioritized List]
Add a Semrush Domain Keywords node:
Your keywords: {{Semrush_0.yourKeywords}}
Competitor keywords: {{Semrush_1.competitorKeywords}}
Gap: Filter keywords in competitor but not in yours
SERP feature analysis
Identify keywords with featured snippets, PAA, etc.:
Add to LLM prompt:
SERP Features: {{Semrush_0.serpFeatures}}
Also analyze:
- Featured snippet opportunity (yes/no)
- People Also Ask opportunity
- Recommended content format for snippets
Content clustering
Group related keywords into topic clusters:
Add a second LLM node:
Given these keywords: {{allKeywords}}
Group them into topical clusters where:
- Each cluster has a pillar topic
- Supporting keywords are related subtopics
- Suggest internal linking structure
Output as:
{
"clusters": [
{
"pillar": "SEO Guide",
"keywords": ["seo basics", "seo tips", "seo strategy"],
"suggested_links": [...]
}
]
}
Best practices
Filter by search intent
Focus your workflow based on goals:
| Goal | Filter Intent |
|---|---|
| Blog traffic | Informational |
| Product pages | Transactional |
| Comparison content | Commercial |
Balance volume and difficulty
Use the AI priority score, or create your own formula:
Priority = (Volume / 1000) * (100 - Difficulty) / 10
Validate with real SERPs
Add a Serper node to check actual search results:
Serper → Analyze top 10 results
→ Confirm AI intent analysis
→ Identify content gaps
Results you can expect
| Metric | Manual Process | With Draft & Goal |
|---|---|---|
| Keywords analyzed/hour | 20 | 500+ |
| Intent accuracy | Variable | 90%+ |
| Content briefs/day | 2-3 | 50+ |
| Missed opportunities | Many | Minimal |
Template workflow
Use our pre-built keyword research template:
Import this workflow and customize for your needs