2
1 Comment

Why churn dashboards are the autopsy, not the diagnosis

I spent the last 6 months building a churn analysis tool for indie SaaS founders.

Read every cancellation survey response, support ticket, and exit interview I could find from public sources (Trustpilot, HN, G2, Reddit). Here's what I learned about the gap between churn dashboards and what founders actually need.

Cancel surveys lie

"Too expensive" is the most common cancellation reason on every SaaS exit survey I've ever seen. It's also almost never the real reason. It's the polite exit. The phrase a customer types when they've already decided to leave and don't want to argue.

The real reason is usually one of:

  • The product never delivered the value promised at signup
  • A specific feature gap forced a workaround they got tired of
  • Support response time pushed them to the alternative
  • A UX friction (slow load, broken flow, missing integration) compounded over weeks until they hit a Tuesday and clicked cancel

None of those show up in a "Top Cancellation Reasons" pie chart. The dashboard treats every response as equally weighted. The diagnostic treats them as evidence.

Churn signal appears 14 days before cancellation, not at cancel

The cancel-flow A/B test is optimizing the last 30 seconds of a 14-day decision. By the time the cancel button gets clicked, the customer has already mentally churned. The signal that mattered (the support ticket they wrote a week ago, the slow page they hit three times, the email that bounced) has already happened.

Churn dashboards aggregate that signal after the fact. The Number Goes Down chart tells you the trend is bad. It doesn't tell you what to fix.

Cohort retention lies when blending trial converts with paid expansions

Most SaaS churn dashboards I've audited blend everyone in the cohort: trial-to-paid converts, paid expansions, downgrades, upgrades, all weighted by revenue. The result is a cohort retention curve that looks fine while the underlying churn signal is screaming. The trial converts drag the average up. The paid expansions drag it up further.

Separate the cohorts and the picture changes. Trial converts retain at one rate. Paid expansions retain at another. Customers who downgraded mid-tier retain at a third (usually the worst). The aggregated view is statistical noise masking the diagnostic.

What diagnosis looks like in practice

Not a number. A driver list with severity and a fix per driver.

When I run the tool on a batch of cancellation feedback from a real SaaS, the output looks like:

1. Pricing-value mismatch (critical, 35% prevalence)

Customers cited "did not see ROI after the price increase" 12 times in 30 days. Fix: re-articulate the value of the tier increase in the upgrade email, or roll back the tier increase for accounts under a usage threshold.

2. Specific feature gap (high, 22% prevalence)

Customers wanted SAML SSO for team plans, gated behind a tier they didn't want. Fix: move SAML SSO down a tier, or explicitly recommend the workaround for sub-tier accounts.

3. Support response time (medium, 18% prevalence)

Customers churned within 7 days of an unanswered ticket. Fix: SLA the first response at <8 hours for paid accounts, even if resolution takes longer.

Each driver gets a confidence score (how strongly the underlying quotes support the call), a severity score (Critical/High/Medium/Low), and a one-line priority action. The dashboard view is a chart. The diagnostic is the action plan.

Public teardowns

I've run this method on real SaaS companies using verbatim customer quotes from public sources, all with permalinks:

  • Notion: Grade D (44/100). 60+ HN complaints. Feature bloat, AI slop pressure, performance at scale.
  • Figma: Grade D (48/100). March 2025 pricing hike. Penpot HN thread hit 632 points.
  • Asana: Grade C (56/100). SAML SSO gated behind most expensive tier.
  • Cursor: Grade D (42/100). June 2025 credit-system restructure. CEO apology + refunds.
  • Evernote: Grade F (24/100). Price doubled, free tier slashed, 250 layoffs.
  • Monday.com: Grade C (52/100). Daily cancellation-warning banner dark pattern.
  • Slack: Grade D (48/100). September 2025 forced migration to Business+.
  • Linear: Grade B (72/100). Narrow, bounded churn. Per-seat pricing cliff at 50+ seats.

Grades are output of the diagnostic, not opinion. All quotes link to original public source.

The takeaway

Dashboards measure churn. Diagnostics name it. Most indie SaaS founders are stuck reading dashboards that confirm churn is happening without naming what to fix. The diagnostic loop (read the feedback, name the driver, ship the fix) is the actual work. The dashboard is the trail of evidence after.

If you want to run a diagnostic on your own cancellation data, /audit on my profile link is free. No signup. Paste any text. Returns the grade and the driver list. The point of this post isn't the tool though. The point is the framing.

What does your retention diagnostic loop look like?

on June 1, 2026
  1. 1

    This framing is strong because most churn tools still stop at reporting what happened. Founders do not need another chart telling them retention is down. They need the actual driver, the supporting evidence, and the next fix to test.

    The sharper category here is not “churn analysis.” It is closer to retention intelligence or customer-loss diagnosis. That matters because the product sounds much bigger than a dashboard: cancellation text, support tickets, public complaints, severity scoring, confidence scoring, and fix recommendations all point toward a decision system for SaaS teams.

    The one thing I would pressure-test early is the product name around IndieFailureLab. It works for content and teardowns, but if this becomes a serious SaaS diagnostic layer, the “failure lab” frame may make the product feel more like research/content than software a founder trusts with churn data.

    Beryxa .com would fit that direction better because it feels more like an enterprise SaaS intelligence product. It can carry retention signals, churn diagnosis, customer evidence, scoring, and action recommendations without boxing the product into failure-analysis content.

Trending on Indie Hackers
I built a WhatsApp AI bot for doctors in Peru — launched 3 weeks ago, 0 paying customers, and stuck waiting for Meta to approve my app User Avatar 57 comments Your build-in-public audience is not your market. I learned the difference the slow way. User Avatar 55 comments How to see revenue problems before they get worse User Avatar 30 comments From broke and burned out as a PM, to launching my SaaS and optimizing my health User Avatar 28 comments I kept starting projects and dropping them. So I built a system that wouldn’t let me User Avatar 23 comments We built Shopify themes to $20k/month. Now we have to pivot. User Avatar 20 comments