Dunning email templates for failed subscription payments
A dunning email has one job: get a customer who wants to keep paying to fix a payment in under a minute. It is not a reminder of their debt, and it is not a marketing message. Below is a four-email sequence you can adapt, with the reasoning behind each one.
What every email in the sequence has in common
- It comes from your company, under a name the customer recognises, from an address they can reply to.
- It states the facts in one sentence: which subscription, which amount, what happened.
- It has exactly one link, which opens a page where the customer can pay or change their card without logging in.
- It is short. If it does not fit on a phone screen, it is too long.
- It never guesses the reason in a way that could embarrass the customer. 'Your bank declined the payment' is accurate and neutral.
Stripe's hosted invoice page is a good destination for the link: it shows the amount, accepts a new card and handles 3-D Secure when the bank asks for it.
Email 1: the same day
Send it within a few hours of the first failure. At this point most customers simply do not know. The tone is informative, almost casual. Do not mention consequences yet.
Email 2: three days later
If the invoice is still open, the customer either missed the first email or postponed it. Repeat the facts, add the most likely fix, and keep the same single link. If the decline code points to an expired card, say so plainly: it saves the customer from guessing.
Email 3: one week later
Now it is fair to explain what happens next. Be specific about the date, and stay polite. A customer who has not acted after a week is often busy, travelling or waiting for a new card, rarely hostile.
Email 4: the last notice
Send it a day or two before the end of your retry window, or before the subscription is canceled. It is the last email; say so. Offer a way out as well as a way to pay: a customer who wants to leave should be able to say it, and that is still more useful to you than silence.
Adapting the sequence
- Authentication required: replace email 1 with a message asking the customer to confirm the payment with their bank, and send it immediately. Retries will not help in this case.
- Insufficient funds: keep the first email especially neutral, and let a retry happen after the turn of the month before sending email 2.
- Large amounts and long-standing customers: consider a personal message from a real person instead of email 1. It is worth the extra minute.
- Annual plans: the amount is larger and the card is older; send a renewal notice before the charge and treat the follow-ups with extra care.
What not to write
- Threats or legal wording in the first emails.
- Countdown timers, capital letters, exclamation marks.
- Several links competing for attention: blog posts, social networks, upsells.
- Any detail about the card beyond what the customer needs, such as the reason a bank blocked it.
Read each email aloud before sending it. If it sounds like something you would not say to a customer standing in front of you, rewrite it.
Measuring whether it works
Open rates say little about money. What matters is the share of failed amounts that ends up paid within a fixed window, compared with what gets paid without your emails. A small group of failed invoices that receive no follow-up gives you that comparison; see measuring recovery with a holdout group.
Reclaiva sends a sequence along these lines in your company's name, adapts it to the decline code, stops the moment an invoice is paid and reports only the difference it measured against such a group. For a comparison with Stripe's own emails, read follow-ups in your own name vs Stripe's emails.
