Skip to main content

What Happens if a Customer Declines All Offers?

A
Written by Andreas H

When a customer reaches the offer step in your cancel flow, they can either accept a retention offer or turn it down. A declined offer is simply an offer the customer chooses not to take — and declining one (or every one) does not end the flow or cancel anything on its own. This article explains exactly what happens next, what gets recorded, and how your flow settings decide the final outcome.

Declining an offer doesn't cancel anything

When a customer declines an offer, churn.io records a Offer declined event for that session, but the session stays open. Nothing is cancelled at this point, and the customer's subscription is untouched. The flow simply moves the customer along to whatever step you placed next.

This is true even if the customer declines every offer you've configured. Declining offers never triggers a cancellation by itself — the customer still has to take a final action to either leave or stay.

What the customer sees next

After the offers, the customer continues through the remaining steps you've added to the flow. Depending on how you've built it, that can include:

  • A feedback step, where you ask the customer to share why they're leaving in their own words.

  • A cancellation step, which confirms the cancellation and shows your final message and button.

  • A goodbye step, shown once everything is complete.

At this point the customer has two real choices: go ahead and confirm the cancellation, or change their mind and keep their subscription.

If the customer confirms the cancellation

If the customer proceeds and confirms, the session is recorded with a Cancelled outcome and churn.io carries out the action you chose for that flow. Each flow uses one of these behaviours:

  • Cancel automatically — churn.io cancels the subscription directly in your connected billing account.

  • Send email — instead of cancelling automatically, churn.io emails the business owner a cancellation notification so your team can handle it.

  • Webhook only — churn.io notifies your own system at the webhook address you configured, leaving the actual cancellation to your application.

When the behaviour is Cancel automatically, the timing follows your flow's Cancellation timing setting — either At period end (the customer keeps access until their current billing period finishes) or Immediately.

⚠️ Cancel automatically needs your billing account connected

If a flow is set to Cancel automatically but your Stripe account isn't connected, the cancellation can't be carried out and the customer sees an error. Connect your billing integration before taking a flow live, or use Send email / Webhook only instead.

If the customer changes their mind

A customer can decline every offer and still decide to stay. If they back out of the flow — for example by closing the widget or choosing the "never mind" option — the session is recorded with a Dismissed outcome and their subscription is left exactly as it was. On the hosted cancel page they're sent back to where they came from.

💡 A declined offer is still useful data

Even when an offer is declined, the event is captured against the session. Over time this tells you which offers customers turn down most often, so you can refine your offers and improve your save rate.

How the outcome is recorded

Every cancellation attempt becomes a single session with one final outcome, so you can always see how a customer who declined offers ended up:

  • Saved — the customer accepted an offer and kept their subscription.

  • Cancelled — the customer declined the offers and confirmed the cancellation.

  • Dismissed — the customer backed out and stayed without accepting anything.

In short: declining offers keeps the flow moving but never cancels anything on its own. The customer's final decision — confirm or change their mind — is what determines whether the subscription is cancelled, and your flow's behaviour settings decide how that cancellation is handled.

Did this answer your question?