Install any skill in seconds. Free to start, no credit card required.
Get Started Free →App Store Optimization toolkit for researching keywords, optimizing metadata, and tracking mobile app performance on Apple App Store and Google Play Store.
.claude/skills/borghei-app-store-optimization/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | 106% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 67% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -3% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 14% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 37% | 0% |
ASO tools for researching keywords, optimizing metadata, analyzing competitors, and improving app store visibility on Apple App Store and Google Play Store. This file is a lean map — execute a task by loading the matching reference below.
keyword_analyzer, metadata_optimizer, competitor_analyzer, aso_scorer, ab_test_planner, review_analyzer, launch_checklist, localization_helper (stdlib only, analyze data you provide)Before generating, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
bashpython scripts/keyword_analyzer.py --keywords "todo,task,planner" python scripts/metadata_optimizer.py --platform ios --title "App Title" python scripts/aso_scorer.py --app-id com.example.app
Note: the scripts are importable Python libraries — see the Tool Reference for classes, methods, and convenience functions.
Load the reference that matches the task — keep this file lean and pull detail on demand:
In scope: keyword research, metadata optimization and character-limit validation, competitor ASO analysis (public data), A/B test planning with significance math, launch/seasonal/localization planning, and review sentiment analysis for Apple App Store and Google Play Store.
Out of scope: real-time store data fetching (scripts analyze static data you provide), Apple Search Ads / Google Ads campaign management, creative asset design, cross-device attribution (use an MMP), in-app analytics/retention, and revenue/subscription pricing.
Data constraints: no official search-volume API exists for either store (estimates use third-party tools or heuristics); competitor and review data are limited to public info; historical ranking data needs external tools (AppTweak, Sensor Tower, data.ai); Apple's June 2025 update indexes screenshot text, which these scripts do not yet analyze. See references/operations-and-benchmarks.md for details.
Connects to Apple App Store Connect and Google Play Console (metadata submission, Product Page Optimization / Store Listing Experiments), Apple Search Ads (keyword discovery), ASO tools (AppTweak, Sensor Tower, data.ai for volume/ranking data), analytics (Firebase/Mixpanel/Amplitude for engagement signals), and the campaign-analytics and content-creator skills. Full connection details and data flows: references/operations-and-benchmarks.md.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 18,609 | 20,115 | +8% | 1 | 1 | 0% | 2,986 | 4,523 | +51% | 0 | 0 | — |
case-02 | fail→pass | 14,885 | 21,433 | +44% | 1 | 1 | 0% | 2,411 | 4,962 | +106% | 0 | 0 | — |
case-03 | fail→fail | 20,564 | 29,877 | +45% | 1 | 1 | 0% | 3,539 | 6,774 | +91% | 0 | 0 | — |
case-04 | fail→fail | 15,129 | 22,456 | +48% | 1 | 1 | 0% | 2,347 | 5,523 | +135% | 0 | 0 | — |
case-05 | fail→fail | 14,413 | 18,477 | +28% | 1 | 1 | 0% | 2,129 | 4,121 | +94% | 0 | 0 | — |
case-16 | pass→pass | 16,345 | 18,356 | +12% | 1 | 1 | 0% | 2,525 | 4,013 | +59% | 0 | 0 | — |
case-06 | pass→pass | 11,133 | 18,455 | +66% | 1 | 1 | 0% | 1,945 | 4,846 | +149% | 0 | 0 | — |
case-07 | pass→pass | 8,326 | 15,244 | +83% | 1 | 1 | 0% | 1,386 | 3,797 | +174% | 0 | 0 | — |
case-08 | pass→pass | 11,885 | 14,683 | +24% | 1 | 1 | 0% | 1,985 | 3,799 | +91% | 0 | 0 | — |
case-09 | fail→pass | 14,758 | 15,166 | +3% | 1 | 1 | 0% | 2,153 | 3,593 | +67% | 0 | 0 | — |
case-10 | pass→pass | 23,723 | 26,309 | +11% | 1 | 1 | 0% | 4,457 | 6,014 | +35% | 0 | 0 | — |
case-11 | fail→pass | 11,558 | 3,922 | -66% | 1 | 1 | 0% | 1,970 | 1,916 | -3% | 0 | 0 | — |
case-12 | fail→pass | 12,190 | 6,943 | -43% | 1 | 1 | 0% | 2,074 | 2,357 | +14% | 0 | 0 | — |
case-13 | pass→pass | 14,583 | 14,431 | -1% | 1 | 1 | 0% | 2,972 | 4,138 | +39% | 0 | 0 | — |
case-14 | fail→pass | 18,859 | 16,910 | -10% | 1 | 1 | 0% | 2,883 | 3,963 | +37% | 0 | 0 | — |
case-15 | fail→fail | 16,141 | 17,726 | +10% | 1 | 1 | 0% | 2,226 | 3,850 | +73% | 0 | 0 | — |
case-17 | pass→pass | 18,114 | 17,627 | -3% | 1 | 1 | 0% | 2,837 | 4,060 | +43% | 0 | 0 | — |
case-18 | fail→fail | 19,280 | 20,330 | +5% | 1 | 1 | 0% | 2,816 | 4,265 | +51% | 0 | 0 | — |
case-19 | fail→fail | 18,742 | 12,426 | -34% | 1 | 1 | 0% | 3,946 | 3,358 | -15% | 0 | 0 | — |
case-20 | pass→pass | 17,150 | 17,024 | -1% | 1 | 1 | 0% | 2,668 | 3,853 | +44% | 0 | 0 | — |
case-21 | pass→pass | 16,289 | 18,543 | +14% | 1 | 1 | 0% | 2,412 | 4,342 | +80% | 0 | 0 | — |
case-22 | pass→pass | 13,799 | 10,904 | -21% | 1 | 1 | 0% | 2,348 | 2,927 | +25% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +23 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.