agentleFS
mikezamayiasmikezamayias/agent-skills/skills/paywall-transparency/SKILL.md

paywall-transparency

Skill1 starsChanged 27 days agoBSD-3-ClauseView on GitHub

Codifies the transparency-wins pattern, where explicit pre-paywall screens raise trial-to-paid conversion. Use when designing or auditing in-app paywalls, trial flows, or subscription onboarding.

The file

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 4 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use 365/7 and not 52 weeks when you check such a badge, because 52 weeks gives $311.48 and $363.48 and a 1 dollar mismatch (arithmetic).

    line 65
  2. Distinctive:

    If the switch stays, describe the pair in the review notes and compare the rejection risk with the test value (inference).

    line 72
  3. Distinctive:

    Keep the renewal price as legible as the introductory price and track refund rate per plan.

    line 83
  4. Distinctive:

    Do not treat another developer's "it passed review" as proof that a paywall is allowed.

    line 89

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Paywall Transparency

Principle

Founders fear that reminding users about charge dates causes cancellations. Opposite is true - users who want to cancel will cancel regardless. Users who trust you convert at much higher rates.

When to invoke

  • New paywall or trial flow.
  • A/B testing trial-start or trial-end variants.
  • Conversion-rate drop in subscription apps.

The 2 screens

  1. "Here's exactly what you get" - concrete feature list with checkmarks, ≤7 items, plain language.
  2. "Here's exactly when you'll be charged" - trial timeline: today free → reminder 2 days before charge → charge with localized price.

Implementation checklist

  • Trial-start screen lists features in plain language.
  • Charge timeline visible BEFORE the App Store / web checkout modal.
  • Reminder push/email scheduled 48h before charge.
  • A win-back or retention offer states the price after the offer ends, the billing period and the renewal date, the same as any trial.
  • On a one-screen paywall, the trial line under the plan states the length, the charge with its period and the reminder ("7 days, then €29.99 a year. We remind you 2 days before."), and the reminder is actually scheduled.
  • If the user picks the reminder lead time, ask on a screen before the paywall, and the paywall timeline shows the chosen day. Seen in one gym app recording (X post, 2026-10-23), with no notification prompt shown and no effect on conversion or cancellations reported.
  • Settings → "Manage subscription" deep-link is one tap.
  • The account or settings page states the current plan, when it ends, whether it renews and who bills it. One planner (walked on a device, 2026-10-30) shows the trial's end date followed by "then renews", and "Your trial is billed through Apple. Manage or cancel it in Apple Subscriptions." with a one-tap button, and during free days granted outside the store it says "There's nothing to pay, and nothing can charge you at the end."
  • Localized prices per storefront.

Anti-patterns

  • Hiding price until last screen.
  • "Free trial" without showing duration.
  • Charge happens silently with no pre-notice.
  • Bait-and-switch pricing, meaning a price or trial shown on the paywall that differs from what checkout charges. Apple Developer Program License Agreement (ADPLA) Section 3.2 bans "bait-and-switch pricing", and the Developer Code of Conduct in Guideline 5.6 bans tricking users into unwanted purchases or raising prices "in a tricky manner". Neither text names paywalls, so applying them here is a reading of the rules. Guideline 5.6 says the developer account will be terminated for conduct that breaks the Code.
  • A crossed-out reference price or a "SAVE x%" badge whose comparison the screen does not state. Apple's subscriptions page says a savings figure compared with weekly or monthly plans should be "displayed in a subordinate position and size" to the billed amount, and Guideline 2.3.1(a) lists "promoting a false price" as grounds for removal (Apple pages, read 2026-10-25). Example from one X thread (single report): "SAVE 88%" on a $39.99 yearly plan beside a $6.99 weekly plan. The weekly price over 52 weeks is $363.48 and the true saving is 89.0%, while 88% matches a 48-week year, so the badge uses an unstated period (arithmetic). A reply shows a lifetime plan at $39.99 with a struck-through $363.48, which is 52 weeks of the weekly plan, a price no plan on that screen charges as a single amount. Two paywalls from one author (X article, 2026-04-18, screens read) compute the struck-through yearly price as the weekly price times 365 divided by 7, which is 52.14 weeks. $5.99 gives $312.34 with "SAVE 90%" (true saving 90.4%) and $6.99 gives $364.48 with "SAVE 89%" (true saving 89.0%). The badge is then honest for a 365 day year, but no plan charges the struck price and the screen does not say what it compares with. Use 365/7 and not 52 weeks when you check such a badge, because 52 weeks gives $311.48 and $363.48 and a 1 dollar mismatch (arithmetic). State the comparison in words next to the figure, and compute it from the real billing period.
  • A free trial switch on the paywall that changes which plan is selected. Superwall's post of 2026-06-03 says Apple does not allow "free trial toggles on paywalls" because a switch can silently swap the selected product (secondary source, which says it is not an official guideline and cites no Apple text). The App Review Guidelines text read on 2026-11-06 does not contain the word "toggle", but the last part of the page, which includes 5.6, was not read, so the absence is not proven. One reply on an X thread reports a paywall with a "Free trial enabled" switch being rejected (single report). Attach the trial to a plan card and name the price that follows it on the card and under the button, and do not add a switch. If the switch stays, describe the pair in the review notes and compare the rejection risk with the test value (inference).
  • A low introductory price shown much larger on screen than the renewal price, on a plan that renews weekly. Apple's Guideline 5.6.4 names "excessive refund requests" among the signs of poor quality and says poor quality "may be a factor" in judging conduct under the Developer Code of Conduct, with no threshold (Apple guidelines, read 2026-10-24). It does not name intro offers, so reading it as a rule against this pattern is an inference. One reply in an X thread (single report) says Apple counts refund spikes against an account, which is stronger than the text. Guidelines 3.1.2, 5.6 and 5.6.4 set no size rule for an intro price against the renewal price. Apple's Auto-renewable Subscriptions page does require the "Full renewal price, shown clearly and prominently" on the sign-up screen. It also says "the amount that will be billed must be the most prominent pricing element in the layout" and that a breakdown price or a savings figure should be "displayed in a subordinate position and size" to the annual price (Apple page, read 2026-10-25). For a pay as you go intro offer the amount billed at purchase is the intro price, so the page does not settle the relative size of the two numbers (inference). A layout that makes the intro price the largest number and the renewal price small and grey rests only on the "Full renewal price, shown clearly and prominently" requirement, and a reviewer can read it either way (inference). One reply in an X thread (single report, 2026-10-24) predicts a flag for this exact layout, and another reports rejections "for way less" (single report). Keep the renewal price as legible as the introductory price and track refund rate per plan.
  • A vendor's list of 101 paywall tests (Helium, X article, 2026-08-17) advises showing the yearly plan as a monthly price while writing the full annual price "the same size or larger", and keeping the price "one of the smallest components" on the page (items 60 and 64, unsourced). Apple's Auto-renewable Subscriptions page says the billed amount must be the most prominent pricing element and a breakdown price should be subordinate in position and size (read 2026-11-03), so "the same size" and "one of the smallest components" do not follow Apple's text. The article's own screenshot of a large "$9.58 / month" above a small "$114.99 per year, billed annually" shows the layout Apple's text discourages, and no outcome is shown for it. Show the per-month figure smaller than the billed annual price, and do not copy a competitor's paywall layout as proof that it passes review.

Do not treat another developer's "it passed review" as proof that a paywall is allowed. One reply describes reviewers as inconsistent (X reply, 2026-10-24, single report), and a thread of 12 replies showed no Apple message or screenshot approving the layout in question. Apple's Guideline 5.6 says "repeated manipulative or misleading behavior" will lead to removal from the Apple Developer Program, so a passed review does not clear the layout (Apple guidelines, read 2026-10-25). Judge a paywall against the Apple text in this file, and record the review outcome as one datapoint.

Sources

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.