Generated banner for Paywalls
Generated logo for Paywalls

Paywalls

Corey HainesCommunityCreated by Corey Haines

  • Skill
  • Workflow
  • Business and productivity
  • MIT
  • No issues found

From the author

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," "mobile app paywall," "subscription app paywall," or "App Store subscription pricing." 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.
— the description by Corey Haines

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

This skill provides a structured approach to designing in-app upgrade moments, such as paywalls, feature gates, and trial expiration screens. It emphasizes the 'Value Before Ask' principle, ensuring that users are prompted to upgrade only after they have experienced the product's core value. The skill covers the entire lifecycle of an upgrade flow, from identifying the right trigger points and designing effective screen components to A/B testing strategies and avoiding common anti-patterns like dark patterns.

What it does

  • Provides frameworks for timing upgrade prompts after user 'aha moments'.
  • Offers design patterns for feature locks, usage limits, and trial expiration screens.
  • Guides the creation of clear, value-oriented upgrade copy and CTA messaging.
  • Suggests A/B testing strategies for trigger timing, pricing presentation, and layout.
  • Outlines best practices for mobile subscription apps, including store-specific considerations.
  • Helps identify and remove conversion-killing friction in the payment path.

When to use it

  • When designing or refining in-app paywalls, upsell modals, or feature gates.
  • When free-to-paid conversion rates are low or users are not upgrading after trial periods.
  • When planning experiments to optimize the timing and frequency of upgrade prompts.
  • When transitioning from a free-only product to a freemium or subscription model.
  • When you need to balance monetization goals with maintaining user trust and retention.

Advantages

  • Focuses on user-centric conversion by prioritizing value demonstration.
  • Reduces user frustration by providing clear paths to continue using the free version.
  • Provides actionable, data-driven patterns for both SaaS and mobile app contexts.
  • Helps avoid dark patterns that can damage long-term brand reputation.
  • Includes specific guidance on mobile-first subscription mechanics and store-related constraints.

Usage examples

“Our users hit a usage limit on our project management tool, but they aren't upgrading. How should we design the limit-reached screen?”
The agent will provide a structure for a usage-limit paywall that clearly shows the current limit, the value of the Pro tier, and a frictionless path to upgrade, while ensuring the user isn't abruptly blocked.
“We are building a mobile fitness app. Should we use a hard paywall or a freemium model?”
The agent will compare the two approaches, referencing industry data on conversion and retention, and help you decide based on your app's specific value proposition and target audience.
“What should we test to improve our trial-to-paid conversion rate?”
The agent will suggest a list of A/B test ideas, such as varying trial lengths, testing different headline copy, or optimizing the timing of expiration reminders.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/coreyhaines31/paywalls/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip paywalls.zip -d .agents/skills

Documentation by Corey Haines

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

For consumer iOS/Android subscription apps (paywall inside onboarding, yearly-first plans, trials and reminders, store fees, web checkout, revenue per download): See references/mobile-subscription-paywalls.md


Anti-Patterns to Avoid

Dark Patterns
  • Hiding the close button

  • Confusing plan selection

  • Guilt-trip copy

  • Fake countdowns or "limited" offers with no real deadline

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?


  • 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

Files

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Security

No issues found by our static scan· No issues found

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
Corey Haines
Publisher
Corey Haines (Community)
Source
coreyhaines31/marketingskills · skills/paywalls · commit 96798cf
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Corey Haines.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download paywalls.zip