Discover, analyze, and prioritize keywords for SEO and GEO content strategies from a seed keyword or niche. Identifies high-value opportunities based on search volume, competition, intent, and business relevance. Generates topic clusters. For building a dated editorial calendar from your own Search Console data, use `content-planner` instead — this skill is seed-driven keyword discovery, not calendar scheduling. Use when asked to "find keywords", "keyword research", "keyword analysis", "search volume", "keyword difficulty", "content ideas from a seed", or any keyword discovery task.
64
78%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./seo/keyword-research/SKILL.mdDiscovers, analyzes, and prioritizes keywords for SEO and GEO content strategies. Identifies high-value opportunities based on search volume, competition, intent, and business relevance.
Use this when the conversation involves any of these situations — even if the user does not use SEO terminology:
Use this whenever the task needs reusable market intelligence that should influence strategy, not just an ad hoc answer.
Start with one of these prompts.
Research keywords for [topic/product/service]Find keyword opportunities for a [industry] business targeting [audience]Find low-competition keywords for [topic] with commercial intentIdentify question-based keywords for [topic] that AI systems might answerWhat keywords is [competitor URL] ranking for that I should target?Note: All integrations are optional. This skill works without any API keys — users provide data manually when no tools are connected.
With ~~SEO tool + ~~search console connected: Automatically pull historical search volume data, keyword difficulty scores, SERP analysis, current rankings from ~~search console, and competitor keyword overlap. The skill will fetch seed keyword metrics, related keyword suggestions, and search trend data.
With manual data only: Ask the user to provide:
Proceed with the full analysis using provided data. Note in the output which metrics are from automated collection vs. user-provided data.
When a user requests keyword research:
Understand the Context
Ask clarifying questions if not provided:
Generate Seed Keywords
Start with:
Expand Keyword List
For each seed keyword, generate variations:
## Keyword Expansion Patterns
### Modifiers
- Best [keyword]
- Top [keyword]
- [keyword] for [audience]
- [keyword] near me
- [keyword] [year]
- How to [keyword]
- What is [keyword]
- [keyword] vs [alternative]
- [keyword] examples
- [keyword] tools
### Long-tail Variations
- [keyword] for beginners
- [keyword] for small business
- Free [keyword]
- [keyword] software/tool/service
- [keyword] template
- [keyword] checklist
- [keyword] guideClassify Search Intent
Categorize each keyword:
| Intent | Signals | Example | Content Type |
|---|---|---|---|
| Informational | what, how, why, guide, learn | "what is SEO" | Blog posts, guides |
| Navigational | brand names, specific sites | "google analytics login" | Homepage, product pages |
| Commercial | best, review, vs, compare | "best SEO tools [current year]" | Comparison posts, reviews |
| Transactional | buy, price, discount, order | "buy SEO software" | Product pages, pricing |
Assess Keyword Difficulty
Score each keyword (1-100 scale):
### Difficulty Factors
**High Difficulty (70-100)**
- Major brands ranking
- High domain authority competitors
- Established content (1000+ backlinks)
- Paid ads dominating SERP
**Medium Difficulty (40-69)**
- Mix of authority and niche sites
- Some opportunities for quality content
- Moderate backlink requirements
**Low Difficulty (1-39)**
- Few authoritative competitors
- Thin or outdated content ranking
- Long-tail variations
- New or emerging topicsCalculate Opportunity Score
Formula: Opportunity = (Volume × Intent Value) / Difficulty
Intent Value assigns a numeric weight by search intent:
### Opportunity Matrix
| Scenario | Volume | Difficulty | Intent | Priority |
|----------|--------|------------|--------|----------|
| Quick Win | Low-Med | Low | High | ⭐⭐⭐⭐⭐ |
| Growth | High | Medium | High | ⭐⭐⭐⭐ |
| Long-term | High | High | High | ⭐⭐⭐ |
| Research | Low | Low | Low | ⭐⭐ |Identify GEO Opportunities
Keywords likely to trigger AI responses:
### GEO-Relevant Keywords
**High GEO Potential**
- Question formats: "What is...", "How does...", "Why is..."
- Definition queries: "[term] meaning", "[term] definition"
- Comparison queries: "[A] vs [B]", "difference between..."
- List queries: "best [category]", "top [number] [items]"
- How-to queries: "how to [action]", "steps to [goal]"
**AI Answer Indicators**
- Query is factual/definitional
- Answer can be summarized concisely
- Topic is well-documented online
- Low commercial intentCreate Topic Clusters
Group keywords into content clusters:
## Topic Cluster: [Main Topic]
**Pillar Content**: [Primary keyword]
- Search volume: [X]
- Difficulty: [X]
- Content type: Comprehensive guide
**Cluster Content**:
### Sub-topic 1: [Secondary keyword]
- Volume: [X]
- Difficulty: [X]
- Links to: Pillar
- Content type: [Blog post/Tutorial/etc.]
### Sub-topic 2: [Secondary keyword]
- Volume: [X]
- Difficulty: [X]
- Links to: Pillar + Sub-topic 1
- Content type: [Blog post/Tutorial/etc.]
[Continue for all cluster keywords...]Generate Output Report
Produce a report containing: Executive Summary, Top Keyword Opportunities (Quick Wins, Growth, GEO), Topic Clusters, Content Calendar, and Next Steps.
Reference: See references/example-report.md for the full report template and example.
Reference: See references/example-report.md for a complete example report for "project management software for small businesses".
Map all keywords for [topic] by search intent and funnel stageIdentify seasonal keyword trends for [industry]What keywords do [competitor 1], [competitor 2] rank for that I'm missing?Research local keywords for [business type] in [city/region]8d9d54b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.