WIN-BACKPADDLE

How to win back canceled customers on Paddle

How to win back canceled Paddle Billing customers: why canceled subscriptions cannot be reinstated, the returning-customer transaction, discounts and timing.

Published 5 min read

Customers who cancelled once already know your product, have been through your checkout and have told you, at least roughly, why they left. With the right message at the right time, some of them come back. On Paddle Billing, bringing them back has one technical rule that shapes everything else: a canceled subscription cannot be reinstated.

This guide explains what Paddle allows, how to build a clean path for returning customers, how to use discounts without training people to cancel, and how to time the messages. It sticks to Paddle’s documentation: cancel a subscription, subscription cancellation, Cancellation Flows, the discounts API reference, the help article on reactivations and testing Retain (all accessed November 2026).

What Paddle allows after a cancellation

Paddle’s cancel guide is direct: canceled subscriptions cannot be reinstated. If a customer who cancelled wants to return, you create a new subscription for them.

Two details matter for timing:

  • Active subscriptions cancel at the end of the period by default. Until then, the cancellation is a scheduled change, and the customer still has access. Paddle’s cancellation lifecycle page notes that canceled_at stays empty until the cancellation is processed.
  • Paused subscriptions cancel immediately. Paddle’s Cancellation Flows docs say so explicitly.

The window between a scheduled cancellation and its effective date is your easiest save. Removing a scheduled change keeps the subscription alive without any new checkout. A reminder a few days before the end date, with one click to stay, costs almost nothing.

The returning-customer transaction

Paddle’s cancel guide walks through bringing a customer back:

  1. List the customer’s subscriptions and find the canceled one.
  2. Copy its items: price IDs and quantities, plus the related customer, address and business details.
  3. Create a transaction with a POST to /transactions using those items.
  4. Send the customer to checkout, either with the transaction’s checkout.url or by opening Paddle.js with the transaction ID.

When the customer pays, Paddle creates a new subscription.

The lifecycle page suggests building this into your app: when a customer with a canceled subscription logs in, create the transaction from their previous subscription and show a “Restart your plan” button. That turns every login by a former customer into a one-click return, with no form to fill in.

Keep the same customer

Use the same Paddle customer for the new transaction. Paddle’s help article on reactivations says a customer counts as reactivated in its metrics only if they keep the same customer ID. A new customer record turns a win-back into a “new customer” in your reports, and inflates both acquisition and churn.

Retain Reactivations

Paddle Retain also has a feature called Reactivations. Paddle’s Retain testing page notes that Reactivations are not available for every billing platform Retain supports, and that you can simulate them on a page where Retain is installed. Check in your dashboard whether it applies to your account before you plan around it.

Know why they left

Win-back works when the message answers the reason. Collect it at the moment of cancellation.

If you use Paddle Retain, Cancellation Flows run a short survey when a customer tries to cancel, then make an offer to stay, such as a pause, a plan switch or a temporary discount. Paddle’s 2026 changelog says these flows also appear in the Paddle customer portal.

If you build your own cancel flow, store the reason and any free text on your side, linked to the customer and subscription. Record which offer was shown and refused. Someone who turned down a 20% discount while cancelling is unlikely to accept the same 20% a month later.

Plan the sequence

When Who Message
Before the effective date Scheduled cancellations End date reminder, one click to keep the plan
Day 30 Voluntary cancellations What changed, tied to their reason
Day 60 No return yet A specific offer, where the reason was price
Day 90 No return yet A short last note and an easy unsubscribe

By reason:

  1. Price: a cheaper plan or a limited discount on return.
  2. Missing features: wait until you ship what they asked for, then tell them.
  3. Not using it: offer help, a guide or a short call, not money.
  4. Switched to another tool: ask what it does better. Use the answer even if they never return.
  5. Bad experience: apologize specifically and say what you fixed.

More examples are in our win-back email examples.

Using Paddle discounts for win-back

Paddle discounts can be added to the returning-customer transaction. A few fields matter:

  • recur: whether the discount applies over several billing periods. The default is false, so a discount applies once unless you set it.
  • maximum_recurring_intervals: how many periods a recurring discount lasts. Paddle’s reference wording around this field has varied, so test the behavior in sandbox before you promise “3 months off” in an email.
  • On a subscription, the discount object shows when it stops applying: the last billing period for a capped discount, or empty if it recurs forever.

Practical rules:

  1. Prefer short discounts. A first-period or three-period discount is enough to make a return feel worthwhile.
  2. Avoid permanent win-back discounts. They teach customers that cancelling gets a better price.
  3. Use a dedicated code or a discount applied to the transaction. Keep win-back discounts separate from acquisition discounts so you can measure them.
  4. Set an expiry. “This offer ends on [date]” is honest and helps people decide.

Payment details

The payment method a customer used months ago may have expired. Because the returning-customer flow goes through checkout, the customer confirms or enters payment details there. That is a feature, not friction: it avoids a failed first renewal.

Measure the results

Track, per cancellation month:

  • Customers who returned within 90 days, on which plan, and with which discount.
  • Return rate by cancellation reason.
  • How long returning customers stay the second time.

Count returns only when they are on the same customer ID, matching Paddle’s own definition of a reactivation. For the base metrics, see how to calculate churn rate.

Doing this with NoChurn

NoChurn reads cancellations from Paddle, collects reasons through its cancel flow (hosted or headless, one-click cancel always visible), and sends win-back emails at day 30, 60 and 90 based on the reason. The returning customer pays through Paddle checkout, and Paddle stays the merchant of record. You can add your own customer data by API, and the churn score from 0 to 100 shows which former customers are worth a personal note. See NoChurn + Paddle.

PROMPT

Read https://www.nochurn.sh/llms.txt,
then follow https://www.nochurn.sh/docs/quickstart/
to add NoChurn to this app. Use a test key
(nc_test_…) until I say we go live.

Stop leaking revenue.

  • Free until $300 MRR
  • No card needed
  • Live in 10 minutes
  • Never a cut of what we recover