Stripe integration
Stripe churn and failed payment recovery, pay on success
Stripe Billing already retries failed payments, emails customers and updates expired cards, and Stripe says businesses using it recover 55% of failed payments on average. Winback starts where that stops: after the retries run out, and for customers who cancelled on purpose, which Stripe does not chase. It sends each one a personal message, adds an offer only within your limits, and charges 15% of the revenue from customers who come back, for 6 months.
What Stripe does for you already
Before you add any tool, switch on what you already pay for. Stripe Billing includes Smart Retries (it picks retry times for failed renewals), failed payment emails, automatic card updates when a bank issues a new card number, and no-code automations for simple follow-ups. Stripe publishes these numbers about its own product:
| Number | Value | Source | Checked on |
|---|---|---|---|
| Average share of failed payments recovered by businesses using Stripe | 55% | stripe.com/billing (vendor) | 17 Oct 2026 |
| Failed payments recovered across Stripe in 2025 | $8.2B | stripe.com/billing (vendor) | 17 Oct 2026 |
| Recovered per $1 spent, 2025 | $14 | stripe.com/billing (vendor) | 17 Oct 2026 |
| Median attempted recovery rate, 119 US B2B SaaS customers, May 2026 | 12.7% | Baremetrics (vendor) | 17 Oct 2026 |
| Average involuntary churn, Recurly network, July 2026 | 1.25% | Recurly (vendor) | 17 Oct 2026 |
| Average voluntary churn, Recurly network, July 2026 | 2.34% | Recurly (vendor) | 17 Oct 2026 |
These are vendor numbers about each vendor's own customers. They measure different things, so do not add them together. Recurly also says nearly 1 in 4 new subscriptions comes from a previously cancelled customer (Recurly).
Two points stand out. First, failed payments are a real but smaller share of churn: in Recurly's July 2026 data, voluntary churn (2.34%) is almost double involuntary churn (1.25%). Second, the people who cancelled on purpose are the ones nobody follows up with. Stripe's tools are built for payments that failed, not for a person who clicked cancel.
Where Winback starts
Winback does not replace Smart Retries. Keep them on. Winback picks up three groups:
- Billing failed, retries finished. The subscription moved to cancelled or unpaid after Stripe's last attempt. Winback sends a plain note from you, with a link to update the card. No discount, because they did not choose to leave.
- Cancelled on purpose. Winback writes a message that refers to what the customer actually used, and asks one question. It adds an offer only if your limits allow it for that person.
- Trial ended without a card. A short note about the thing they tried, with a trial offer only if you allow one. See winning back expired trials.
Stripe events Winback reads
| Stripe event | What it means | What Winback does |
|---|---|---|
| invoice.payment_failed | A renewal charge failed. Stripe will retry on your schedule. | Notes it and waits. Nothing is sent while Stripe is still retrying. |
| customer.subscription.updated | Status changed, for example to past due or unpaid, or cancel at period end was set. | Starts the clock for a cancelled or billing-failed message. |
| customer.subscription.deleted | The subscription ended, after a cancel, after failed retries, or after a trial with no payment method. | Sorts the person into a segment and writes their message. |
| invoice.paid | The customer paid. | If they had a message, checks the return code or customer id and counts the return. |
Event names from Stripe's API reference. How a trial ends without a card depends on your trial settings in Stripe.
You create any coupon or promotion code yourself in Stripe. Winback does not create, change or cancel anything in your Stripe account.
How the pricing works, with an example
No monthly fee. 15% of the revenue from customers who come back, for 6 months from their return. A return counts when the customer uses their unique return code, or the same Stripe customer id subscribes again within 60 days of the message.
| Illustration | Value |
|---|---|
| Customers who come back after a message | 30 |
| Plan price | $20 / month |
| Months each one pays in the 6-month window | 6 |
| Revenue from returners | $3,600 |
| Winback fee at 15% | $540 |
| You keep | $3,060 |
Illustration only, not a result. If a returner cancels again after 2 months, the fee covers only those 2 months. Full rules on the pricing page. Try your own numbers in the revenue calculator.
Is there churn software that only charges when it recovers revenue?
Yes, a few, and the pricing basis matters more than the headline. Here is how the tools a Stripe founder usually compares are priced, as listed on their own sites:
| Tool | Pricing basis | Source |
|---|---|---|
| Churnkey | Flat. Starter $250/mo billed yearly or $300 monthly; Core from $500/$600 | churnkey.co |
| Churn Buster | Flat. Dunning or Cancel Flows from $269/mo, both $430/mo, no share of recovered revenue | churnbuster.io |
| FlyCode | Charges only on recovered revenue above a baseline, no seats or setup fee | flycode.com |
| Stripe native | Included with Stripe Billing | stripe.com/billing |
| Winback | No monthly fee. 15% of revenue from returners for 6 months | this site |
Prices checked 17 Oct 2026. A fuller comparison is on Winback vs Churnkey.
Churnkey and Churn Buster are mature products with cancel flows that run inside your web app. Winback has no cancel flow. If most of your churn happens on a web cancel page and you have the volume to justify a flat fee, those tools may suit you better.
Setup during early access
- Export subscriptions from Stripe and drop the file into the planner. It runs in your browser and uploads nothing.
- Add the webhook endpoint we give you, subscribed to the four events above.
- Set your limits: largest discount, offers per person, wait between offers.
- Read and approve the first batch of messages before anything is sent.
FAQ
Should I turn off Stripe Smart Retries if I use Winback?
No. Keep Smart Retries, failed payment emails and card updates on. Winback waits until Stripe has finished retrying, so it does not compete with them or message someone whose card is about to work.
Does Winback need write access to my Stripe account?
No. It reads webhook events. It does not create coupons, change subscriptions or issue refunds. If an offer needs a coupon, you create it in Stripe.
Do I pay a fee on customers Stripe recovers on its own?
No. A return counts only if the customer uses their Winback return code, or the same Stripe customer id subscribes again within 60 days after a Winback message. Payments Stripe recovers during retries are never counted.
Does it work with Stripe Billing for a mobile app's web checkout?
Yes. If your app sells on the web through Stripe Billing, directly or through RevenueCat Web, Winback reads the same Stripe events.
Who is behind Winback?
AGUNA Wellness Ltd (RC 9590421), a small company in Abuja, Nigeria. We run Winback on our own subscription app, AGUNA, first. Winback is new and has no customer results to publish yet.
See who you could win back this month
Upload a RevenueCat or Stripe export to the planner. It sorts lost subscribers into cancelled, billing failed and trial expired, writes one message per person with a unique return code, and gives you a CSV. Files stay in your browser. Want us to set it up with you instead? Early access is open, and you pay nothing until someone comes back.