Retention Offers
Retention offers are the incentives Windback shows to customers during the Cancel Flow. Each cancellation reason can have its own offer, so the customer sees something relevant to why they want to leave.How Offer Matching Works
When a customer submits a cancellation reason through the Cancel Flow, Windback looks up the retention offer configured for that reason. If an active offer exists, it is returned in the API response for your app to display. If no offer is configured (or the offer is inactive), the response returnsoffer: null and the cancellation proceeds without an intervention.
Offer Types
Windback supports five offer types:Offer Fields
Dashboard Configuration
You can configure retention offers in the dashboard without writing any code:- Go to Settings > Retention Offers in your project.
- Each cancellation reason is listed with its current offer (or “No offer configured”).
- Click a reason to create or edit its offer.
- Toggle
is_activeto enable or disable an offer without deleting it.
API Endpoints
List All Retention Offers
Create or Update an Offer
The
:reason path parameter must be one of the eight standard cancel reasons (e.g., too_expensive, missing_features). See the Cancel Flow docs for the full list.Delete an Offer
204 No Content on success. After deletion, customers who cancel with this reason will not see an offer.
Example Configuration
Here is a recommended offer for each cancellation reason:too_expensive
too_expensive
missing_features
missing_features
switched_to_competitor
switched_to_competitor
not_using_enough
not_using_enough
technical_issues
technical_issues
bad_support
bad_support
temporary_pause
temporary_pause
other
other
Best Practices
Analytics
Retention offer analytics — including acceptance rates, revenue saved per reason, and A/B test results — are coming soon. Today you can view offer outcomes in the Cancel Flow event log in the dashboard.