Lemon Squeezy dunning playbook

Recover failed Lemon Squeezy payments before they become churn.

Lemon Squeezy retries failed charges automatically, but the generic dunning emails it sends are easy for customers to ignore. A plain-text follow-up from your own address with a fresh update link recovers another 20-25% of failed payments.

Quick answer

To recover failed Lemon Squeezy payments: (1) subscribe to the subscription_payment_failed webhook, (2) send a plain-text email from your real address at T+0, (3) follow up at T+48h and T+120h with fresh customer-portal update links, (4) cancel cleanly if recovery fails. Realistic combined recovery rate: 50-65%.

The 4-step Lemon Squeezy dunning playbook

  1. 1

    Subscribe to the subscription_payment_failed webhook

    Lemon Squeezy fires subscription_payment_failed when a renewal charge fails. Persist the event, capture the subscription ID and customer email, and start your dunning clock from this moment.

  2. 2

    Send the first recovery email at T+0

    Plain text from your real address. One sentence explaining the failure, one fresh payment-update link, one offer to help if they're stuck. Don't use a 'PAYMENT DECLINED' template. It reads as spam.

  3. 3

    Follow up at T+48h and T+120h

    Three emails total. Each one carries a fresh update link from the Lemon Squeezy customer portal. Vary the tone. Reminder, then urgency, then last call. Stop after the third.

  4. 4

    Cancel cleanly and add to reactivation list

    If the customer hasn't updated payment by T+10 days, cancel the subscription with a clear 'we couldn't process payment' note. Tag them for reactivation 30-60 days later. Some come back when their card situation changes.

FAQ

Does Lemon Squeezy have built-in failed payment recovery?
Lemon Squeezy does retry failed charges automatically and sends generic dunning emails, but the emails come from Lemon Squeezy (not your brand), use a templated layout, and don't link to your own messaging. Most founders want to send their own follow-up from their own address so it reads as a real person, not a payment processor.
Which Lemon Squeezy webhook signals a failed payment?
subscription_payment_failed. The payload includes subscription ID, customer ID, customer email, the failed payment attempt details, and the next retry timestamp. Listen for this event and trigger your recovery sequence.
What's a realistic recovery rate for Lemon Squeezy failed payments?
50-65% combined recovery when Lemon Squeezy's automatic retries are paired with a clean 3-email dunning sequence. Automatic retries handle insufficient-funds and temporary issuer issues; email-driven recovery handles expired cards and replaced cards that need the customer to log in.
How is Lemon Squeezy dunning different from Stripe dunning?
The pattern is the same. Webhook, retry, follow-up emails. But Lemon Squeezy's customer portal hosts payment updates differently from Stripe's hosted invoice URL. Your dunning emails should link to the Lemon Squeezy customer portal so the customer can update their card without leaving the LS ecosystem.
Should I run dunning on Lemon Squeezy at all? They charge as a merchant of record.
Yes. Even though Lemon Squeezy handles tax and merchant-of-record concerns, failed payments still drop your active subscriber count and your MRR. Dunning is about retention, not tax handling. You still want to recover those subscribers regardless of who the merchant of record is.
How does ChurnNote handle Lemon Squeezy failed payments?
ChurnNote connects via your Lemon Squeezy API key, subscribes to subscription_payment_failed, and sends a 3-email dunning sequence with fresh update-payment links from your domain. Auto-stops when subscription_payment_success fires. Same flat $12/mo as Stripe.

Most churn tools ignore Lemon Squeezy.

ChurnNote treats Lemon Squeezy as a first-class integration. Same dunning flow, same flat $12/mo, same exit-email and win-back loops as Stripe.

Get started