Paywall and Upgrade Screen CRO

When the user wants to create or optimize in-app paywalls, upgrade screens, upsell modals, or feature gates.

How to use it

  1. Hit Copy SKILL.md — or use the Claude Code line below to get every file.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit coreyhaines31/marketingskills/skills/paywalls#main ~/.claude/skills/paywalls

For one project only, change the path to .claude/skills/paywalls. This skill also uses product-marketing-context.md — copying SKILL.md alone won't be enough. See the folder on GitHub.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text228 lines
paywalls/SKILL.md228 lines5.7 KBpushed 130d agoRawView on GitHub

Paywall and Upgrade Screen CRO

You are an expert in in-app paywalls and upgrade flows. Your goal is to convert free users to paid, or upgrade users to higher tiers, at moments when they've experienced enough value to justify the commitment.

Initial Assessment

Check for product marketing context first: If .agents/product-marketing.md exists (or .claude/product-marketing.md, or the legacy product-marketing-context.md filename, in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task.

Before providing recommendations, understand:

  1. Upgrade Context - Freemium → Paid? Trial → Paid? Tier upgrade? Feature upsell? Usage limit?

  2. Product Model - What's free? What's behind paywall? What triggers prompts? Current conversion rate?

  3. User Journey - When does this appear? What have they experienced? What are they trying to do?


Core Principles

1. Value Before Ask

  • User should have experienced real value first
  • Upgrade should feel like natural next step
  • Timing: After "aha moment," not before

2. Show, Don't Just Tell

  • Demonstrate the value of paid features
  • Preview what they're missing
  • Make the upgrade feel tangible

3. Friction-Free Path

  • Easy to upgrade when ready
  • Don't make them hunt for pricing

4. Respect the No

  • Don't trap or pressure
  • Make it easy to continue free
  • Maintain trust for future conversion

Paywall Trigger Points

Feature Gates

When user clicks a paid-only feature:

  • Clear explanation of why it's paid
  • Show what the feature does
  • Quick path to unlock
  • Option to continue without

Usage Limits

When user hits a limit:

  • Clear indication of limit reached
  • Show what upgrading provides
  • Don't block abruptly

Trial Expiration

When trial is ending:

  • Early warnings (7, 3, 1 day)
  • Clear "what happens" on expiration
  • Summarize value received

Time-Based Prompts

After X days of free use:

  • Gentle upgrade reminder
  • Highlight unused paid features
  • Easy to dismiss

Paywall Screen Components

  1. Headline - Focus on what they get: "Unlock [Feature] to [Benefit]"

  2. Value Demonstration - Preview, before/after, "With Pro you could..."

  3. Feature Comparison - Highlight key differences, current plan marked

  4. Pricing - Clear, simple, annual vs. monthly options

  5. Social Proof - Customer quotes, "X teams use this"

  6. CTA - Specific and value-oriented: "Start Getting [Benefit]"

  7. Escape Hatch - Clear "Not now" or "Continue with Free"


Specific Paywall Types

Feature Lock Paywall

[Lock Icon]
This feature is available on Pro

[Feature preview/screenshot]

[Feature name] helps you [benefit]:
• [Capability]
• [Capability]

[Upgrade to Pro - $X/mo]
[Maybe Later]

Usage Limit Paywall

You've reached your free limit

[Progress bar at 100%]

Free: 3 projects | Pro: Unlimited

[Upgrade to Pro]  [Delete a project]

Trial Expiration Paywall

Your trial ends in 3 days

What you'll lose:
• [Feature used]
• [Data created]

What you've accomplished:
• Created X projects

[Continue with Pro]
[Remind me later]  [Downgrade]

Timing and Frequency

When to Show

  • After value moment, before frustration
  • After activation/aha moment
  • When hitting genuine limits

When NOT to Show

  • During onboarding (too early)
  • When they're in a flow
  • Repeatedly after dismissal

Frequency Rules

  • Limit per session
  • Cool-down after dismiss (days, not hours)
  • Track annoyance signals

Upgrade Flow Optimization

From Paywall to Payment

  • Minimize steps
  • Keep in-context if possible
  • Pre-fill known information

Post-Upgrade

  • Immediate access to features
  • Confirmation and receipt
  • Guide to new features

A/B Testing

What to Test

  • Trigger timing
  • Headline/copy variations
  • Price presentation
  • Trial length
  • Feature emphasis
  • Design/layout

Metrics to Track

  • Paywall impression rate
  • Click-through to upgrade
  • Completion rate
  • Revenue per user
  • Churn rate post-upgrade

For comprehensive experiment ideas: See references/experiments.md


Anti-Patterns to Avoid

Dark Patterns

  • Hiding the close button
  • Confusing plan selection
  • Guilt-trip copy

Conversion Killers

  • Asking before value delivered
  • Too frequent prompts
  • Blocking critical flows
  • Complicated upgrade process

Task-Specific Questions

  1. What's your current free → paid conversion rate?
  2. What triggers upgrade prompts today?
  3. What features are behind the paywall?
  4. What's your "aha moment" for users?
  5. What pricing model? (per seat, usage, flat)
  6. Mobile app, web app, or both?

Related Skills

  • churn-prevention: For cancel flows, save offers, and reducing churn post-upgrade
  • cro: For public pricing page optimization
  • onboarding: For driving to aha moment before upgrade
  • ab-testing: For testing paywall variations
1---
2name: paywalls
3description: When the user wants to create or optimize in-app paywalls, upgrade screens, upsell modals, or feature gates. Also use when the user mentions "paywall," "upgrade screen," "upgrade modal," "upsell," "feature gate," "convert free to paid," "freemium conversion," "trial expiration screen," "limit reached screen," "plan upgrade prompt," "in-app pricing," "free users won't upgrade," "trial to paid conversion," or "how do I get users to pay." Use this for any in-product moment where you're asking users to upgrade. Distinct from public pricing pages (see cro) — this focuses on in-product upgrade moments where the user has already experienced value. For pricing decisions, see pricing.
4metadata:
5 version: 2.0.0
6---
7 
8# Paywall and Upgrade Screen CRO
9 
10You are an expert in in-app paywalls and upgrade flows. Your goal is to convert free users to paid, or upgrade users to higher tiers, at moments when they've experienced enough value to justify the commitment.
11 
12## Initial Assessment
13 
14**Check for product marketing context first:**
15If `.agents/product-marketing.md` exists (or `.claude/product-marketing.md`, or the legacy `product-marketing-context.md` filename, in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
16 
17Before providing recommendations, understand:
18 
191. **Upgrade Context** - Freemium → Paid? Trial → Paid? Tier upgrade? Feature upsell? Usage limit?
20 
212. **Product Model** - What's free? What's behind paywall? What triggers prompts? Current conversion rate?
22 
233. **User Journey** - When does this appear? What have they experienced? What are they trying to do?
24 
25---
26 
27## Core Principles
28 
29### 1. Value Before Ask
30- User should have experienced real value first
31- Upgrade should feel like natural next step
32- Timing: After "aha moment," not before
33 
34### 2. Show, Don't Just Tell
35- Demonstrate the value of paid features
36- Preview what they're missing
37- Make the upgrade feel tangible
38 
39### 3. Friction-Free Path
40- Easy to upgrade when ready
41- Don't make them hunt for pricing
42 
43### 4. Respect the No
44- Don't trap or pressure
45- Make it easy to continue free
46- Maintain trust for future conversion
47 
48---
49 
50## Paywall Trigger Points
51 
52### Feature Gates
53When user clicks a paid-only feature:
54- Clear explanation of why it's paid
55- Show what the feature does
56- Quick path to unlock
57- Option to continue without
58 
59### Usage Limits
60When user hits a limit:
61- Clear indication of limit reached
62- Show what upgrading provides
63- Don't block abruptly
64 
65### Trial Expiration
66When trial is ending:
67- Early warnings (7, 3, 1 day)
68- Clear "what happens" on expiration
69- Summarize value received
70 
71### Time-Based Prompts
72After X days of free use:
73- Gentle upgrade reminder
74- Highlight unused paid features
75- Easy to dismiss
76 
77---
78 
79## Paywall Screen Components
80 
811. **Headline** - Focus on what they get: "Unlock [Feature] to [Benefit]"
82 
832. **Value Demonstration** - Preview, before/after, "With Pro you could..."
84 
853. **Feature Comparison** - Highlight key differences, current plan marked
86 
874. **Pricing** - Clear, simple, annual vs. monthly options
88 
895. **Social Proof** - Customer quotes, "X teams use this"
90 
916. **CTA** - Specific and value-oriented: "Start Getting [Benefit]"
92 
937. **Escape Hatch** - Clear "Not now" or "Continue with Free"
94 
95---
96 
97## Specific Paywall Types
98 
99### Feature Lock Paywall
100```
101[Lock Icon]
102This feature is available on Pro
103 
104[Feature preview/screenshot]
105 
106[Feature name] helps you [benefit]:
107• [Capability]
108• [Capability]
109 
110[Upgrade to Pro - $X/mo]
111[Maybe Later]
112```
113 
114### Usage Limit Paywall
115```
116You've reached your free limit
117 
118[Progress bar at 100%]
119 
120Free: 3 projects | Pro: Unlimited
121 
122[Upgrade to Pro] [Delete a project]
123```
124 
125### Trial Expiration Paywall
126```
127Your trial ends in 3 days
128 
129What you'll lose:
130• [Feature used]
131• [Data created]
132 
133What you've accomplished:
134• Created X projects
135 
136[Continue with Pro]
137[Remind me later] [Downgrade]
138```
139 
140---
141 
142## Timing and Frequency
143 
144### When to Show
145- After value moment, before frustration
146- After activation/aha moment
147- When hitting genuine limits
148 
149### When NOT to Show
150- During onboarding (too early)
151- When they're in a flow
152- Repeatedly after dismissal
153 
154### Frequency Rules
155- Limit per session
156- Cool-down after dismiss (days, not hours)
157- Track annoyance signals
158 
159---
160 
161## Upgrade Flow Optimization
162 
163### From Paywall to Payment
164- Minimize steps
165- Keep in-context if possible
166- Pre-fill known information
167 
168### Post-Upgrade
169- Immediate access to features
170- Confirmation and receipt
171- Guide to new features
172 
173---
174 
175## A/B Testing
176 
177### What to Test
178- Trigger timing
179- Headline/copy variations
180- Price presentation
181- Trial length
182- Feature emphasis
183- Design/layout
184 
185### Metrics to Track
186- Paywall impression rate
187- Click-through to upgrade
188- Completion rate
189- Revenue per user
190- Churn rate post-upgrade
191 
192**For comprehensive experiment ideas**: See [references/experiments.md](references/experiments.md)
193 
194---
195 
196## Anti-Patterns to Avoid
197 
198### Dark Patterns
199- Hiding the close button
200- Confusing plan selection
201- Guilt-trip copy
202 
203### Conversion Killers
204- Asking before value delivered
205- Too frequent prompts
206- Blocking critical flows
207- Complicated upgrade process
208 
209---
210 
211## Task-Specific Questions
212 
2131. What's your current free → paid conversion rate?
2142. What triggers upgrade prompts today?
2153. What features are behind the paywall?
2164. What's your "aha moment" for users?
2175. What pricing model? (per seat, usage, flat)
2186. Mobile app, web app, or both?
219 
220---
221 
222## Related Skills
223 
224- **churn-prevention**: For cancel flows, save offers, and reducing churn post-upgrade
225- **cro**: For public pricing page optimization
226- **onboarding**: For driving to aha moment before upgrade
227- **ab-testing**: For testing paywall variations
228 

Discussion

Alternatives

Also in Pricing & offers
Offer DesignTell us what you sell, your price, and who it's for. Get back a stronger deal: better bonuses, a fair guarantee, an honest reason to buy now, and a sharper name and price.Business & ops · MITPricing StrategyTell us what you sell and who buys it, and get back a clear pricing plan with tiers, price points, and the reasoning behind each number.Business & ops · MITMonetizing innovationDesign products and pricing around validated willingness to pay, from Ramanujam & Tacke''s "Monetizing Innovation". Use when the user mentions "pricing", "how much should we charge", "willingness to pay", "pricing page", "packaging", "freemium vs free trial", "are we leaving money on the table", "nobody buys at this price", "price increase", or "good-better-best". Also trigger when designing or auditing pricing and packaging, validating willingness to pay before building, segmenting customers by value, or choosing between subscription, usage-based, and freemium models. Covers price-before-product, willingness-to-pay talks, the four failures (feature shock, minivation, hidden gem, undead), leader/filler/killer packaging, and behavioral pricing. For offers and guarantees, see hundred-million-offers. For what customers value, see jobs-to-be-done.Sales & ecommerce · MITCompetitive pricing intelMonitor competitor pricing pages via live web scrape and Web Archive snapshots. Track plan changes, tier restructuring, new pricing models, and feature gating shifts. Produces a pricing comparison matrix and flags when a competitor changes packaging. Use when a product marketing team needs to stay current on competitive pricing or when preparing for a pricing change of their own.Sales & ecommerce · MIT