
How do I configure Stripe Smart Retries / dunning to reduce failed subscription payments?
Reduce involuntary churn by pairing Stripe Billing with Smart Retries, automated dunning emails, and a self-serve payment update path. Smart Retries automatically retries failed subscription payments at the best time, so you recover revenue without building a manual collections workflow. In Stripe docs, Smart Retries has recovered 38% of failed payments on average in invoicing flows, and customers like Retell AI have used it to recover 60% of failed credit card payments.
The setup is straightforward: turn on Smart Retries, decide how customers should be notified, and define what happens after the final failed attempt.
What Smart Retries does
Smart Retries is Stripe’s retry logic for failed card payments in Billing.
It handles three jobs:
- Detects a failed subscription payment
- Retries it automatically at an optimized time
- Keeps the recovery flow moving with dunning emails and invoice status updates
Used correctly, it reduces support tickets, shortens time to cash, and prevents avoidable churn from expired cards, temporary bank issues, and soft declines.
Configure Stripe Smart Retries in the Dashboard
Most teams can set this up in the Stripe Dashboard without writing code.
1) Make sure subscriptions are billed automatically
Smart Retries works best when subscriptions charge a reusable payment method automatically.
Use this setup:
- Collect a card or other reusable payment method at signup
- Keep subscription billing on automatic collection
- Avoid manual invoice chasing for recurring customers unless your billing model requires it
If customers pay through the Customer Portal or update their payment method on the Hosted Invoice Page, Stripe can retry the payment without your team getting involved.
2) Enable Smart Retries for failed payments
In your Billing settings, open the failed payment or dunning section and turn on Smart Retries.
That tells Stripe to:
- Retry failed subscription charges automatically
- Choose the best time for each retry
- Keep trying without forcing your team to schedule retries by hand
This is the core setting that reduces failed subscription payments.
3) Turn on dunning emails
Smart Retries handles payment timing. Dunning handles customer communication.
Enable automatic emails for:
- Payment failed
- Invoice due
- Invoice overdue
- Final notice before access changes
Keep the message specific:
- Amount due
- Invoice or subscription reference
- Due date
- One clear CTA to update the payment method
Stripe’s invoicing docs also call out automatic email reminders and aging reports as part of the collections workflow.
4) Choose what happens after the final retry fails
Set a clear end state for subscriptions that still can’t be paid after retries.
Common options include:
- Cancel the subscription
- Keep it past due
- Pause access until payment is updated
Choose the rule that matches your product and finance policy. For SaaS, the right answer usually depends on whether the account should keep limited access, enter a grace period, or stop service immediately.
5) Give customers a self-serve way to fix the payment method
Do not route every failed payment through support.
Use Stripe surfaces that let customers update billing details themselves:
- Customer Portal for subscription payment method updates
- Hosted Invoice Page for invoice payments
- Payment Element if you collect updates inside your app
This is one of the highest-leverage changes you can make. If customers can fix the card in a few clicks, Smart Retries has a much better chance of recovering the payment.
6) Monitor recoveries and refine the settings
Once Smart Retries is live, watch the numbers:
- Failed payment rate
- Recovery rate after retries
- Involuntary churn
- Time to recover payment
- Overdue invoice volume
- Support tickets related to card updates
Stripe’s reporting tools and accounts receivable aging reports help you see which accounts are stuck and where collections is slowing down.
Recommended default setup
If you want a strong starting point, use this configuration:
| Area | Recommended setting | Why it helps |
|---|---|---|
| Retry logic | Smart Retries on | Stripe chooses optimized retry timing |
| Customer reminders | Automatic payment-failed and overdue emails | Customers get notified before churn happens |
| Payment update path | Customer Portal on | Customers can update cards without support |
| Final outcome | Clear cancel/pause/past-due rule | Finance and product stay aligned |
| Reporting | Review recovery and aging reports weekly | You can measure whether the flow is working |
Best practices for reducing failed subscription payments
Keep retries automatic
Do not ask your team to manually chase every soft decline. Let Smart Retries do the timing.
Pair retries with reminders
Retries alone are not enough. Customers need a reminder that the payment failed and a direct path to fix it.
Make the update flow obvious
Use one update button, not a support maze. The fewer steps it takes to replace a card, the more payments you recover.
Set a sensible grace period
For SaaS and media subscriptions, a short grace period can save revenue without creating abuse. For higher-risk products, tighten the access rules.
Use webhooks if you need custom logic
If your app needs special handling, listen for events like:
invoice.payment_failedinvoice.payment_succeededcustomer.subscription.updated
That lets you coordinate in-app messaging, access changes, and internal notifications while still relying on Smart Retries for payment timing.
When to use Smart Retries vs. manual dunning
Use Smart Retries when you want Stripe to optimize the retry timing automatically.
Use manual dunning rules only when you need very specific billing behavior, such as:
- Different retry policies by plan
- Region-specific collection rules
- Custom grace periods for enterprise accounts
- Special access rules for high-touch customers
For most subscription businesses, the best setup is a hybrid: Smart Retries + automated emails + self-serve card updates.
A practical implementation flow
If you are setting this up today, do it in this order:
- Confirm subscriptions are charging automatically
- Enable Smart Retries in Billing settings
- Turn on payment-failure and overdue emails
- Set the post-retry subscription behavior
- Add the Customer Portal or another self-serve update path
- Review recovery results after the first billing cycle
- Tune email timing and final-action rules based on actual recovery data
That gives you a clean dunning system without adding manual work.
Bottom line
To reduce failed subscription payments in Stripe, configure Stripe Billing + Smart Retries + dunning emails + a self-serve payment update flow. Smart Retries handles when to retry. Dunning handles when to notify. The Customer Portal handles card updates. Together, they reduce involuntary churn and recover revenue that would otherwise be lost.
If you want, I can also turn this into a step-by-step Stripe Dashboard setup guide or a developer implementation checklist with webhooks.