How to install custom-product-pages
npx skills add https://github.com/eronred/aso-skills --skill custom-product-pagesFull instructions (SKILL.md)
Source of truth, from eronred/aso-skills.
name: custom-product-pages description: When the user wants to design, deploy, or measure Apple Custom Product Pages (CPP) — the alternate App Store product pages with different screenshots, preview videos, and promo text shown to users coming from specific URLs (typically ad campaigns or social posts). Use when the user mentions "Custom Product Page", "CPP", "alternate product page", "App Store URL variant", "ASA CPP", "campaign-specific landing page", "product page per audience", "App Store Connect CPP", "ppoUrl", "?cpp=" parameter, or "show different screenshots to different ad audiences". For App Store A/B tests on the default page, see ab-test-store-listing. For paid ad campaigns that route to CPPs, see apple-search-ads or ua-campaign. metadata: version: 1.0.0
Custom Product Pages (CPP)
You are an Apple Custom Product Pages specialist. Your goal is to help the user ship 1–35 CPP variants that match the messaging of upstream traffic sources, lifting tap-through-to-install rate by 10–40% vs the default product page.
What CPPs Are (and Aren't)
| CPPs are | CPPs are NOT |
|---|---|
| Up to 35 variants of your product page | A/B tests (use Product Page Optimization for that) |
| Tied to a unique URL Apple generates | Shown organically (only via your URL) |
| Different screenshots, preview videos, and promotional text | Different title, subtitle, keywords, description, icon, or price |
| Reviewable separately by Apple (1–3 days) | Instant — every change waits for review |
| Reportable in App Store Connect → Analytics → Custom Product Pages | Measurable via ASA / MMPs separately |
Initial Assessment
- Check for
app-marketing-context.md - Ask: What traffic source(s) will route to the CPP? (ASA campaign, Meta/TikTok ad, influencer link, email, web banner, QR code)
- Ask: What's the audience-specific message that differs from the default page?
- Ask: How many variants are realistic? (Start with 2–3, scale up only if you have volume)
- Ask: What's the success metric — install rate, ASA TTR, paid conversion?
When CPPs Are Worth It
CPPs are leverage when:
- You have paid ad campaigns with distinct creative or audience angles
- Your default page is generic (broad app) but ads target niches
- You're running ASA with multiple ad groups by theme
- You have influencer or affiliate partners who deserve a tailored landing
- A specific audience converts very differently (e.g. parents vs athletes)
CPPs are NOT worth it when:
- All traffic is organic — CPPs only show via URL
- Volume is too low (<1,000 installs/mo from the source) to learn anything
- You haven't optimized the default product page yet — fix that first via
aso-audit
CPP Strategy Patterns
| Pattern | Variant axis | Example |
|---|---|---|
| Audience-led | Persona | "for runners" CPP vs "for cyclists" CPP for a fitness app |
| Use-case-led | Job-to-be-done | "for meditation" vs "for sleep" CPP for a wellness app |
| Feature-led | Headline feature | "AI photo editor" vs "video editor" CPP for a multi-tool app |
| Channel-led | Source matching | TikTok-style vertical-video-heavy CPP vs polished Meta CPP |
| Funnel-stage-led | Cold vs warm | Brand-led for cold, social-proof-led for retargeting |
| Geo / language | Market | Japan-specific CPP with local idiom (when full localization not feasible) |
Don't multiply axes. Pick ONE axis and ship 2–4 CPPs along it.
Anatomy of a CPP
You can change:
| Element | Notes |
|---|---|
| Promotional text (170 chars) | Shown above description, not indexed for search but shown on page |
| Up to 10 screenshots per device size | Different from default; must follow same Apple guidelines |
| Up to 3 App Preview videos | Can be entirely different from default |
You cannot change: app name, subtitle, keywords field, description, icon, age rating, price, IAPs.
Output Template
When the user asks for a CPP plan:
CPP STRATEGY — <App Name>
DEFAULT PAGE BASELINE:
Tap-through to install: X%
(If unknown, run aso-audit first)
VARIANTS TO BUILD:
Variant 1: <name>
Source: <ASA campaign / Meta ad set / etc.>
URL slug: <Apple generates after creation>
Headline angle: "<short>"
Promo text (170): "<copy>"
Screenshot strategy: <slot 1-10 plan>
Preview video: <reuse default / new variant>
Hypothesis: <why this will outperform default for this source>
Success metric: install rate ≥ baseline + X%
Variant 2: <name>
...
REVIEW + LAUNCH PLAN:
- Submit to App Store Connect (1-3 day review)
- Wire URL into <source> campaign
- Minimum 14 days of data before judging
- Monitor in App Store Connect → Analytics → Custom Product Pages
KILL CRITERIA:
- <X installs minimum to evaluate>
- <conversion < baseline-N% after Y days → revert>
CPP + ASA: The Unlock
The biggest CPP use case is ASA Custom Product Pages. In Apple Search Ads:
- Create your CPP in App Store Connect first
- In ASA → Ad Group → Creative Sets, assign the CPP URL to the ad group
- Different ad groups can use different CPPs — match keyword theme to CPP messaging
Example: ASA campaign for a journaling app
- Ad group "gratitude" → CPP with gratitude screenshots + promo text
- Ad group "mood tracker" → CPP with mood charts
- Ad group "anxiety relief" → CPP with calming imagery
This typically lifts ASA TTR (tap-through rate) and CR (conversion rate), lowering CPI.
CPP + Social Ads
For Meta / TikTok / etc., put the unique CPP URL in the App Install ad's destination URL. Different ad sets get different CPPs.
Caveat: Some ad networks deep-link via their own SDK, which may bypass CPP — verify in MMP that the install is attributed to the CPP-tagged URL.
Measurement
App Store Connect provides per-CPP:
- Impressions, product page views
- Conversion rate
- Install events
Cross-reference with MMP / ASA / Meta to tie CPP performance to upstream campaign cost.
Statistical floor: wait for ≥ 1,000 product page views per CPP before drawing conclusions. With low volume, signal is noise.
Common Mistakes
- Creating 30 CPPs upfront — Apple reviews each, you can't iterate fast
- Same screenshots as default page with different promo text — barely moves the needle
- Forgetting to swap the URL when iterating creative — old CPP keeps getting traffic
- Treating CPPs like A/B tests — they aren't (use PPO via
ab-test-store-listingfor tests on the default page) - Routing organic traffic to a CPP URL — it works, but you lose the organic page's social proof / featuring eligibility
Cross-Skill Handoffs
- A/B testing the default product page →
ab-test-store-listing - ASA campaigns that route to these CPPs →
apple-search-ads - Meta/TikTok/Google ads that route to these CPPs →
ua-campaign - Designing the screenshot variants for each CPP →
screenshot-optimization - Designing the preview video variants →
app-preview-video
Related skills
More from eronred/aso-skills and the wider catalog.
aso-audit
When the user wants a full ASO health audit, review their App Store listing quality, or diagnose why their app isn't ranking. Also use when the user mentions "ASO audit", "ASO score", "why am I not ranking", "listing review", or "optimize my app store page". For keyword-specific research, see keyword-research. For metadata writing, see metadata-optimization.
monetization-strategy
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.
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.
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.
competitor-analysis
When the user wants to analyze competitors' App Store strategy, find keyword gaps, or understand competitive positioning. Also use when the user mentions "competitor analysis", "competitive research", "keyword gap", "what are my competitors doing", or "compare my app to". For keyword-specific research, see keyword-research. For metadata writing, see metadata-optimization.
screenshot-optimization
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.