Skip to main content
Intempt
Coming soon

Save them before they cancel

Catches people who open the cancel flow but have not finished it, and answers the reason they gave with a pause, a downgrade, a discount or a call.

Authored by Intempt Technologies

Recipe curators

Agentic workflow

Coming soon

5 steps Blu runs end to end. It drafts a plan and nothing runs until you approve it.

  1. 1

    Catch cancel intent live

    Coming soon

    Blu builds a step

  2. 2

    Find who is halfway out

    Coming soon

    Blu builds a step

  3. 3

    Write one offer per reason

    Coming soon

    Blu builds a step

  4. 4

    Make one matched offer

    Coming soon

    Blu builds a step

  5. 5

    See which saves actually work

    Coming soon

    Blu builds a step

About this recipe

When to use it

Once cancellation is confirmed, most save offers are too late. This catches the user mid-flow, before they've clicked confirm, and calibrates the offer to their value and stated reason.

What it delivers

When a user starts the cancellation flow but hasn't completed it, fires a contextual save sequence - a pause offer, a downgrade offer, a retention discount, or a human handoff - calibrated by user value and stated cancel reason.

How you prompt this

Describe the outcome in your own words and Blu Agent maps it to this recipe, or run it by name. It drafts a plan first and nothing runs until you approve it.

Tell Blu Agent what you want

“Catches people who open the cancel flow but have not finished it, and answers the reason they gave with a pause, a downgrade, a discount or a call.”

recipe.md preview

Built from the published catalog. Blu Agent's full step prompts load in your workspace when you run it.

Sign up to read the full recipe.md and run it with Blu Agent.

Sign up to see the full recipe

Inputs & outputs

What the recipe needs before it runs, and what it leaves in your workspace.

Inputs

  1. Nothing declared beyond an Intempt workspace. Blu asks for anything else it needs as it goes.

Outputs

    How the recipe runs

    Blu follows the steps in order and shows you each one before anything goes live.

    1. 01Catch cancel intent liveCreate an AI-derived attribute 'cancel_intent_signal' on the User object. Computed in real-time. Inputs: (a) visited /cancel or /downgrade page in last 14 days; (b) clicked 'cancel subscription' button (which triggers cancel-modal not cancellation); (c) submitted cancel reason in cancel-flow form without confirming. Output: object with intent_level (browsing / interacting / committing), stated_reason if captured (price / unused / competitor / feature-gap / pause-needed / other), and timestamp. The signal expires after 7 days of no further activity.
    2. 02Find who is halfway outBuild a segment 'Cancel-intent active' capturing paying users where cancel_intent_signal.intent_level is 'interacting' or 'committing' AND subscription is still active (not yet cancelled, once cancelled, post-cancel-winback takes over). Excludes users on trial (different motion) and users who have already received a cancel-save offer in last 90 days (no spam). Use the result of "Catch cancel intent live".
    3. 03Write one offer per reasonThis step builds a designed marketing email (HTML). Generate branched save-offer content per cancel reason. (a) Price reason: offer 20% retention discount for 3 months OR downgrade-to-lighter-plan option; (b) Unused reason: offer 60-day pause OR a 1:1 onboarding call to drive activation; (c) Competitor reason: offer a 1:1 call with PM to address feature gaps + competitive comparison sheet; (d) Feature-gap reason: roadmap visibility for the specific missing feature + interim workaround; (e) Pause-needed reason: 1-click pause for up to 90 days (preserves data); (f) Other/no-reason: ask 'what would have made you stay?' + offer 1:1 call. Send-from: the customer's CSM if assigned, else success@ address. Use the result of "Catch cancel intent live", "Find who is halfway out".
    4. 04Make one matched offerBuild a branched journey triggered when cancel_intent_signal becomes 'interacting' or 'committing'. Branch on stated_reason: each user gets ONE save offer matched to their stated reason. Touch 1 (within 1 hour of intent signal): the matched save offer email. Touch 2 (Day 2, if no engagement): softer follow-up reinforcing the offer. For high-LTV customers (top 10% by ARR), additionally create urgent CSM task at intent detection: human save attempt parallel to email. Exit on: save_offer_accepted (recorded as retention_win event), Subscription canceled (proceed to post-cancel-winback), or 14-day timeout. Use the result of "Catch cancel intent live", "Find who is halfway out", "Write one offer per reason".
    5. 05See which saves actually workCompose a save-flow dashboard: cancel-intent volume by week, save rate (intent users who DON'T cancel within 30 days), save rate by stated reason (which save offers actually work), save rate by offer type (discount vs. pause vs. downgrade vs. 1:1 call: informs offer strategy), and ARR saved this quarter. Also surface: stated cancel reasons distribution (voice-of-customer for product/pricing teams) and cohorts where save attempts fail consistently (deep churn signal: those segments need product fixes, not save offers). Use the result of "Catch cancel intent live", "Find who is halfway out", "Write one offer per reason", "Make one matched offer".

    Install Intempt and run it

    1. 1

      Sign up

      Create a free Intempt workspace.

    2. 2

      Connect your data

      Add the sources this recipe reads from.

    3. 3

      Ask Blu

      Type /pre-cancellation-save in Blu once this recipe is live there.

    4. 4

      Review and approve

      Blu builds each step and waits for your OK before anything goes live.

    More recipes by Intempt Technologies

    Got a play worth sharing?

    Publish it to the Intempt Collective Marketplace and earn when other teams run it.

    Submit a recipe