Skip to main content

How the Cancel Flow Works: Overview

A
Written by Andreas H

A cancel flow is the sequence of screens churn.io shows a customer the moment they try to cancel — a short survey, a retention offer, a feedback prompt, and a final confirmation — designed to win them back before the cancellation goes through. This article explains the pieces that make up a flow, the two ways a flow can be delivered, and how a flow moves from a draft to live in front of your customers.

What a cancel flow is

Instead of letting a cancellation happen instantly, a cancel flow intercepts it. When a customer tries to cancel, churn.io presents your flow, learns why they want to leave, and gives you a chance to make a save offer. If the customer accepts an offer, they stay. If they still want to leave, the cancellation is completed and they see a confirmation screen. Every flow has a name and optional description, and starts as a draft you can edit freely before publishing.

Two ways to deliver a flow

When you click Create flow, you first choose a Flow type:

  • Widget — a pop-up that appears in your own app when a customer clicks your cancel button. The flow opens in place without sending the customer anywhere else.

  • Page — a standalone cancel page hosted at its own URL. Instead of embedding a widget, you redirect customers to that page when they want to cancel.

Both types share the same retention logic. Page flows add a few extras, such as page layout and SEO Meta title / Meta description settings.

The steps inside a flow

A flow is built from a series of steps. You can turn individual steps on or off, and each new flow starts with a sensible default set:

  • Survey — asks why the customer is cancelling, using reasons you define. Each reason can carry an optional follow-up question, and you can randomize the order in which reasons appear.

  • Offer — presents one or more retention offers. You can attach offers to the whole step or tie a specific offer to a particular survey reason, so the right save offer appears for the right customer.

  • Feedback — collects free-text feedback, with an optional minimum-character requirement and a skip option.

  • Confirmation — the final cancellation step, with your own headline, subtext, and button label, shown after the cancellation is processed.

Offer types you can present

Offers are the heart of the flow. churn.io supports several offer types:

  • Discount — a percentage off, for a duration you choose.

  • Pause — let the customer pause their subscription instead of cancelling.

  • Free month — give one or more months free.

  • Trial extension — extend a customer's trial period.

  • Book a call — offer a link to schedule a call with your team.

  • Custom page — send the customer to a page of your own with a button you label.

Trigger and audience

Two settings control when a flow shows and who sees it.

Trigger decides the event that opens the flow. Today the available trigger is Cancel button — it fires when a customer clicks the cancel button in your app. (A Downgrade attempt trigger is marked Soon and is not yet available.)

Audience decides who the flow targets. You can choose:

  • Show to everyone — every cancelling customer sees this flow.

  • Show to specific audience — target customers by attributes such as plan, MRR, or subscription details.

  • Everyone else — catches customers who don't match any of your other targeted flows.

What happens after cancellation

In the Behaviour section you control how a confirmed cancellation is handled:

  • What should happen when a user confirms cancellation? — currently Cancel automatically (other options are marked Soon).

  • When should the subscription end?At period end (the customer keeps access until their billing period closes) or Immediately.

  • Where should users go after cancelling? — close the pop-up, refresh or stay on the page, return to the previous page, or send them to a Custom link.

From draft to live

Flows have three states: Draft, Live, and Paused. A new flow starts as a Draft so you can build and preview it without it ever reaching a customer.

When you're ready, use Go live to publish the flow. You can pause a live flow at any time, and editing a live flow applies your changes to customers right away once you save.

⚠️ Connect Stripe before going live

A flow can only go live once you've connected a Stripe integration — without it, offers and cancellations can't actually be carried out. You also can't have two live flows targeting the same audience at once; pause the conflicting flow first.

💡 Preview before you publish

Use the built-in preview to step through your flow exactly as a customer would. Previews are never saved or shown to customers, so you can experiment freely while the flow is still a draft.

Did this answer your question?