A discount offer is a retention offer that gives a customer a percentage off their bill when they try to cancel. Instead of losing the subscription, your cancel flow can present a discount, and if the customer accepts, churn.io applies it to their subscription automatically. This article walks you through adding and configuring a discount offer inside your cancel flow.
⚠️ Connect Stripe first
Discount offers are applied through your connected Stripe account. Make sure Stripe is connected under Integrations before taking a flow live, otherwise accepted offers cannot be applied.
Adding a discount offer
Discount offers live inside a flow's Offers section. Each offer you add shows up to your customer in order: if they decline the first offer, they see the next.
Open your flow in the flow builder and go to the Offers section.
On the Default offers tab, click Add offer.
Choose Discount from the list of offer types.
The new offer appears in the list. Click it to expand and configure the details below.
💡 Tip
We recommend offering 2-3 offers for the best results. You can drag offers up or down to change the order they're shown in.
Step 1: Write the headline and subtext
At the top of every offer you'll set the copy your customer sees:
Headline — the main line, up to 60 characters (for example, "Special offer").
Subtext — a short supporting line, up to 120 characters.
If you leave these blank, churn.io uses sensible default copy.
Step 2: Choose the coupon source
A discount offer can either create the coupon for you or use a coupon that already exists in your Stripe account. Pick one:
Auto-create — churn.io builds the discount from the percentage and duration you set. When a customer accepts, the matching coupon is created in Stripe, applied to their subscription, and then cleaned up automatically.
Use existing coupon — pick one of the coupons already set up in your Stripe account. churn.io reads your coupons and shows their amount or percentage off in the picker, so you can reuse pricing you've already configured.
⚠️ Existing coupons need Stripe
The Use existing coupon option loads coupons directly from your Stripe account. If Stripe isn't connected yet, you'll see a prompt to connect it, and the coupon list will stay empty until you do.
Step 3: Set the amount and duration (Auto-create)
If you chose Auto-create, configure how big the discount is and how long it lasts.
Discount amount — drag the slider to set the percentage off, anywhere from 5% to 100% in steps of 5%. The default is 20%.
Duration — choose how long the discount applies:
Once — applied to a single billing cycle only.
Recurring — applied for a set number of months. After selecting this, pick 1 month, 2 months, or 3 months.
Forever — applied to every future bill for as long as the customer stays subscribed.
💡 Tip
Leaving the discount at 0% triggers an "Action needed" warning on the offer. Set a real amount before going live so the offer is worth accepting.
Step 3 (alternative): Choose an existing coupon
If you chose Use existing coupon, open the Stripe coupon dropdown and select the coupon you want to offer. Each entry shows the coupon's name along with its percentage or amount off. churn.io fills in the matching duration based on how that coupon is set up in Stripe.
You must pick a coupon to finish configuring the offer — leaving it empty shows an "Action needed" warning.
What happens when a customer accepts
When a customer reaches the discount offer in your cancel flow and accepts it, churn.io applies the discount straight to their subscription in your connected Stripe account, so they keep their plan at the reduced price. There's no manual step on your side. If the customer declines, they continue through the rest of your flow.
Saving and going live
Discount offers take effect once the flow that contains them is saved and live. Finish editing your offers, save the flow, and take it live from the flow builder. Until then, the discount won't be shown to your customers.
