custom-product-pages
appeeky/aso-skills
Design and deploy up to 35 Apple Custom Product Pages with variant screenshots, videos, and promo text for different traffic sources.
What is custom-product-pages?
Custom Product Pages (CPP) are alternate App Store product pages shown only via unique URLs, typically used to match messaging from ad campaigns or social posts. Use this when routing paid traffic (ASA, Meta, TikTok, influencer links) to tailored landing pages with different screenshots, preview videos, and promotional text—not for organic discovery or A/B testing the default page.
- Create up to 35 CPP variants, each with a unique Apple-generated URL tied to specific traffic sources
- Customize screenshots (up to 10 per device size), App Preview videos (up to 3), and promotional text (170 chars) per variant
- Match CPP messaging to upstream campaign themes (audience, use-case, feature, channel, or funnel stage)
- Assign CPPs to ASA ad groups or social ad sets to lift tap-through-to-install rates by 10–40%
- Monitor per-CPP impressions, product page views, and conversion rates in App Store Connect Analytics
How to install custom-product-pages
npx skills add https://github.com/appeeky/aso-skills --skill custom-product-pages- App Store Connect access with app already published or in review
- Active paid traffic source (ASA campaign, Meta ad account, TikTok ads, etc.) or planned campaign to route to CPPs
- Baseline tap-through-to-install rate from your default product page (run aso-audit if unknown)
- Minimum ~1,000 installs/month from the traffic source to gather meaningful CPP performance data
How to use custom-product-pages
- 1.Assess your traffic sources and audience-specific messaging angles; decide on 2–4 CPP variants (don't start with 35)
- 2.Plan each variant's promo text (170 chars), screenshot strategy (which slots 1–10 differ from default), and preview video approach
- 3.Create each CPP in App Store Connect, upload variant screenshots and videos, and note the unique URL Apple generates
- 4.For ASA: assign each CPP URL to the matching ad group in Creative Sets; for social ads, paste the CPP URL into the app install ad's destination
- 5.Submit CPPs for review (1–3 days), wire URLs into your campaigns, and monitor per-CPP metrics in App Store Connect Analytics for ≥14 days before optimizing
Use cases
- Route ASA ad groups with different keyword themes to matching CPPs (e.g., 'gratitude' ad group → gratitude-themed CPP)
- Create audience-specific CPPs for paid social ads (Meta/TikTok) with variant creative angles (e.g., 'for runners' vs 'for cyclists')
- Deploy influencer or affiliate partner CPPs with tailored screenshots and promo text matching their audience
- Test feature-led variants (e.g., 'AI photo editor' vs 'video editor' CPP) for multi-tool apps with paid traffic
- Build geo or language-specific CPPs when full localization isn't feasible but paid campaigns target specific markets
- App marketers running paid ASA, Meta, TikTok, or Google app install campaigns
- Growth teams optimizing tap-through-to-install rates for specific audience segments
- App publishers with multiple ad groups or creative angles who want landing-page-like customization within the App Store
- Influencer and affiliate marketing managers coordinating partner-specific product pages
custom-product-pages FAQ
No. CPPs only allow variant screenshots, preview videos, and promotional text (170 chars). Title, subtitle, keywords, description, icon, age rating, and price remain the same across all variants.
Start with 2–3 variants along a single axis (audience, use-case, feature, or channel). Scale to 4–5 only if you have sufficient volume (≥1,000 installs/month per variant). Creating 30 CPPs upfront leads to slow review cycles and makes iteration difficult.
No. CPPs are only shown via unique URLs you control (typically in paid campaigns); they are not A/B tests on the default page. For A/B testing the default product page, use the ab-test-store-listing skill instead.
Monitor impressions, product page views, and conversion rate per CPP in App Store Connect → Analytics → Custom Product Pages. Cross-reference with your MMP, ASA, or ad network data. Wait for ≥1,000 product page views per CPP before drawing conclusions.
Technically yes, but it's not recommended. Organic traffic to a CPP bypasses your default page's social proof and may reduce App Store featuring eligibility. Reserve CPPs for paid and partner-driven traffic.
Full instructions (SKILL.md)
Source of truth, from appeeky/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 appeeky/aso-skills and the wider catalog.

in-app-events
Plan and optimize App Store In-App Events to drive discovery, re-engagement, and installs without paid media.

keyword-research
Discover and prioritize high-value App Store keywords to boost visibility and downloads.

localization
Expand your app to international markets with localized App Store listings and market-prioritized strategies.

market-movers
Track App Store chart rank changes, identify top gainers/losers, and spot breakout apps entering the top 100.

market-pulse
Comprehensive App Store market overview combining chart movements, trending keywords, featured apps, and new releases.

metadata-optimization
Optimize App Store metadata (title, subtitle, keywords, description) for search ranking and conversion.