> For the complete documentation index, see [llms.txt](https://docs.peakcommerce.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.peakcommerce.com/product/rules-and-customizations/rules-overview/reason-based-retention-routing.md).

# Reason-Based Retention Routing

When a customer starts to cancel, the reason they give is your best signal for how to keep them — a price objection wants a discount, a technical problem wants support, someone who's genuinely done should move straight to cancel. **Reason-based routing** sends each cancellation reason to the step most likely to save that customer.

{% embed url="<https://youtu.be/x_X_zm0V2oA>" %}

**Where to find it**

In a cancellation journey, open the **Reason** step, then **Reasons & Routing**. The reason is captured to `cancellationReason` and recorded for analytics regardless of where it routes.

**Route each reason to the right save**

1. In the journey editor, expand the **Reason** (survey) step and select **Edit reasons & routing**.
2. By default the step is in **All reasons → one step** mode: every reason takes the same path.
3. Switch to **Route by reason**. Each cancellation reason gets its own **Routes to step** dropdown.
4. Point each reason at the step that fits it. Because **a step is the offer** (its page links a discount), routing a reason to an offer step *is* choosing its save. Reasons you don't route take the **default route**.
5. **Save changes.**

**Why it works**

* There's no separate "offer" object to manage — an offer **is a step**, so you design how it looks in the page editor and route reasons to it here.
* Every reason is still written to `cancellationReason` and recorded to `cancellation_reason_events`, so analytics keep reporting consistently no matter how routing changes.
* Rows you disable, or reasons not listed, fall back to the default route — nothing dead-ends.

> **Tip:** Green options in the routing dropdown are **offer steps**. Send price-sensitive reasons to a discount offer, and route reasons a discount won't fix (technical issues, "no longer needed") to support or straight to confirmation.

**Learn more:** [Rules Overview](/product/rules-and-customizations/rules-overview.md) · [Targeting with Audiences](/product/rules-and-customizations/rules-overview/targeting-with-audiences.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.peakcommerce.com/product/rules-and-customizations/rules-overview/reason-based-retention-routing.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
