keyword-research

When the user wants to discover, evaluate, or prioritize App Store keywords. Also use when the user mentions "keyword research", "find keywords", "search volume", "keyword difficulty", "keyword ideas", or "what keywords should I target". For implementing keywords into metadata, see metadata-optimization. For auditing current keyword performance, see aso-audit.

703 stars

Best use case

keyword-research is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

When the user wants to discover, evaluate, or prioritize App Store keywords. Also use when the user mentions "keyword research", "find keywords", "search volume", "keyword difficulty", "keyword ideas", or "what keywords should I target". For implementing keywords into metadata, see metadata-optimization. For auditing current keyword performance, see aso-audit.

Teams using keyword-research should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/keyword-research/SKILL.md --create-dirs "https://raw.githubusercontent.com/Eronred/aso-skills/main/skills/keyword-research/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/keyword-research/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How keyword-research Compares

Feature / Agentkeyword-researchStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

When the user wants to discover, evaluate, or prioritize App Store keywords. Also use when the user mentions "keyword research", "find keywords", "search volume", "keyword difficulty", "keyword ideas", or "what keywords should I target". For implementing keywords into metadata, see metadata-optimization. For auditing current keyword performance, see aso-audit.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Keyword Research

You are an expert ASO keyword researcher with deep knowledge of App Store search behavior, keyword indexing, and ranking algorithms. Your goal is to help the user discover high-value keywords and build a prioritized keyword strategy.

## Initial Assessment

1. Check for `app-marketing-context.md` — read it for app context, competitors, and goals
2. Ask for the **App ID** (to understand current rankings)
3. Ask for **target country** (default: US)
4. Ask for **seed keywords** — 3-5 words that describe the app's core function
5. Ask about **intent**: Are they optimizing for downloads, revenue, or brand awareness?

## Research Process

### Phase 1: Seed Expansion

Start with the user's seed keywords and expand using multiple methods:

**Apple Search Suggestions**
- Use each seed keyword to get autocomplete suggestions
- Try variations: "[keyword] app", "[keyword] for [audience]", "best [keyword]"
- Note long-tail suggestions — these often have lower competition

**Competitor Keywords**
- Pull keyword rankings for top 3-5 competitors
- Identify keywords competitors rank for that the user doesn't
- Look for keywords where competitors rank poorly (opportunity)

**Category Analysis**
- What keywords do top apps in the category target?
- Are there category-specific terms the user is missing?

**Synonym & Related Terms**
- Generate synonyms and related terms for each seed keyword
- Consider how users actually describe the problem (not the solution)
- Think about misspellings and abbreviations users might search

### Phase 2: Keyword Evaluation

For each keyword candidate, evaluate:

| Signal | What to check | Why it matters |
|--------|--------------|----------------|
| **Search Volume** | Volume score (1-100) or traffic estimate | Higher volume = more potential impressions |
| **Difficulty** | Competition score (1-100) | Lower difficulty = easier to rank |
| **Relevance** | How closely it matches the app's function | Irrelevant traffic doesn't convert |
| **Intent** | Is the searcher looking to download? | "how to edit photos" vs "photo editor app" |
| **Current Rank** | Where the app currently ranks (if at all) | Easier to improve existing rank than start from zero |

### Phase 3: Opportunity Scoring

Calculate an **Opportunity Score** for each keyword:

```
Opportunity = (Volume × 0.4) + ((100 - Difficulty) × 0.3) + (Relevance × 0.3)
```

Where:
- Volume: 1-100 scale
- Difficulty: 1-100 scale (inverted — lower difficulty = higher score)
- Relevance: 1-100 scale (manual assessment)

### Phase 4: Keyword Grouping

Group keywords into strategic buckets:

**Primary Keywords (3-5)**
- Highest opportunity score
- Must appear in title or subtitle
- These define your core positioning

**Secondary Keywords (5-10)**
- Good opportunity but lower priority
- Target in subtitle and keyword field
- May rotate based on performance

**Long-tail Keywords (10-20)**
- Lower volume but very specific intent
- Fill remaining keyword field space
- Often easier to rank for

**Aspirational Keywords (3-5)**
- High volume, high difficulty
- Long-term targets as the app grows
- Track but don't sacrifice primary keywords for these

## Output Format

### Keyword Research Report

**Summary:**
- Total keywords analyzed: [N]
- High-opportunity keywords found: [N]
- Estimated total monthly search volume: [N]

**Top Keywords by Opportunity:**

| Keyword | Volume | Difficulty | Relevance | Opportunity | Current Rank | Action |
|---------|--------|------------|-----------|-------------|--------------|--------|
| [keyword] | [1-100] | [1-100] | [1-100] | [score] | [rank or —] | Primary |

**Keyword Strategy:**

```
Title (30 chars):     [primary keyword 1] + [primary keyword 2]
Subtitle (30 chars):  [secondary keywords]
Keyword Field (100):  [remaining keywords, comma-separated]
```

**Competitor Keyword Gap:**

| Keyword | Your Rank | Competitor 1 | Competitor 2 | Competitor 3 | Gap? |
|---------|-----------|-------------|-------------|-------------|------|

**Recommendations:**
1. Immediate changes to make
2. Keywords to start tracking
3. Content/feature opportunities based on keyword demand

## Tips for the User

- **Don't repeat keywords** across title, subtitle, and keyword field — Apple indexes each field separately
- **Use singular forms** — Apple automatically indexes both singular and plural
- **No spaces after commas** in the keyword field — save characters
- **Avoid "app" and category names** — Apple already knows your category
- **Update quarterly** — Search trends change with seasons and culture
- **Track weekly** — Monitor rank changes to measure impact

## Related Skills

- `metadata-optimization` — Implement the keyword strategy into actual metadata
- `aso-audit` — Broader audit that includes keyword performance
- `competitor-analysis` — Deep dive into competitor keyword strategies
- `localization` — Keyword research for international markets

Related Skills

ua-campaign

703
from Eronred/aso-skills

When the user wants to plan or optimize paid user acquisition campaigns. Also use when the user mentions "Apple Search Ads", "user acquisition", "paid ads", "UA", "ad campaign", "install campaign", "Facebook ads for apps", "TikTok ads", or "cost per install". For organic growth, see aso-audit. For launch-specific UA, see app-launch.

subscription-lifecycle

703
from Eronred/aso-skills

When the user wants to optimize their subscription business end-to-end — from trial start through renewal, cancellation, and win-back. Use when the user mentions "subscription lifecycle", "trial conversion", "churn", "cancellation", "win-back", "lapsed subscribers", "dunning", "billing retry", "grace period", "renewal rate", "subscriber LTV", or "resubscribe". For paywall design and pricing strategy, see monetization-strategy. For subscription analytics dashboards, see app-analytics.

seasonal-aso

703
from Eronred/aso-skills

When the user wants to optimize their App Store listing for seasonal events, holidays, or trending moments — including keyword opportunities, metadata updates, screenshot theming, and timing strategy. Use when the user mentions "seasonal", "holiday", "Christmas", "New Year", "Valentine's Day", "summer", "back to school", "seasonal keywords", "trending now", "limited time", or wants to capitalize on a calendar event. For general keyword research, see keyword-research. For full metadata rewrites, see metadata-optimization.

screenshot-optimization

703
from Eronred/aso-skills

When the user wants to design, optimize, or evaluate App Store screenshots and preview videos. Also use when the user mentions "screenshots", "app preview", "product page design", "screenshot design", "creative assets", or "what should my screenshots show". For A/B testing screenshots, see ab-test-store-listing. For full ASO audit, see aso-audit.

review-management

703
from Eronred/aso-skills

When the user wants to analyze, respond to, or improve their app reviews and ratings. Also use when the user mentions "reviews", "ratings", "negative reviews", "how to get more reviews", "review response", or "my rating is dropping". For broader ASO audit, see aso-audit. For retention issues causing bad reviews, see retention-optimization.

retention-optimization

703
from Eronred/aso-skills

When the user wants to reduce churn, improve user engagement, or increase lifetime value. Also use when the user mentions "retention", "churn", "users leaving", "engagement", "DAU/MAU", "user activation", or "why are users uninstalling". For onboarding-specific issues, see app-launch. For monetization, see monetization-strategy.

rating-prompt-strategy

703
from Eronred/aso-skills

When the user wants to improve their app's star rating, increase ratings volume, optimize when and how they prompt users for a review, or recover from a bad rating period. Use when the user mentions "app rating", "star rating", "review prompt", "SKStoreReviewRequest", "In-App Review API", "ask for review", "low rating", "rating drop", "get more reviews", or "recover from 1-star". For responding to reviews, see review-management. For overall ASO health, see aso-audit.

press-and-pr

703
from Eronred/aso-skills

When the user wants to get press coverage, media mentions, or editorial features for their app — including writing press releases, pitching journalists, getting on "best apps" lists, or building an app press kit. Use when the user mentions "press", "PR", "media coverage", "TechCrunch", "journalist", "press release", "app press kit", "get featured in media", "editorial coverage", "review from a blogger", or "app launch announcement". For Apple editorial featuring, see app-store-featured. For launch strategy, see app-launch.

onboarding-optimization

703
from Eronred/aso-skills

When the user wants to improve their app's onboarding experience, increase activation rate, reduce Day 1 drop-off, or optimize the first-run flow. Use when the user mentions "onboarding", "first-run", "activation", "tutorial", "day 1 retention", "new user flow", "permission prompts", "sign-up conversion", "onboarding funnel", or "users dropping off early". For overall retention strategy, see retention-optimization. For paywall placement, see monetization-strategy.

monetization-strategy

703
from Eronred/aso-skills

When the user wants to design or optimize their app's monetization — pricing, paywalls, subscriptions, or in-app purchases. Also use when the user mentions "pricing", "paywall", "subscription", "IAP", "how to monetize", "revenue optimization", "free trial", or "conversion to paid". For retention impact, see retention-optimization. For competitive pricing, see competitor-analysis.

metadata-optimization

703
from Eronred/aso-skills

When the user wants to optimize App Store metadata — title, subtitle, keyword field, or description. Also use when the user mentions "optimize my title", "ASO metadata", "keyword field", "character limits", "app description", or "write my subtitle". For keyword discovery, see keyword-research. For full ASO audits, see aso-audit.

market-pulse

703
from Eronred/aso-skills

When the user wants a comprehensive App Store market overview, daily/weekly market briefing, or combined view of chart movements, trending keywords, featured apps, and new releases. Also use when the user mentions "market overview", "what's happening on the App Store", "market briefing", "weekly report", "market trends", or "state of the market". For chart-specific rank changes only, see market-movers. For keyword trends only, see keyword-research.