GTM Sauce

Sub Club by RevenueCat · 2025-04-16

The Subscription Growth Formula: Churn Math, Retention Wins, and Smart Product Bets — Dan Layfield, Subscription Index

David Barnard talks with Dan Layfield (ex-Codecademy growth PM, ex-Uber Eats, now consultant and Subscription Index blogger) about estimating ROI before building, shipping big swings in milestones, polishing flows every user passes through (Codecademy's 2-day checkout error copy rewrite lifted checkout conversion ~1%), the growth ceiling formula (new users per month / monthly churn), how use-case length and product-market fit set retention, activation, payment success rates, and cancellation flows with pause, discount and support offers (10-20% churn drop).

Play the episode

11 tactics

Codecademy · B2C · learn-to-code courses

About 1% more checkout conversion (guest's conservative guess) from 2 days of work

Downloaded all checkout page payment errors, stack-ranked them by frequency, rewrote the copy so each failure tells the user what is wrong and what to do (instead of 'Invalid payment method. Please contact your bank.'), with fallbacks: if the card fails, offer PayPal; if PayPal fails, send them back to a card. Merged back into the codebase. Took about 2 days. Rationale: 100% of new revenue passes through checkout, so a 1% lift lifts all revenue 1%.

Workedpayments-checkout
Sub Club by RevenueCat · 2025-04-16

Codecademy · B2C · learn-to-code courses

10-20% drop in churn across a couple of companies

Cancellation survey routes each reason to a save offer: 'too busy' -> pause the subscription (worked best at Codecademy since people learn to code in bursts); 'too expensive' -> temporary discount (same plan at 50% off for 3 months, then auto-return to full price) or a downgrade to a lower, hidden tier; 'negative experience' -> connect with customer support. On Stripe this needs custom logic in the payment system. Watch the share of users who take the discounts, since save tactics become widely known and get gamed.

Workedcancellation-flow
Sub Club by RevenueCat · 2025-04-16

Codecademy · B2C · learn-to-code courses

Worked to raise total cash, but left 10 price packages to maintain forever

Grouped countries into about three willingness-to-pay tiers (Nordics, Western Europe, US and Canada highest; a second tier paying less; a third paying least) and localized price level as well as currency and page content, initially pegging FX rates. Cost: 10 price packages to manage in ads, email, support docs and every future price change. Guest advises squeezing easier tactics out first.

Workedpricing
Sub Club by RevenueCat · 2025-04-16

Practitioner pattern · Dan Layfield (Codecademy, Uber Eats)

Modest but real uplift; matters more as churn falls

Set up dunning/email notifications when recurring payments fail and spend about 2 days copywriting them, since they reach 100% of users with failed payments. On the App Store, detect billing issues where possible and send custom emails asking users to update their payment method. The lower churn gets, the larger payment-failure churn's share (at 2% churn, maybe half).

Workedpayments-checkoutemail
Sub Club by RevenueCat · 2025-04-16

Practitioner pattern · Dan Layfield (Codecademy, Uber Eats)

Recovers failed payments from the highest-intent buyers; no numbers

For web checkout, measure the share of 'pay' clicks where money is actually collected (almost no one tracks this at first). Dig into failure reasons: US companies charging worldwide through only Stripe or US gateways lose payments in regions like India and China; as you grow, add secondary payment providers or a subscription manager. Less relevant for App Store apps.

Unknownpayments-checkout
Sub Club by RevenueCat · 2025-04-16

Practitioner pattern · Dan Layfield (Codecademy, Uber Eats)

Yields 2-5 useful issues a week to fix in the funnel

Right after purchase, ask a single open-ended question such as 'Was there anything about the purchase experience that didn't work for you? Was it confusing?' or 'Were there any questions about this product you couldn't find an answer to before purchase?'. Combine with fresh-eyes walkthroughs (friends, UserTesting.com) and work the funnel bottom-up from the highest-intent users.

Workedfeature-developmentpayments-checkout
Sub Club by RevenueCat · 2025-04-16

A weather app · B2C · host's own app

Not much success so far; no numbers

When a user taps the paywall CTA and then cancels the App Store payment sheet, a modal pops up offering a reverse free trial: 7 days of premium completely free that does not auto-renew.

No effectpaywall
Sub Club by RevenueCat · 2025-04-16

Practitioner pattern · David Barnard (Works at RevenueCat, whose Customer Center product he mentions for cancel flows)

Host says it can be very effective; Apple has pushed back on some apps

After a user taps the paywall CTA and dismisses the App Store payment sheet, immediately show a discount offer (e.g. 50% off) to win them back. Host notes Apple has reportedly hassled some developers over this as a form of price discrimination.

Workedpaywall
Sub Club by RevenueCat · 2025-04-16

Host's weather app spent 5 months on one big innovative feature, hoping it would get press coverage and work well in marketing (TikTok videos, Meta ads). No dollar ROI estimate and no validation (e.g. mockup tests on TikTok) was done beforehand.

Unknownfeature-developmentpr-launch
Sub Club by RevenueCat · 2025-04-16

Zoom · video calling software

Guest was offered $7/month instead of $15; no outcome data

Large subscription companies (The New York Times, CLEAR, Zoom) use cancel-survey answers to trigger save offers: 'too expensive' -> temporary two-month discount, bad experience -> support, too busy -> pause. Zoom offered the guest, paying ~$15/month, a hidden ~$7/month plan with a limited number of calls.

Unknowncancellation-flow
Sub Club by RevenueCat · 2025-04-16

Uber Eats · B2C · food delivery app

Guest says members are way less likely to use a rival; no numbers

In a long-term use case with easy switching (food delivery, rides), sell a membership (~$9.99/month for Uber Eats in the US) as a retention tool. Since the core business makes the money, the subscription can be priced flexibly; its job is to stop switching. Used by Uber Eats, Uber, DoorDash and Lyft.

Workedretentionpricing
Sub Club by RevenueCat · 2025-04-16

Numbers mentioned

WhoMetricValueContextWhen
CodecademyarrUSD 10M
approximate
When the guest joined2:09
CodecademyarrUSD 55M
approximate
After the guest's 5 years2:09
CodecademyrevenueUSD 50M/year
approximate
Revenue already passed ('north of') before a second, higher pricing tier was added51:03
benchmarkCost of one two-week sprint for a team of 6-8 engineers, a designer and a product managercostUSD 40K–50Kper two-week sprint
approximate
2:37
benchmarkShare of quarterly development time for technical debt at an early-stage companyshare10%/quarter
illustrative
13:49
benchmarkShare of roadmap spent on technical debt at a giant company like Microsoftshare50%
illustrative
14:11
Codecademyconversion rate+1%
estimate
Checkout page conversion after rewriting all payment error copy; equals ~1% lift in all new revenue14:54
Host's side-project weather appretention10%
approximate
Share of monthly subscribers still subscribed from 8 years ago (annual a little higher)24:57
Host's side-project weather appretention8–12%
approximate
Long-term cohort retention where the curve flattens34:52
aggregateSubscription apps the host has seen doing really well (office hours)retention20–25%
approximate
Level where long-term cohort retention flattens25:25
aggregateRevenue range where many subscription apps hit a growth ceilingrevenueUSD 1M–20M
approximate
Host: 'million to 10 million range, sometimes 10 to 20 million'; unit not stated explicitly22:34
marketCell phone plans, year-over-year customer retentionretention80–90%/year
estimate
27:36
benchmarkSean Ellis product-market fit survey threshold: share of users who couldn't live without the productshare40%33:08
benchmarkTime within which users decide whether to start a trialtime to milestone10 minutes
approximate
Decision made in session zero, within about the first 10 minutes or quicker39:20
benchmarkReally good lifecycle email campaignsengagement rate30%
approximate
Open rate39:45
benchmarkReally good lifecycle email campaignsconversion rate2%
approximate
Net click-through rate39:45
benchmarkShare of churn that is payment-failure churn once monthly churn is down to 2%share50%
illustrative
42:13
aggregateCancellation flows (pause, discount, support) the guest implemented across a couple of companieschurn+10–20%
approximate
Drop in churn47:30
ZoompriceUSD 15/month
approximate
Guest's plan before cancelling46:46
ZoompriceUSD 7/month
approximate
Hidden lower tier offered in the cancel flow (limited calls)46:46
Uber EatspriceUSD 9.99/month
estimate
US membership; guest's rough figure32:17
OpenAInew customers1M users
approximate
Users added in one hour during the Studio Ghibli image moment (per Sam Altman tweets)28:15