Churn & cancellation flow

Cancellation survey — capture churn reason without trapping the user

A cancellation flow that captures the single most-economically-valuable data point in your retention stack — the genuine churn reason — and routes conditional save attempts (pause, downgrade, discount, roadmap fast-track) without violating FTC click-to-cancel, EU consumer rights, or Brazilian CDC + Procon expectations on easy cancellation.

Free — included in every plan

Cancellation survey — capture churn reason without trapping the user

Live preview — try the fields below.

No fields to preview.

Who this template is for

The cancellation flow is where subscription companies make and break their reputation. The product team's instinct is to add friction — every checkbox, every page, every "are you sure?" pulls some percentage of users back into the subscription, and the math on the saved revenue looks great in the dashboard. The reality is that aggressive cancellation friction is now a regulatory risk in three major jurisdictions and a brand-reputation disaster everywhere else. The FTC's "click-to-cancel" rule (in force in 2025) requires US cancellation to be as easy as signup — including for in-app subscriptions and phone-only-cancel companies that the rule specifically targets. The EU Consumer Rights Directive and member-state implementations require the same in spirit. The Brazilian CDC and the Procon enforcement network have specifically gone after companies with deceptive cancellation flows, and any subscription company operating in Brazil that makes cancellation harder than signup ends up on Reclame Aqui within weeks. The economically right cancellation flow is the one that captures the churn reason in 30-90 seconds, offers a relevant save attempt routed by the reason (not a generic "please don't go" plea), and then actually cancels — no forced phone calls, no "chat with retention," no hidden pages. The companies that get this right (Notion, Linear, Figma, Stripe, GitHub, Cursor, RD Station, Conta Azul) cancel users in three clicks while still capturing the data and converting 10-30% of would-be cancellations into pauses, downgrades, or saves through targeted offers. This template gives you that structure: single-radio churn-reason as the only required field, conditional save-attempt routed by reason, optional open-text feedback, and a clean confirmation that the cancellation is processed.

From cancel-button click to processed cancellation in 90 seconds

A user clicks the cancel-subscription button in their account settings. The flow loads to a single page with a clear summary of what's being canceled (the specific plan, the next-charge date that won't happen, the data retention period after cancellation, the export options for their data). Below that, the churn-reason field — a single radio button list with 5-8 options covering the dominant reasons ("too expensive," "missing a feature I need," "switching to a competitor," "no longer needed for my use case," "team or company circumstance changed," "technical issue I couldn't resolve," "other — please describe"). Only this field is required. Below the reason, an optional open-text field for additional context. Based on the selected reason, a contextually-relevant save offer surfaces in-line — for "too expensive," a pause-for-3-months option or a downgrade to a lower tier; for "missing a feature," a roadmap-status link or a beta-access offer for the feature; for "team change," a seat-reduction option or a pause; for "switching to competitor," a brief acknowledgment without a high-pressure save. The save offer is one click to accept; declining is one click and proceeds directly to confirmation. On the final confirmation page, the cancellation is processed immediately (not "effective at next billing cycle" hidden in fine print), the data-export options are repeated, and a brief thank-you with an offer to come back is the last screen. Internally, the churn-reason and feedback data flow into product analytics, into the retention dashboard (so the product team sees aggregate trends), into the CRM (so future re-engagement campaigns are reason-aware), and — for save-offer attempts — into the billing system to apply the pause, discount, or downgrade.

What's included

Each section here is what experienced retention teams have learned actually works — without crossing the line into deceptive design. Customize the reason categories and the save-attempt logic to your product economics, but resist the temptation to add forced steps that capture more data at the cost of making the cancellation feel adversarial. The brand-reputation downside of a hostile cancellation flow exceeds any data or save-rate upside.

Built for the subscription categories where cancellation flow defines retention culture

  • B2B SaaS (the primary use case)

    The category where the cancellation flow most directly impacts long-term retention metrics and brand reputation. The churn reasons that dominate B2B SaaS — "too expensive," "missing a feature," "switching to competitor," "changed our team structure," "no longer fits our use case" — each route to a different save attempt. Pause vs. downgrade vs. discount has different math: pause preserves the relationship for a future restart (3-6 month pause typically recovers 30-50% of would-have-churned customers), downgrade preserves recurring revenue at lower ARR (typically saves 40-60% of MRR per saved account), discount preserves the full plan but at lower margin (a one-time 30% discount typically saves 20-30% of churners but compounds over time). The companies that run this well (Notion, Linear, Figma, Stripe, GitHub, Cursor, Anthropic Claude Pro, Vercel, Linear, Asana, Slack, Zapier, ClickUp) all surface the reason-routed save attempt without forcing the cancellation to go through a sales call. For Brazilian B2B SaaS (RD Station, Conta Azul, Bling, Omie, Pipefy, Movidesk, Octadesk), the Reclame Aqui exposure makes deceptive cancellation flows especially costly — Brazilian SaaS that makes cancellation easy via the in-app flow and surfaces save attempts as voluntary offers consistently rate better on RA than competitors who force phone-call cancellation.

  • Consumer subscription (streaming, fitness, meal kit, gym)

    Different economics than B2B but similar regulatory exposure. Netflix, Spotify, Disney+, Apple Music, Amazon Prime, Peloton, Beachbody, BarkBox, HelloFresh, Daily Harvest, Smalls, Imperfect Foods all manage cancellation as a key retention surface. The churn reasons here — "too expensive," "not using it enough," "switching to a competing service," "seasonal (gym subscription in summer, fitness app after January resolution)" — route to seasonal-pause offers, lower-tier downgrades, or genuine acknowledgment of the cancellation. The FTC click-to-cancel rule applies especially to consumer subscriptions because regulators have historically targeted gym chains, magazine subscriptions, and streaming services for deceptive cancellation patterns. For Brazilian consumer subscription (Netflix Brasil, Spotify Brasil, Globoplay, Disney+ Brasil, Smart Fit subscriptions, gym chains, meal-kit services like Liv Up, Saudável Mente), the Procon scrutiny extends to consumer subscription as well — a Brazilian streaming service that forces phone-call cancellation ends up on a Reclame Aqui hit list quickly. Easy cancellation in this category is increasingly a marketing differentiator.

  • Paid newsletter and content subscriptions

    Substack, Beehiiv, Ghost, Substack-equivalent paid newsletters, Patreon membership tiers — the cancellation flow here is typically simpler than B2B SaaS because the platform handles the billing infrastructure (Substack and Beehiiv have native cancel flows), but the churn-reason capture is still valuable for the creator-side analytics. The reasons for newsletter cancellation: "too many emails," "content quality changed," "too expensive," "no longer relevant to my interests," "switching to another newsletter on the same topic." Save attempts here are limited (pause options are rare in newsletter platforms; downgrade options don't usually exist), but the data is valuable for the creator-side editorial decisions. For Brazilian newsletter creators (the Drops / NeoFeed / Resumido / Brasil Journal / Cabeça de Lab generation building paid-subscription businesses), the same pattern applies with the local subscription platforms.

  • Mobile app subscriptions

    Different regulatory landscape because Apple App Store and Google Play Store handle the billing and the cancellation flow on their platforms. iOS subscriptions cancel through Apple ID settings, Android through Play Store settings — the app itself can't actually process the cancellation directly. The app's cancellation surface becomes a redirect-with-survey: the user clicks "manage subscription" or "cancel," the app captures the churn reason in a survey before redirecting to the platform's cancellation flow, and the platform processes the actual cancellation. This pattern lets the app capture the data without the user feeling tricked. The FTC click-to-cancel rule includes provisions for in-app subscriptions even when the actual cancellation happens through the platform store. For Brazilian app subscriptions (apps using Apple/Google billing or local alternatives like Mercado Pago Cuotas for subscription), the same redirect-with-survey pattern applies.

  • Community and membership programs

    Skool, Mighty Networks, Circle, Discord paid (via Whop or Patreon-Discord integration), creator-led communities running on these platforms. The churn reasons for community memberships have a specific shape: "community activity decreased," "didn't find the value I expected," "too busy to participate," "creator quality changed," "financial reasons." Save attempts here usually take the form of pause options (most community platforms support pause subscriptions), tier downgrades (free tier or lower-cost tier when offered), or genuine acknowledgment. For Brazilian community creators (Hotmart Sparkle communities, Eduzz Members, standalone Discord-Whop pairings), the cancellation flow is shaped by the platform — Hotmart and Eduzz both have native cancellation surfaces that the creator can customize with the churn-reason capture.

  • Education subscriptions (continuing education, courses with monthly billing)

    Coursera Plus, Domestika Plus, Skillshare, MasterClass, Hotmart subscription model courses, paid bootcamps with monthly billing. Different churn dynamics than other subscriptions because completion of the course often is the natural end of the subscription. The churn reasons here often include "completed what I wanted to learn," "course quality didn't meet expectations," "too expensive for current usage," "switching to a different platform." Save attempts: pause for breaks between courses, downgrade to lower tier with less content access, or genuine acknowledgment for users who completed their learning goal. For Brazilian education subscription (Hotmart's growing subscription model, Domestika com presença forte no Brasil, Alura's subscription model, DIO's subscription tier, Trybe's payment plans), the cancellation flow needs to honor the CDC's 7-day right of regret for any in-window cancellation and the longer-term cancellation rights for ongoing subscriptions.

Tune the cancellation flow to your churn economics without crossing into deceptive design

Start with the reason categories. List 5-8 specific reasons that cover 80%+ of your actual churn (your retention team can pull these from the past quarter's cancellation feedback if you've been capturing it informally), with "other — please describe" as the catch-all. Avoid generic options that don't differentiate (don't list "general dissatisfaction" as a reason category because it doesn't route to a useful save attempt). Make only the reason field required — every additional required field increases the perceived friction of the cancellation flow and risks regulatory or reputational issues. Add conditional save-attempt logic per reason: for "too expensive," surface pause / downgrade / discount options sequentially with one-click accept; for "missing a feature," surface the public roadmap link and a beta-access opt-in if the feature exists in beta; for "switching to competitor," surface a brief acknowledgment without a high-pressure save attempt (this category has the lowest save rate and the highest annoyance-when-pressed risk); for "team change" or "company circumstance," surface seat-reduction or pause options; for "completed my use case," simply acknowledge and confirm. Cancel immediately on confirmation — don't bury the actual cancel button below the save attempts; don't make the user click through multiple save-attempt pages; don't require phone-call cancellation for self-serve subscriptions. For US-operating subscriptions, the FTC click-to-cancel rule applies — failure to comply is a federal regulatory risk. For EU-operating subscriptions, the Consumer Rights Directive applies. For Brazil-operating subscriptions, the CDC and Procon expectations apply, with Reclame Aqui as the most-visible enforcement mechanism. Translate the flow into the languages of your subscriber base — the cancellation flow in a user's first language reduces frustration and reduces the likelihood of a complaint posted in the wrong language to the wrong public forum.

Cancellation survey FAQ

Different moment in the customer lifecycle and different operational goal. A feedback survey runs on active customers to inform product decisions. A complaint form runs on dissatisfied users (or non-customers) to handle service-recovery cases. A cancellation survey runs at the exit moment — the customer has decided to leave, the company has 30-90 seconds before they're gone, and the operational goal is twofold: capture the churn reason for product/retention analytics, and route a contextually-relevant save attempt that may or may not be accepted. The cancellation survey has the unique constraint that the user is leaving — adding too much friction risks regulatory issues (FTC, EU CRD, Brazilian CDC + Procon) and brand-reputation damage (Reclame Aqui, Trustpilot, Reddit, Twitter). The data capture must be useful but minimal, and the save attempt must be optional and non-coercive.
The reason field should be required (single radio button choice from 5-8 options) because this is the high-value data capture and the friction is acceptable. The open-text follow-up should be optional. The save-attempt acknowledgment should be optional and one-click to decline. The cancellation itself should be unconditional — once the user clicks past the save attempt, the cancellation processes regardless of further form completion. Don't gate the cancellation on completing additional fields beyond the single reason; don't gate the cancellation on talking to a retention representative; don't gate the cancellation on completing a multi-step flow that asks the same question different ways. For US-operating subscriptions, the FTC click-to-cancel rule (effective 2025) specifically prohibits these patterns. For EU, the Consumer Rights Directive prohibits them. For Brazil, the CDC and Procon have been enforcing similar standards since well before formal regulations existed in other jurisdictions.
Yes — but route them by churn reason rather than offering a generic save. Generic save attempts ("please don't leave! 30% off!") feel desperate and convert poorly because they're not addressing the actual reason for leaving. Reason-routed save attempts convert measurably better: "too expensive" routes to pause / downgrade / discount with the option to choose; "missing a feature" routes to roadmap status or beta access (which converts surprisingly well — 15-25% of users who churned over a feature stay if they can get early access to it); "team change" or "company circumstance" routes to seat reduction or pause; "completed my use case" routes to genuine acknowledgment and a "come back when you need us" message; "switching to competitor" routes to a brief acknowledgment without a high-pressure save attempt. The save-attempt offers should be one-click accept and one-click decline; multi-step save flows ironically convert worse than single-step ones because users who would have accepted lose patience by step three.
Make the path to actual cancellation no more than three clicks: cancel button in account settings → cancellation page with reason field + save attempt → confirm cancellation. The save attempt should be a single optional offer, not a multi-page sequence. The cancellation should process immediately on confirmation, not "at next billing cycle" hidden in terms. The cancellation confirmation page should be honest ("your subscription has been canceled, you'll have access until [date], your data is exportable here") rather than continuing to attempt persuasion. The companies that try to trap users with multi-page save flows, hidden cancellation buttons, phone-call requirements, or "talk to retention" gates pay for it in three ways: regulatory exposure (FTC click-to-cancel + EU + Brazilian CDC), brand-reputation hits on Reclame Aqui / Trustpilot / Reddit / Twitter, and (perversely) lower save rates because trapped users churn more aggressively and tell others not to subscribe in the first place. The honest cancellation flow protects long-term reputation and retention math better than the manipulative one.
Yes — the cancellation flow webhook can fire to the billing system to process the actual cancellation, the pause, the downgrade, or the discount. Stripe Billing has native subscription cancellation, pause, and downgrade APIs that the cancellation form can call directly via webhook. Chargebee, Recurly, Paddle, and Lemon Squeezy all support similar API-based cancellation workflows. For Brazilian recurring billing (Vindi as the dominant Brazilian recurring-billing platform for B2B SaaS; Hotmart and Eduzz for course subscription with native cancellation APIs; Iugu, Pagar.me, Mercado Pago for general recurring billing), the same webhook pattern applies with the local billing platform's APIs. The cancellation form captures the reason and save-attempt response, then fires to the billing platform to execute the actual cancellation action. The data simultaneously flows to product analytics (Mixpanel, PostHog, Amplitude for churn cohort analysis), to CRM (RD Station for Brazilian B2B, HubSpot, Salesforce — for future re-engagement campaigns), and to the retention dashboard (so the product team sees aggregate trends and can prioritize roadmap work against the most-cited churn reasons).

Ready to build forms that work for you?

Create your first form in minutes. Your submissions will thank you.

Be first in lineLimited early accessSet up in 2 minutes