Use this when you're building in-app upgrade screens, feature gates, or those modals that appear when users hit their free tier limits. It covers timing (show after the aha moment, not during onboarding), copywriting patterns for different trigger types (usage limits vs trial expiration vs feature locks), and the actual UI components that work. The emphasis on "value before ask" and respecting the dismiss action is solid advice that'll save you from annoying users into churning. Includes specific templates for different paywall types and clear guidance on what to A/B test. Distinct from public pricing pages, this is all about those in-product moments where someone's already using your app and deciding whether to pay.

skills.sh installs
78.1K
GitHub stars
59.5K
last updated
Aug 21, 2026

Install

$ npx -y skills add coreyhaines31/marketingskills --skill paywalls --agent claude-code

Installs into .claude/skills of the current project.

Files

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

Sponsors

Details

Repository
github.com/coreyhaines31/marketingskills
Categories
AI & Agent Building, Productivity & Planning, Marketing & SEO, CLI & Terminal
First seen
Jun 3, 2026

More from coreyhaines31/marketingskills

All 68
1squirrelscan avataraudit-websitesquirrelscan/skillsAudit a website with the squirrelscan CLI and fix the findings in code. Runs SEO, performance, security, technical, content, accessibility, and 15 other rule ca74.9Kskills.sh installs
2heygen-com avatarlottieheygen-com/hyperframesLottie and dotLottie adapter patterns for HyperFrames. Use when embedding lottie-web JSON animations, .lottie files, @lottiefiles/dotlottie-web players, registe69.1Kskills.sh installs
3insforge avatarinsforge-cliinsforge/insforge-skillsUse this skill whenever someone needs a backend, or a task touches InsForge backend or cloud infrastructure through the InsForge CLI: projects, SQL, migrations,65Kskills.sh installs
4firecrawl avatarfirecrawl-build-searchfirecrawl/skillsIntegrate Firecrawl `/search` into product code and agent workflows. Use when an app needs discovery before extraction, when the feature starts with a query ins62.5Kskills.sh installs
5heygen-com avatarmotion-doctrineheygen-com/hyperframesGATEWAY — load FIRST before composing any HyperFrames animation or video. The high-level motion law that makes a multi-scene video feel like ONE continuous came62.2Kskills.sh installs
6firecrawl avatarfirecrawl-build-onboardingfirecrawl/skillsGet Firecrawl credentials and SDK setup into a project. Use when an application needs `FIRECRAWL_API_KEY`, when an agent should add Firecrawl to `.env`, when th62.2Kskills.sh installs