# Cancellation flow

### Introduction

Cancellation Flow is a customizable retention process that engages subscribers the moment they attempt to cancel or pause their subscription. Instead of losing them right away, you can ask why they're leaving and present targeted actions — such as a discount, a product swap, a skip, or a pause — that address their specific reason.

By turning a single "Cancel" click into a meaningful conversation, you reduce churn, recover revenue, and gather structured feedback about why subscribers leave. Cancel flow and Pause flow are configured independently, so you can design different retention strategies for each.

***

### Understanding the cancellation flow

A retention flow is built from three core elements:

* **Reason** — a clear option subscribers select when they want to cancel or pause (for example, *"It's too expensive"* or *"I receive it too early or too late"*). You can use the default reasons or create your own.
* **Message** — the empathetic response shown after a subscriber picks a reason. This is your chance to acknowledge their concern and introduce a solution.
* **Action** — the retention offer attached to each reason. You can combine multiple actions per reason, including **Offer discount**, **Offer gift**, **Skip next order**, **Swap product**, **Pause subscription**, **Change frequency**, **Change next order date**, **Edit quantity**, **Contact support**, and more.

You can also add **Conditions** to control when each reason appears — for example, only show *"It's too expensive"* to subscribers whose total spend is below a certain amount, so you don't offer discounts to your most loyal customers.

When a subscriber clicks Cancel on the Customer Portal, Joy Subscriptions opens a modal with your configured reasons. After they choose one, they see your message plus the matching action buttons. They can accept an offer (and stay subscribed), keep the subscription as-is, or proceed with cancellation.

***

### How to set up the cancellation flow

**Step 1:** Go to **Settings → Cancellation flow** in your Joy Subscriptions admin.

**Step 2:** Open the **Cancel** tab and select **Customer retention flow** under Cancellation options. This replaces the default immediate cancel with the retention experience.

**Step 3:** Customize the **Heading** and **Description** that subscribers see at the top of the cancellation modal. Keep the tone supportive and inviting.

**Step 4:** In the **Cancellation reasons** section, click **Add reason** (or open an existing one) to configure a retention offer.

**Step 5:** Enter the **Reason title** (what subscribers see) and the **Message** (your empathetic response after they select the reason).

**Step 6:** Under **Actions**, click **Add action** and choose a retention offer that fits this reason. For example, pair *"It's too expensive"* with **Offer discount**, or pair *"I already have more than I need"* with **Skip next order**. You can add several actions to one reason.

**Step 7:** (Optional) Under **Conditions**, click **Add condition** to limit when this reason appears. Conditions cover customer attributes (tag, total spent), subscription details (lifetime value, frequency, country), and product makeup. Use **AND** or **OR** to combine multiple conditions.

**Step 8:** Click **Save** to add the reason to your flow. Repeat Steps 4–7 for each reason. Drag the handle on the left of each row to reorder how reasons appear to subscribers.

**Step 9:** (Optional) Enable **Custom answer** to let subscribers type a free-text reason. Choose to always show the text field, or only show it when subscribers pick specific reasons like *"Other reasons."*

**Step 10:** Open the **Settings** tab. Adjust the **Discount cooldown days** (default 100) — this prevents subscribers from repeatedly cancelling to claim the same discount. You can also enable **Allow skip reason** if you want subscribers to cancel without choosing a reason.

**Step 11:** Click **Save** at the top of the page. Your retention flow is now live on the Customer Portal.

***

### How to track retention performance

Open the **Events** tab on the Cancellation flow page to monitor how well your flow is keeping subscribers.

**Step 1:** Review the four overview cards at the top — **MRR retained**, **Retention rate**, **Subscriptions retained**, and **Flow entries**. These metrics are calculated over the last 30 days and update automatically.

**Step 2:** Browse the events table below to see every cancellation attempt: the contract ID, the reason selected, the offer shown, and whether the subscription was retained or lost. Use the date range, result, and reason filters to narrow down what you need.

**Step 3:** Click **Export** in the top right to download the events as a CSV file for deeper analysis in your spreadsheet tool.

***

### Tips & best practices

* **Match each reason with a relevant action.** Subscribers respond better when the offer addresses their specific concern. Pair *"It's too expensive"* with a discount, *"Not the items I want"* with a swap, and *"I have more than I need"* with skip or change frequency.
* **Write messages with empathy.** Avoid pressure tactics. A line like *"We hear you — would 15% off your next two orders help?"* works better than *"Don't go!"*
* **Protect your margins with conditions.** Add a condition like *Total spent ≥ $500* to exclude high-value subscribers from discount offers — they're already loyal and don't need price incentives.
* **Use the discount cooldown.** A cooldown of 100 days or more prevents subscribers from repeatedly cancelling just to claim a discount.
* **Don't leave reasons without actions.** A reason with no actions only shows the message and a Cancel anyway button — make sure every reason has at least one retention offer where it makes sense.
* **Test your flow.** Click Cancel on a test subscription in your Customer Portal to make sure the experience feels natural before going live.

***

### Overall

Cancellation Flow transforms the moment a subscriber considers leaving into an opportunity to keep them — and to learn from those who do. By configuring thoughtful reasons, supportive messages, and well-matched retention actions, you can lower churn, recover revenue that would otherwise walk away, and build a feedback loop that helps you improve your subscription program over time. Start with the defaults, refine based on your Events data, and you'll see your retention numbers grow.

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.avada.io/joy-subscriptions/features/cancellation-flow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
