Suede Paywalls and Upgrade Moments

SkillCommunication

Suede-affiliated in-product monetization design for paywall screens, feature gates, trial-expiry states, usage-limit prompts, and free-to-paid upgrade moments. Use when the user needs trigger timing, message structure, plan presentation, or experiment design after users have experienced value. NOT FOR: public pricing pages (use suede-site-alchemy), tier architecture (use suede-pricing), or cancellation and save flows (use suede-churn-prevention).

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Suede Paywalls and Upgrade Moments skill

What this skill tells your AI

The instructions your AI receives, as published by jasoncolapietro/suede-creator-skills in skills/suede-paywalls/SKILL.md and read by ahel’s review.

Suede designs in-product monetization around a truthful entitlement boundary and a value-aware moment, not interruption volume. Define when the user has enough context to evaluate an upgrade, what the paid change actually unlocks, and how to test the prompt without obscuring price, consent, or exit.

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?


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]

Self-Critique Gate (run before delivering any screen copy)

Do not hand over a drafted paywall until you have re-read it against Anti-Patterns to Avoid and Boundaries below, and answered these out loud:

  1. Where is the close/dismiss control, and is it visible without scrolling or hovering?
  2. Is the price — including what renews, when, and at what amount — stated on the screen?
  3. Does any urgency claim ("ends today", a countdown) correspond to a real deadline?
  4. Can the user reach the free path in one tap from this screen?
  5. Does any copy assign blame, shame, or loss the user did not actually incur?

Name every hit before delivering. A hit on 1, 3, or 4 is a blocker: fix the draft, don't ship it with a caveat.


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

Defaults unless a running experiment says otherwise — ship these numbers, and say so when a test moves them:

  • Max 1 paywall impression per session.
  • Cooldown >= 7 days after a dismiss; >= 14 days after a second dismiss.
  • Suppress a given gate entirely after 3 lifetime dismissals.

Instead of "annoyance signals," instrument the ones a reviewer can read: dismiss rate per gate, post-paywall session-abandon rate, plus the impression, click-through, completion, revenue-per-user, and post-upgrade churn metrics the experiment reference tracks.


Upgrade Flow and Testing

Keep the path from paywall to payment in-context and pre-filled, and grant access the moment payment clears — the checkout and post-upgrade activation flow itself belongs to suede-onboarding.

For frequency, trigger-timing, copy, and price-presentation experiments — including which of the above defaults are worth testing first: See references/experiments.md. Use suede-ab-testing to design and read out the test.


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

Boundaries

  • Do not fabricate entitlement, plan, price, conversion, trial, or usage-limit data.
  • Do not change billing, entitlements, app configuration, experiments, or live paywalls without explicit authorization.
  • Do not recommend hidden close controls, confusing consent, forced continuity, obstructive cancellation, or false urgency.
  • Do not decide refund, tax, legal, platform-policy, accessibility, or billing-risk terms for the user.

Routing

  • Use suede-churn-prevention for cancel and save flows.
  • Use suede-site-alchemy for public pricing pages and suede-pricing for tier architecture.
  • Use suede-onboarding to reach first value and suede-ab-testing to validate paywall variations.

Signals

GitHub stars
135
Forks
10
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
suede-paywalls
Source
github.com/jasoncolapietro/suede-creator-skills