skills/generators/custom-product-pages/SKILL.md
Generates Custom Product Page metadata templates with screenshot strategies, keyword targeting, and audience-specific messaging for up to 35 page variants. Use when creating targeted App Store pages for different audiences, ad campaigns, or traffic sources.
npx skillsauth add taiberium/claude_code_setting custom-product-pagesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Generate metadata templates for Custom Product Pages (CPPs) — targeted App Store product page variants optimized for specific audiences, ad campaigns, or traffic sources.
Use this skill when the user:
CPPs only make sense when you have enough traffic to meaningfully split across pages.
| Monthly Impressions | Recommendation | |--------------------|----| | Under 2,000 | Don't create CPPs. Focus on optimizing your single default page. You won't have enough traffic per page to know if it's working. | | 2,000-10,000 | Create 1 CPP max for your most distinct audience segment or highest-spend ad campaign. Monitor for 4+ weeks. | | 10,000-50,000 | Create 2-3 CPPs. Enough traffic to compare performance across pages. | | 50,000+ | Full CPP strategy. Multiple pages per segment, ad campaign-specific pages, seasonal variants. |
Exception: If you're running paid Apple Search Ads campaigns, CPPs are valuable even at lower organic volume because ad traffic is directed specifically to your CPP — you're not splitting organic impressions.
| Feature | Custom Product Pages | Product Page Optimization | |---------|---------------------|--------------------------| | Purpose | Targeted pages for specific audiences | A/B test default page | | Count | Up to 35 pages | Up to 3 treatments | | Elements | Screenshots, previews, promo text | Icon, screenshots, previews | | URL | Unique URL per page | Same URL, random distribution | | Use with ads | Yes (assign to ad groups) | No |
Ask user via AskUserQuestion:
How many custom pages?
What are your distinct audiences?
What will you customize?
Traffic sources for each page?
For each audience segment:
For each custom page:
Design the screenshot order for each page to match the audience's priorities:
# Custom Product Pages Strategy: [App Name]
## Audience Segments
| Segment | Description | Traffic Source | Page URL |
|---------|-------------|---------------|----------|
| [Name] | [Who they are] | [Where they come from] | [CPP URL] |
---
## Page 1: [Audience Name]
### Audience Profile
- **Who**: [Description]
- **Pain point**: [What frustrates them]
- **Value prop**: [What you solve for them]
- **Traffic source**: [Where this page is linked]
### Promotional Text (170 chars)
> [Customized promotional text targeting this audience]
### Screenshot Strategy
| Position | Feature | Caption | Why This Audience Cares |
|----------|---------|---------|------------------------|
| 1 | [Feature] | [Caption text] | [Relevance to audience] |
| 2 | [Feature] | [Caption text] | [Relevance to audience] |
| 3 | [Feature] | [Caption text] | [Relevance to audience] |
| 4 | [Feature] | [Caption text] | [Relevance to audience] |
| 5 | [Feature] | [Caption text] | [Relevance to audience] |
### App Preview (if applicable)
- **Opening shot**: [What to show first]
- **Key demo**: [Core feature for this audience]
- **Closing CTA**: [Call to action]
### Keyword Alignment
Keywords this audience is likely searching for:
- [keyword 1]
- [keyword 2]
- [keyword 3]
---
## Page 2: [Audience Name]
[Same format as Page 1]
---
## Implementation Checklist
- [ ] Create custom pages in App Store Connect
- [ ] Upload audience-specific screenshots for each page
- [ ] Write promotional text for each page
- [ ] Get unique URLs for each page
- [ ] Configure Apple Search Ads to use specific pages (if applicable)
- [ ] Set up UTM tracking for non-ASA traffic sources
- [ ] Monitor conversion rates per page
- [ ] A/B test within pages after initial launch
Example: Productivity app for students, freelancers, and teams
| Page | Audience | Screenshot Focus | Promo Text Angle | |------|----------|-----------------|-----------------| | Default | General | Overview of all features | Broad appeal | | CPP 1 | Students | Note-taking, study tools, price | "The study companion that..." | | CPP 2 | Freelancers | Time tracking, invoicing, clients | "Manage your freelance..." | | CPP 3 | Teams | Collaboration, sharing, admin | "Team productivity that..." |
Example: Fitness app running ads on multiple channels
| Page | Channel | Visual Style | Messaging | |------|---------|-------------|-----------| | Default | Organic | Clean, professional | Feature-focused | | CPP 1 | Instagram | Lifestyle, aspirational | Transformation stories | | CPP 2 | Google Search | Results-oriented | Data and progress tracking | | CPP 3 | Podcast | Social proof | "As heard on [podcast]" |
Example: Photo editing app with multiple use cases
| Page | Feature | Target Search Terms | |------|---------|-------------------| | Default | All features | "photo editor" | | CPP 1 | Portrait mode | "portrait editor", "selfie" | | CPP 2 | Filters | "photo filters", "instagram" | | CPP 3 | Collage maker | "photo collage", "grid" |
generators/product-page-optimization — A/B test the default pageapp-store/screenshot-planner — Screenshot design and sequencingapp-store/keyword-optimizer — Keyword strategy per audienceapp-store/marketing-strategy — Overall promotional strategytools
Generates multi-step onboarding flows with persistence for iOS/macOS apps. Use when user wants to add onboarding, welcome screens, or first-launch experience.
tools
Generates an offline operation queue with persistence, automatic retry on connectivity, and conflict resolution. Use when user needs offline-first behavior, queued mutations, or pending operations that sync when back online.
development
Generates offer code distribution strategies and configuration guides for subscription and IAP promotions — including partner campaigns, influencer programs, and email re-engagement. Use when setting up offer codes for distribution.
tools
Generates a protocol-based networking layer with async/await, error handling, and swappable implementations. Use when user wants to add API client, networking, or HTTP layer.