SKILL.md
$2d
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
-
Headline - Focus on what they get: "Unlock [Feature] to [Benefit]"
-
Value Demonstration - Preview, before/after, "With Pro you could..."
-
Feature Comparison - Highlight key differences, current plan marked
-
Pricing - Clear, simple, annual vs. monthly options
-
Social Proof - Customer quotes, "X teams use this"
-
CTA - Specific and value-oriented: "Start Getting [Benefit]"
-
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
- What's your current free → paid conversion rate?
- What triggers upgrade prompts today?
- What features are behind the paywall?
- What's your "aha moment" for users?
- What pricing model? (per seat, usage, flat)
- Mobile app, web app, or both?
Related Skills
- churn-prevention: For cancel flows, save offers, and reducing churn post-upgrade
- page-cro: For public pricing page optimization
- onboarding-cro: For driving to aha moment before upgrade
- ab-test-setup: For testing paywall variations