1
1 Comment

5 Days, 0 Signups: I'm Shutting Down My SaaS Before Writing a Single Line of Backend Code

Five days. Zero signups. One channel. That's the entire story of RecoverFlow's public launch.

I spent weeks writing a 50-page PRD, a 24-task execution plan, and a 14-day promotion playbook — and then watched a landing page sit completely empty. This is the postmortem I wish I'd read before I started.


What I Built

RecoverFlow was supposed to recover failed Stripe payments for small SaaS companies ($1K–$30K MRR). The pitch: smart retries optimized by failure code (insufficient funds, expired cards, and generic declines each need completely different timing), plus a 3-step automated dunning email sequence. All for $29/month.

There was also a personal twist: I'm a Korean founder, which means I can't open a Stripe account directly. So I built the entire billing stack around Polar as the merchant of record. That constraint forced some creative architecture — none of which ever got used.


My Hypothesis

The market logic felt solid. Baremetrics data suggests that involuntary churn (payment failures, not cancellations) accounts for roughly 9% of MRR leakage for the average SaaS. Existing recovery tools — Churnkey, Gravy, ChurnBuster — start at $200–$550/month, which is simply irrational math for a founder doing $5K MRR.

I saw a gap: founders too small for Churnkey, not big enough for Gravy. RecoverFlow was for that middle, with a $29/month price point designed to make the ROI obvious on day one.

I even built kill criteria into the PRD: fewer than 50 waitlist signups in 14 days means kill or pivot. I felt very data-driven. I was not.


What Actually Happened

Here's the complete channel breakdown:

  • Twitter (@BuildWithChoi): Posted a 7-tweet launch thread on Day 1, daily routine tweets through Day 5. Topic: involuntary churn data, failure code explanations, product announcement.
  • Reddit: Zero posts. New account, not enough karma, didn't want to get immediately banned for self-promotion.
  • Indie Hackers: Zero posts. IH requires a paid plan (IH Plus) to publish. Budget was $0.
  • Direct outreach: Zero DMs. The plan called for DM outreach starting on Day 10, after community presence was established.
  • Paid ads: Zero.

Result: 0 signups across all three landing page capture points (hero CTA, MRR calculator output, footer email form).

The landing page was live. The MRR calculator worked. Nobody came.


Root Cause Analysis

Three causes, layered on top of each other.

Primary: No audience before product. Twitter organic reach for a new account is effectively zero. Building in public only works if someone is watching. I had no one watching.

Secondary: Over-planned, under-validated. I spent more time writing documentation than talking to potential customers. A 50-page PRD feels productive. It is not market validation. If I had spent those same weeks having 10 conversations with SaaS founders, I would have learned whether the problem was painful enough to pay for — before building anything. I didn't have a single customer conversation before launch day.

Tertiary: Channel mismatch. Twitter organic rewards existing audiences and punishes cold launches from new accounts. I needed warm channels — Reddit comments, IH engagement, direct DMs — to drive initial traffic. Those were all in my Day 10+ plan. Day 10 never came.

The irony: I built kill criteria to be data-driven, then ran a single channel for five days without generating enough signal to use them. My threshold was 50 signups in 14 days. I got zero. I didn't fail measurably. I failed invisibly.


What I'd Do Differently

1. Talk to 10 founders before writing any documentation. Not surveys. Not Twitter polls. Real conversations. "Do you track your involuntary churn rate? What do you do when a payment fails?" If I can't get 10 people to give me 15 minutes to discuss the problem, I definitely can't get them to pay $29/month.

2. Build audience for 30 days before launching anything. Provide value first — share data, explain Stripe failure codes, answer questions in relevant communities — before asking for anything. An audience of 200 engaged followers is worth more than 10,000 cold impressions at launch.

3. Start with warm channels, not Twitter cold reach. Reddit comments on relevant threads, IH comment engagement, direct DMs to specific founders I've genuinely researched. These require more effort per interaction and scale slowly, but they actually convert.


Honest Takeaway

This isn't a product failure. The product never existed beyond a landing page. This is a distribution failure, and more specifically, it's a sequencing failure. I built the wrong things in the wrong order.

The plan was always: validate the problem → build the solution. Somewhere between writing the PRD and deploying the landing page, I convinced myself that deploying the landing page was validation. It isn't. Validation is a person handing you money, or at minimum, a person saying "yes, this hurts, and yes, I'd pay to fix it."

What's next: I'm taking the lesson forward, not the product. Before I write the first line of backend code for anything, I'm having ten conversations. No PRD. No architecture docs. Just a problem, ten people, and a question.


Building in public at @BuildWithChoi on Twitter.

on February 21, 2026
  1. 1

    Respect for shutting down fast instead of sinking months into it. Most people (myself included) keep polishing the landing page hoping signups will magically appear. Did you validate the idea with anyone before building the page, or was the page itself the validation test?

Trending on Indie Hackers
I sent 43 cold emails with my own tool. 17 replied. 1 paid. Here’s the unofficial launch. User Avatar 206 comments I built for one user. Myself. User Avatar 75 comments I built a web-based vector editor from scratch and integrated an AI Agent. Need just ONE beta tester! User Avatar 45 comments Why Your Users are Leaving in Silence (and How to Fix the "Leaky Bucket" with AI) User Avatar 19 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