Product Teardown Wellness Mock Case Study

Fixing Onboarding Drop-off in a Habit Tracker

A habit-tracking app I've recommended to friends loses most of them before their first logged habit. An independent teardown, not affiliated with the app's team.

Type
Independent teardown
Method
First-run walkthrough + friend interviews
Data
Estimated, not real
Output
Concept only, not shipped

The problem

I've recommended this app to at least five friends. Only one still uses it. Watching two of them set it up, both got stuck at the same place: a 6-step setup wizard asking for notification preferences, a "why" reflection prompt, and a paywall preview, all before they logged a single habit.

The app is asking people to commit before they've felt the core value: the satisfaction of checking something off.

Where the funnel likely leaks

App opened
100%
Notifications set
~71%
"Why" prompt
~54%
Paywall preview
~38%
First habit logged
~29%

Estimated funnel based on watching two friends onboard, not the app's actual analytics.

Proposed fix

01. Let people log a habit before setup

Move the wizard after the first check-off, not before it. Give people the core "click, done" feeling in the first ten seconds.

02. Make the "why" prompt optional, not blocking

Reflection is valuable, but it's a day-two feature, not a day-zero gate. Surface it after someone's built a little momentum.

03. Push the paywall preview to day three

Showing pricing before value is felt reads as a wall, not an upsell. Let a few days of streaks build the case for premium instead.

Hypothetical impact

1
step before first habit logged
+20pt
est. activation rate, day zero
3d
paywall moved back, day 0 → day 3

All figures are estimates for illustration, not measured results.

How I'd validate this

  • A/B test "log first, set up later" against the current wizard-first flow, tracking day-zero activation.
  • Measure whether delaying the paywall preview to day three changes trial-start rate, not just activation.
  • Run five more first-time-user sessions to confirm the drop-off point holds beyond my two data points.