In this article
- What "best" means in dunning
- Measure before you optimize
- Benchmarks, and what they're for
- Eight mistakes that cost more than any optimization gains
- Retry optimization isn't the answer everyone wants
- How to read results without fooling yourself
- Analysis with AI
- A fundamentally sound dunning setup
- FAQs
Dunning Best Practices: Protect the Downside Before You Chase Gains
Dunning is the process of recovering a failed subscription payment, through retries on the card on file and messages that ask the customer to update it. The best practices below come from the 50+ million failed payments we've handled since 2013.
Every account has a recovery ceiling, with diminishing returns for improvement. The losses from a bad setup happen quietly, in the background, with costs that compound for weeks or months before you notice them. So dunning best practices are all about minimizing avoidable mistakes, measured in a way that tells you the truth, until you've reached your recovery ceiling and can stay there over the long term.
On this page
- What "best" means in dunning
- Measure before you optimize
- Benchmarks, and what they're for
- Eight mistakes that cost more than any optimization gains
- Retry optimization isn't the answer everyone wants
- How to read results without fooling yourself
- Analysis with AI
- A fundamentally sound dunning setup
- FAQs
What "best" means in dunning
The math of which customers failed payment, and why, will set the recovery ceiling (or recoverable percentage) of your dunning. Software and hard work will help you reach that ceiling without defining what it is. Some customers will update their payment method if you find a way to reach them and make it easy to do so. Some have a card that will clear with enough persistence with retrying the payment. Some have left and will never respond. The first two groups set your ceiling.
A well run dunning process can reach this ceiling, and the work of getting there is many small decisions done right. The downside is harder to measure. Retry too often and your approval rates fall on good payments, not only the failing ones. Email too often and customers mark you as spam, which hurts inbox placement for the recovery emails that would have converted. Count outcomes the wrong way and you'll make decisions based on a number that was never true.
And a 3 to 4 week campaign means a change made today takes about two months to show up in complete data, so you discover even the biggest mistakes on a delay.
Measure before you optimize
Every failed payment ends in one of four outcomes. Card update and successful retry are the wins. Cancellation and passive churn are both losses. All four belong in the denominator, including the cancellations, because the campaign itself can cause some of them (premature emails or frustrating UX during card updates can contribute to this). And it's impossible to know which customers churned voluntarily who would have otherwise passively churned. Pull those out of the math and the rate goes up while the business gets worse.
A campaign belongs to the cohort of the day it started, and that day has no recovery rate until every campaign in it has resolved. A rate taken while campaigns are still running will keep changing as campaigns finish, and it will usually appear low until they do.
The four outcomes and daily cohorts have the definitions.
Benchmarks, and what they're for
There is no specific industry number to aim at.
Price point, billing cycle, acquisition channel, and product category move a recovery rate as much as best dunning practices do, so a figure from another company won't offer much direct guidance for yours.
A rate that is outside the realistic range points at something structural, such as a broken card update page, a campaign that ends too early, or maybe a deliverability problem. Inside the range, the benchmark tells you nothing about what to do next with your dunning process. That said, there are aspects of higher performing businesses yours could look to emulate with factors outside of dunning, to achieve those higher recovery rates. This could include modifying the introductory promotions being run to encourage subscriptions, or improving customer satisfaction with the product or service itself.
Your historical baseline is a benchmark that matters, and to serve as a directional guide, it has to exist before you change anything. Native recovery analytics usually disappear when you switch a native flow off, so be sure to have access to that data, as an export or a read only connection. Proving a lift covers how.
Eight mistakes that cost more than any optimization gains
1. Retrying past the point of diminished return
Card networks limit how often you can retry a declined card, and a permanent decline should be retried only in the right circumstances. Forcing hard declines through on a fixed schedule drags down approval rates on your good payments, and the processor can flag the account. The best practice is a retry schedule that responds to the decline. Soft declines such as insufficient funds get front loaded retries before customer outreach begins. Hard declines get few or none, so the customer hears from you sooner. If your processor marks a charge do-not-retry, skip it. Failure reasons covers the decline codes and how far you can trust them.
2. Sending one email per retry
Many platform defaults send a message every time a retry fails, and skipping a retry skips the message, too. This makes it impossible to tune retries and emails independently of each other, which leads to either over emailing, or under retrying. Schedule messages on their own timeline, apart from retries. Often 10%+ of failed payments resolve before anyone contacts the customer, so the first days of a campaign can run quietly, with the first message going only to those customers whose payment didn't clear.
3. Treating deliverability as someone else's problem
Dunning email is transactional, and it fails silently. Missing DKIM or DMARC alignment, link tracking that hampers deliverability, or a marketing provider sending these emails can put full campaigns in spam for weeks before anyone notices, because the symptom is a recovery rate that drifts down on a delay. And even this depends on someone tasked with checking on dunning performance regularly (many teams operate without much oversight here). Send from an authenticated domain through a transactional provider, keep links minimal, and watch open rates per message, not only in aggregate.
4. A card update page that leaks
Every message points at one page, and a lot can go wrong there. A page that isn't designed responsively for mobile, asks for more than the new card, gets blocked by a popup, or doesn't save the card to the correct subscription will gradually underperform as frustrated customers give up on card updates. On platforms that allow it, charge the new card at once so the campaign closes on the update. For physical goods, confirm the customer can adjust the order before billing, and provide additional instructions if they need to take action to confirm the order. Test these pages routinely, because they will break when you're not looking after a customer portal update or code change.
5. Campaigns that never end, or end too soon
A campaign that runs forever on repeat, reattempting monthly payments without success, keeps charging a dead card and emailing a customer who will never update, and both habits damage the reputations your good customers depend on. A campaign that ends on day 7 misses the customers who would have updated on day 12. Standard eCommerce campaigns run several weeks. Check what your platform does at the end of one, because some defaults never register a failed subscription as churned. Campaign length covers how to approach the length of your dunning campaigns by business model.
6. Warning customers about failures that won't happen
Pre-dunning sends an email (or several) before an upcoming subscription payment because a card is about to expire. Card updater services now refresh most expiring cards before the payment attempt, so most of those notices warn a customer about a failure that never would have happened. In the best cases, this is a needless, negative touchpoint for a customer. And in the worst cases, pre-dunning can increase cancellations with a poorly timed (and nonexistent) billing issue. Wait to verify a payment failure, retry the payment quietly, then contact the customers who need to take action to keep their subscription.
7. Setting it up once
Links break. Processor APIs change. Decline codes change. A platform update changes which events fire. A customer updates a card, the new card fails, and nobody retries.
Put alerts on the failure modes you can detect, give one person on your team responsibility for monitoring them, and walk the full customer path once a quarter.
8. Reading calendar months as results
Measuring results from January 1 to January 31 will tell you one performance story. January 15 to February 14 can tell the opposite story about the same business, with the same dunning process. Comparing one month to the last, or one tool's month to another's, measures random variance as often as it measures a change. Measuring daily cohorts with rolling analysis is a great way to smooth out this natural variance.
Retry optimization isn't the answer everyone wants
Retry wins feel magical because they recover payments with no customer action, and most tools sell a smarter schedule. But the question most teams ask, whether a retry at 2pm Tuesday beats one at 9am Wednesday, has no answer. The alternate charge never ran, so there's nothing to compare it to.
Retry timing has diminishing returns as an optimization target, and attention spent there is a distraction from more important work that does move a rate.
That work focuses on deliverability, decline handling, campaign length, and the card update experience. The most effective retry strategy is more programmatic than it is "smart." On platforms that run their own retries, time messages around them and close the campaign when one succeeds.
The same holds for copy. Transactional email has a narrow range for what good looks like. Again, it's more impactful to avoid losses than it is to chase gains, opposite of how you might approach a marketing email. Keep your emails on-brand, clearly worded, and trustworthy, and you'll be close to maximizing how effective they can be.
An A/B test that runs long enough and stays flat means you're inside the band, and the finding is to go with whichever best supports your brand, and stop spending attention there. About half of these tests produce a lift, and half stay even.
How to read results without fooling yourself
Track the rate on rolling windows of 30 to 45 days instead of calendar months. Rolling analysis sums every possible window of that length and plots them in sequence, so a spike on one day doesn't become a trend, and the arbitrary beginning and end of a month doesn't hide one.
Then learn your variance range. A typical account swings 20 to 30 points between its best and worst rolling window over a multiyear history, with no change in process. Segmenting by plan, tenure, or decline type narrows the range and turns noise into data you can act on.
Sample size, seasonality, acquisition quality, and price changes all move the rate for reasons that have nothing to do with recovery.
Every daily rate should track back to a row you can export and use to run independent analysis. Rolling analysis, natural variance, and comparing recovery rates cover this in more detail, and rejected practices lists the measurement shortcuts to avoid.
Analysis with AI
The methodology above is hard to code in a spreadsheet, and can be oversimplified in a dashboard. An AI assistant connected to your recovery data can perform deep analysis, especially when the rules live in the tool rather than relying on prompts alone. Churn Buster's MCP connects Claude, ChatGPT, and other assistants to your account's analytics. You ask in plain language, and the answer uses complete periods only, counts every outcome, states the sample size, and checks your normal range before drawing conclusions.
Ask "did recovery drop last month" and your dashboard says "yes, absolutely." A more disciplined answer says, for example, that the last nine days haven't resolved and the completed cohorts are inside your normal range, so there's no outcome to act on yet. MCP setup and scope are in our documentation.
A fundamentally sound dunning setup
- All four outcomes tracked, cancellations included.
- No rate published until the cohort completes.
- A historical baseline on record before any tool or process change.
- Retries that respond to the decline code, without exceeding network limits.
- Messages scheduled independently from retries, with a quiet period for temporary declines.
- Authenticated transactional sending, minimal links, deliverability monitored.
- A card update page tested on mobile, that saves the card to the right subscription.
- A campaign length appropriate for the brand, recognizing churn at the end.
- No pre-dunning on expiring cards.
- Alerts for background mistakes, monitored by a single owner.
- Quarterly review of the customer experience when failing payment.
- Rolling windows, a known variance range, and complete data you can export.
Where Churn Buster fits
Churn Buster is a subscription retention software company that recovers failed payments and prevents cancellations for subscription eCommerce and SaaS businesses. It sells two products, Dunning (failed payment recovery) and Cancel Flows (cancellation prevention), on their own or together. Founded in 2013 and based in San Diego, it connects to 17 subscription platforms, including Stripe, Braintree, Recharge, Loop, and Skio.
Dunning schedules retries and messages separately, and Adaptive Campaigns adjust retry timing to the decline type. Rolling Analysis tracks four outcomes for every failed payment (card update, successful retry, cancellation, passive churn), and only counts a daily cohort once every campaign in it has finished. All data is visible and exportable to run independent analysis as needed. The Churn Buster MCP reads the numbers with you and shows what the data points to. Our team tells you when you've reached your ceiling, advises next steps, and watches for costly background mistakes.
Pricing starts at $269/mo for Dunning or Cancel Flows and $430/mo for both, which covers up to $150k MRR. Above that, a flat fee set by MRR tier, month to month, with no share of recovered revenue. See Dunning or see pricing.
FAQs
What are dunning best practices?
Track all four outcomes, measure on complete cohorts, retry within network limits, schedule messages independently from retries, monitor deliverability, keep the card update experience simple, run long enough campaigns that recognize churn at the right time, and track results on rolling windows against your variance range.
What's a good recovery rate?
It depends on price point, billing cycle, and who your customers are, so a number from another business won't say much about yours. Compare against your baseline on complete cohorts, and use the realistic range to spot any structural problems.
How many times should you retry a failed payment?
Enough to clear the soft declines, exercising caution with permanent declines. Card networks limit how many times you can retry a declined card, and going past that hurts approval rates on your good payments.
How many dunning emails should you send?
It's often best to let the first days run quietly, then message on a schedule that doesn't trigger a message with every retry. If a customer hasn't acted after several messages, escalate to SMS, or a personal note from support, or a last chance offer that grabs a customer's attention and prompts a card update.
Should I optimize retry timing?
If you truly enjoy it. But don't pay for excessive retry optimization hoping to find a measurable result. You can't measure whether one retry is more effective than one an hour later, because the second charge never ran. With misaligned incentives in place, a tool may play the game of attempting to race in front of your next retry to take credit (or a commission) for the result. It's more productive to focus on deliverability, decline handling, campaign length, the card update experience, and other fundamentals.
How long until I can tell if a change worked?
One full campaign length after the change, plus enough days to fill a rolling window. For a 30 day campaign, expect about two months before the data says anything meaningful. Longer for a before and after dunning process comparison, and always measure new data against your recent variance range, not only the previous month.
Got a churn problem worth solving? Book a call with our team.