Skip to main content
Churnzilla logo

Case Study

Churnzilla

Subscription management and payment recovery platform

Built for Hugo Millington-Drake
30 days
NDA
React
TypeScript
Node.js
PostgreSQL
Supabase
Stripe Connect
Resend
Slack API
Churnzilla screenshot

30 days

Build Time

20-40%

Recovery Potential

10-30%

Retention Lift

"We were losing customers to failed payments and had no way to intercept cancellations. Tom built Churnzilla in 30 days and now we're recovering revenue automatically while I sleep."
H

Hugo Millington-Drake

Founder

01THE PROBLEM

Subscription businesses face two revenue killers: involuntary churn from failed payments (expired cards, insufficient funds, processing errors) that silently erodes MRR - accounting for 20-40% of total churn. And voluntary churn where customers cancel because businesses lack tools to present alternatives or understand why they're leaving. Hugo was losing revenue he could have saved and missing opportunities to retain customers who might stay with the right offer.

02THE SOLUTION

Churnzilla addresses both types of churn through comprehensive automation. Failed payment detection via Stripe webhooks triggers smart email sequences. Magic link authentication lets customers update payment methods with one click - no login required. Proactive card expiration alerts sent 30 and 7 days before cards expire. A 4-step pause workflow intercepts cancellations with alternative offers, surveys, and retention opportunities. Real-time analytics dashboard tracks recovered revenue, recovery rates, and email performance.

03KEY FEATURES

Automated Payment Recovery

Real-time Stripe webhook integration detects failed payments instantly. Smart email sequences trigger automatically with customizable timing. Magic link authentication lets customers update payment methods with one click - no login required.

4-Step Pause Workflow

Intercepts cancellation attempts with a structured retention flow. Initial offer presents alternatives (pause, discount, downgrade). Customer survey captures why they're leaving. Final offer based on their specific feedback.

Proactive Card Expiration Alerts

Prevents failures before they happen. Automated notifications sent 30 days and 7 days before cards expire. Customers update payment methods before the payment fails - reducing involuntary churn at the source.

Real-Time Analytics Dashboard

KPI cards showing recovered revenue, recovery rate, and paused MRR at a glance. Performance breakdown with CSV export. Recovery trends visualized over time. Email performance tracking for delivery, opens, and clicks.

Multi-Channel Notifications

Slack integration for real-time alerts on payment failures, recoveries, and subscription pauses. Stay informed without checking the dashboard. Customizable notification preferences per event type.

04THE RESULTS

Production platform launched with full Stripe Connect integration. Automated payment recovery sequences running 24/7. Magic link system achieving frictionless payment updates. 4-step pause workflow live and retaining customers who would have cancelled. Multi-channel notifications via Slack keeping Hugo informed in real-time. Custom email sender domains with full SPF/DKIM/DMARC support.

05BUILD TIMELINE
Week 1

Core Architecture

Multi-tenant database design, Supabase auth, Stripe Connect OAuth integration

Week 2

Payment Recovery

Webhook listeners, failed payment detection, email sequences, magic link system

Week 3

Retention System

4-step pause workflow, survey system, custom offers, frontend SDK

Week 4

Launch

Analytics dashboard, Slack integration, custom domains, production deployment

06INTEGRATIONS
Stripe Connect
Supabase
Resend
Slack API
Neon PostgreSQL
07STAY UPDATED

Building in Public

Follow along as I build tools, ship products, and share what actually works.

No spam. Unsubscribe anytime.

08Get Started

Ready to own something?

Let's talk about turning your service business into software.

    Churnzilla | HelloCrossman