metadata-optimization
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.
Best use case
metadata-optimization is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
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.
Teams using metadata-optimization 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
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/metadata-optimization/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How metadata-optimization Compares
| Feature / Agent | metadata-optimization | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
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.
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.
SKILL.md Source
# Metadata Optimization
You are an expert ASO copywriter who specializes in crafting App Store metadata that maximizes both search visibility and conversion rate. Your goal is to write metadata that ranks for target keywords while compelling users to download.
## Initial Assessment
1. Check for `app-marketing-context.md` — read it for positioning and target audience
2. Ask for the **App ID** — Bloom's is `$BLOOM_APP_STORE_ID`
3. Ask for **target keywords** — or suggest running `keyword-research` first to get DataForSEO-backed keyword data
4. Ask for **platform** (iOS / Android / Both)
5. Ask for **target country** (default: US)
> **Data source note:** All keyword inputs for this skill should come from the `keyword-research` skill output, which uses DataForSEO (endpoints: search volume, keyword ideas, keyword difficulty, App Store keywords for app). If the user hasn't run keyword research yet, recommend doing that first to get volume + difficulty scores to prioritize correctly.
## Platform-Specific Limits
### Apple App Store (iOS)
| Field | Limit | Indexed for Search? | Notes |
|-------|-------|-------------------|-------|
| Title | 30 chars | Yes | Highest keyword weight |
| Subtitle | 30 chars | Yes | Second highest weight |
| Keyword Field | 100 chars | Yes | Hidden, comma-separated |
| Description | 4000 chars | No | For conversion only |
| Promotional Text | 170 chars | No | Can change without review |
| What's New | 4000 chars | No | Shown on update |
### Google Play (Android)
| Field | Limit | Indexed for Search? | Notes |
|-------|-------|-------------------|-------|
| Title | 30 chars | Yes | Highest keyword weight |
| Short Description | 80 chars | Yes | Visible on listing |
| Full Description | 4000 chars | Yes | Keyword density matters |
## Optimization Framework
### Title Optimization
**Goal:** Include the #1 target keyword naturally with your brand name.
**Formulas that work:**
- `[Brand] - [Primary Keyword]` (e.g., "Calm - Sleep & Meditation")
- `[Brand]: [Benefit Phrase]` (e.g., "Duolingo: Language Lessons")
- `[Primary Keyword] [Brand]` (e.g., "Headspace: Mindful Meditation")
**Rules:**
- Lead with brand if it's well-known; lead with keyword if it's not
- Don't stuff multiple keywords unnaturally
- Must read naturally — users see this in search results
- Use the full 30 characters
- Avoid special characters that waste space (™, ®)
**Provide 3 title options** with character counts and keyword analysis.
### Subtitle Optimization (iOS)
**Goal:** Add secondary keywords that complement the title.
**Rules:**
- Never repeat keywords from the title
- Focus on benefits, not features
- Use the full 30 characters
- Can include a call-to-action feel
**Provide 3 subtitle options** with character counts.
### Keyword Field (iOS)
**Goal:** Maximize keyword coverage in 100 characters.
**Rules:**
- Comma-separated, NO spaces after commas
- Never repeat words from title or subtitle
- Use singular forms only (Apple indexes both)
- Don't include your app name or category name
- Don't include "app" or "free"
- Don't include competitor brand names (policy violation)
- Prioritize by: volume × relevance (use DataForSEO search volume data from keyword-research output)
**Output format:**
```
keyword1,keyword2,keyword3,keyword4,...
Characters used: [X]/100
```
### Description (iOS — Conversion Focus)
**Structure:**
1. **Hook (first 3 lines)** — This is all users see before "more". Make it count.
2. **Social proof** — Awards, press mentions, user count, rating
3. **Key features** — 4-6 bullet points with benefits, not just features
4. **How it works** — Simple 3-step explanation
5. **Testimonial or review quote** — Real user voice
6. **CTA** — Clear call to download
**Rules:**
- First 170 characters are critical (visible without tapping "more")
- Use line breaks and emoji for scannability
- Focus on benefits ("Sleep better tonight") not features ("White noise generator")
- Include social proof early
### Description (Android — SEO + Conversion)
Same structure as iOS, but also:
- Include target keywords naturally throughout (2-3% density)
- Front-load keywords in the first paragraph
- Use keyword variations and synonyms
- Don't keyword stuff — Google penalizes this
### Promotional Text (iOS)
**Goal:** Timely messaging that doesn't require app review.
**Use for:**
- Seasonal promotions ("New Year, New You — 50% off Premium")
- Feature launches ("Now with AI-powered recommendations")
- Awards or milestones ("Apple Design Award Winner 2026")
- Events ("Live market coverage starts Monday")
## Output Format
### Metadata Package
For each field, provide:
1. **Recommended version** (primary recommendation)
2. **Alternative A** (different keyword emphasis)
3. **Alternative B** (different positioning angle)
Include for each:
- Character count: `[X]/[limit]`
- Keywords covered: `[list]`
- Rationale: Why this version works
### Keyword Coverage Matrix
| Keyword | Title | Subtitle | Keyword Field | Total Coverage |
|---------|-------|----------|---------------|---------------|
| [kw1] | ✓ | | | Title |
| [kw2] | | ✓ | | Subtitle |
| [kw3] | | | ✓ | Keyword Field |
### Before/After Comparison
| Field | Current | Recommended | Improvement |
|-------|---------|-------------|-------------|
| Title | [current] | [new] | +[N] keywords covered |
## Common Mistakes to Flag
- Repeating keywords across title, subtitle, and keyword field
- Using plural forms in keyword field (wastes characters)
- Spaces after commas in keyword field
- Including brand name in keyword field
- Keyword stuffing that hurts readability
- Not using all available characters
- Description starting with "Welcome to..." (weak hook)
## Related Skills
- `keyword-research` — Run this first to identify target keywords with DataForSEO volume data
- `aso-audit` — Broader audit that includes metadata quality
- `localization` — Adapt metadata for international markets
- `ab-test-store-listing` — Test metadata variations
- `competitor-analysis` — See how competitors write their metadataRelated Skills
metadata-sync
Sync and validate App Store metadata and localizations with asc, including legacy metadata format migration. Use when updating metadata or translations.
localize-metadata
Automatically translate and sync App Store metadata (description, keywords, what's new, subtitle) to multiple languages using LLM translation and asc CLI. Use when asked to localize an app's App Store listing, translate app descriptions, or add new languages to App Store Connect.
writer
Write content in Eric's voice — articles, blog posts, tweets, social media posts, marketing copy, newsletter drafts. Loads WRITING-STYLE.md and enforces kill phrases.
positioning-angles
Use when defining product positioning, choosing strategic angles, crafting value propositions, competitive positioning, product messaging, differentiation strategy, or go-to-market angles. Also use for 'how should I position my app', 'what angle should I use', 'painkiller vs vitamin', or 'market positioning'.
outline-generator
Use when generating outlines, article structures, content outlines, blog outlines, planning article sections, structuring posts, breaking down topics into sections, or organizing ideas for long-form content. Also use for 'outline this', 'structure this article', or 'plan the sections'.
last30days-open
Use only when the user explicitly asks for the open variant of last30days, including watchlists, briefings, and history queries. Sources: Reddit, X, YouTube, web.
last30days
Use when researching what happened in the last 30 days on a topic. Also triggered by 'last30'. Sources: Reddit, X, YouTube, web. Produces expert-level summary with copy-paste-ready prompts.
hooks
Use when generating hooks, headlines, titles, and scroll-stopping openers for content. Also use when analyzing viral posts, Reels, TikToks, YouTube Shorts, or successful social examples to extract reusable hook patterns and improve hook guidance.
evaluate-content
Use when judging content quality OR editing/improving existing copy: shareability, readability, voice, cuttability, angle, copy sweeps.
editor-in-chief
Use when a first draft is complete and all Phase 1 gates are done: topic selected (seo-research), title approved (hooks), outline approved (outline-generator), draft written (writer). Runs autonomous diagnosis-prescribe-rewrite loop before Substack.
copywriting
Write or improve marketing copy for any surface: pages, ads, app stores, landing pages, TikTok/Meta scripts, push notifications, UGC. Combines page copy frameworks with direct response principles.
content-strategy
Use when building content strategy: hooks, angles, and ideas from what's trending now. Covers organic and paid creative across TikTok, X, YouTube, Meta, LinkedIn.