2
2 Comments

A failed payment is a support moment, not a dunning notice

We call them "dunning" emails, and I think that word quietly poisons how we write them.

Dunning literally means demanding payment from someone who owes you. It carries this faint accusation, like the customer did something wrong. So the emails come out cold: "Your payment failed. Update your card to avoid losing access."

But here's the reframe that changed everything for me: a failed renewal usually isn't an objection. The customer already decided to pay you. They didn't cancel, they didn't complain, they didn't ask for a refund. They just hit friction: a card expired, a bank wanted a verification step, a charge bounced the day before payday.

That's not a collections problem. That's a support moment.

And once you see it as support, the email basically rewrites itself. You stop leading with "avoid losing access" (a threat) and start leading with "let's get this sorted" (a hand). You match the message to what actually went wrong instead of sending everyone the same "update your card."

A few concrete shifts that came out of that for me:

  • Card expired: a warm heads-up, not a warning. Ideally before it even fails.
  • Bank verification (3-D Secure): "confirm this was you" with the actual link, not "replace your card," because their card is fine.
  • Insufficient funds: don't nag immediately. Retry at a smarter time, then a gentle nudge.

Same event, completely different tone, and it stops feeling like you're chasing people who never meant to leave in the first place.

If you're curious how much of this is quietly happening in your own account, I built a free read-only scan for exactly that: https://revova.io [promo code pending your confirmation]. Involuntary churn is often 20-40% of total churn, so it's usually more than people expect.

So I'm genuinely curious how you word yours: does your payment-failed email read more like a support message or a collections notice? Would love to see the actual wording you use.

posted to Icon for group Email Marketing
Email Marketing
on July 16, 2026
  1. 1

    The 3-D Secure example is where the reframe becomes operational: the wrong recovery instruction destroys trust. I'd measure recovery per failure code, not per email sequence overall, because expired-card and insufficient-funds cohorts need different timing. A small control with one generic message would show whether better diagnosis or warmer copy is doing the work.

    1. 1

      Exactly — measuring recovery per failure code instead of per sequence is the only way to know what's actually working, because expired-card and insufficient-funds cohorts want completely different timing and copy. And your control idea is spot on: run a slice with one generic message and you can isolate whether the lift comes from better diagnosis (routing by decline reason) or just warmer writing. That's the honest way to attribute it, otherwise you're guessing. This is exactly the direction I'm taking the analytics.

Trending on Indie Hackers
I sent 43 cold emails with my own tool. 17 replied. 1 paid. Here’s the unofficial launch. User Avatar 162 comments I built for one user. Myself. User Avatar 72 comments Got our first paid customers from an unexpected channel User Avatar 30 comments I came up with a great idea for a solo Vibe Coding project, and I'm testing it out right now User Avatar 23 comments AI prices dropped 97% since 2023. So why are AI bills 3x higher? User Avatar 19 comments Day 4 — designing what happens when a survey DOESN'T work out User Avatar 16 comments