Skip to content
Agentmart
Submit a tool

keyword-coverage

Use for keyword ideas, keyword prioritization, keyword/search query CSV-derived shortlists, competitor keyword gaps, Search Ads Popularity interpretation, and…

Skill by asodevapp

IndexedMIT★ 5
Write a review

Chalk Labs

Need help deploying keyword-coverage?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/asodevapp-keyword-coverage

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Use for keyword ideas, keyword prioritization, keyword/search query CSV-derived shortlists, competitor keyword gaps, Search Ads Popularity interpretation, and keyword distribution across metadata/locales.

Use cases: spreadsheets, testing, marketing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/keyword-coverage

What's inside

Skill name
keyword-coverage
Description
Use for keyword ideas, keyword prioritization, keyword/search query CSV-derived shortlists, competitor keyword gaps, Search Ads Popularity interpretation, and keyword distribution across metadata/locales.
License
MIT
Metadata
version: 1.0.0
Instructions
141 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Keyword Coverage

Build a keyword strategy using ASO.dev keyword data, uploaded keyword CSV shortlists, competitor rankings, Search Ads Popularity, tracked keywords, and current metadata coverage from MCP.

Use `keyword-research` first when the raw CSV still needs column mapping, cleaning, clustering, or opportunity scoring.

## MCP metadata coverage workflow

When current metadata can be read from ASO.dev:

1. Use `current-metadata-fetch`.
2. Apple: call `get_editor_data` with target `country`, `locales`, and `fields` when needed. Use `asoOnly: true` for title/subtitle/keywords coverage.
3. Google: call `get_google_editor_data` for title, short description, and full description coverage.
4. Normalize metadata by locale:
   - lower-case for matching
   - trim punctuation and duplicate spaces
   - split Apple `keywords` arrays as individual terms
   - keep original text for reporting and character counts
5. Normalize keyword/search-query rows from CSV or ASO.dev data by country, locale, keyword, popularity/SAP, rank, difficulty, competitor/source, and intent.
6. Calculate coverage per keyword/query against current metadata.

## Coverage calculation

Use phrase and token coverage:

- Exact phrase covered: the full query appears in a field.
- Token covered: each meaningful word appears somewhere in indexed fields.
- Partial coverage: some but not all meaningful words are present.
- Not covered: no meaningful words are present.
- Wasted coverage: repeated words across fields without a clear strategic reason.

Ignore or downweight stop words and generic terms such as `app`, `free`, `best`, unless they are meaningful in that locale/query.

Field weights:

| Platform | Field | Weight | Notes |
|---|---|---:|---|
| Apple | title | 1.00 | Highest visibility and keyword weight |
| Apple | subtitle | 0.80 | Strong indexed field |
| Apple | keywords | 0.60 | Hidden indexed field; avoid duplicates from title/subtitle |
| Apple | description/promotionalText | 0.10 | Conversion context, not primary keyword coverage |
| Google Play | title | 1.00 | Highest indexed field |
| Google Play | shortDescription | 0.80 | Indexed and visible |
| Google Play | fullDescription | 0.50 | Indexed; natural repetition matters |

Suggested coverage score:

```text
coverage_score =
  exact_phrase_match ? max(field_weight) :
  token_coverage_ratio * max(field_weight_of_covered_tokens)
```

Then prioritize gaps:

```text
gap_priority =
  relevance
  + popularity/SAP
  + ranking_feasibility
  + competitor_gap_value
  - current_coverage_score
  - policy_or_trademark_risk
```

Do not present the score as an App Store ranking prediction. It is a planning heuristic.

## Classify keywords

- Primary - 1-3 high-relevance/high-opportunity terms for app name/title or strongest visible field
- Secondary - 5-10 relevant terms for subtitle, short description, or Apple keyword field
- Long-tail - 10-20 specific intent terms for Apple keyword field, Google full description, CPP/PPO, and tracking
- Defensive - protect current rankings
- Competitor gap - competitors rank, app does not
- Experimental - track first
- Avoid - irrelevant, risky, trademarked, too broad

## Scoring

If data exists:

```text
Opportunity = relevance * 0.35
            + popularity * 0.25
            + ranking feasibility * 0.25
            + conversion intent * 0.15
```

Do not invent missing SAP/rank values.

## Output

```md
# Keyword Coverage Report

Source:
Country:
Locale:
Current metadata source: MCP / CSV / user-provided

## Current indexed metadata
| Locale | Field | Value | Characters | Indexed |
|---|---|---|---:|---|

## Coverage summary
| Segment | Keywords | Covered | Partial | Missing | High-priority gaps |
|---|---:|---:|---:|---:|---:|

## Best opportunities
| Keyword | Locale | Relevance | Popularity/SAP | Current rank | Difficulty | Coverage | Action |
|---|---|---:|---:|---:|---:|---|---|

## Metadata distribution
| Keyword | Title | Subtitle/short desc | Keyword field/full desc | Locale | Coverage | Notes |
|---|---|---|---|---|---|---|

## Coverage gaps
| Keyword | Missing tokens | Best field to add | Trade-off | Reason |
|---|---|---|---|---|

From asodevapp/skills, MIT.

More from asodevapp/skills

Signals

Stars
5
Forks
0
Open issues
0
Last commit (this folder)
May 2, 2026 (6 months ago)

From GitHub (fetched Oct 24, 2026).

Details

Version
1.0.0
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from asodevapp

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get keyword-coverage running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying keyword-coverage?

CallGet help
Cite this page

keyword-coverage skill. Agent Mart. https://agentmart.dev/skills/asodevapp-keyword-coverage (last updated 2026-10-24)