KKlimb · 40k signups / month

Onboarding that ends when users actually activate.

Welcome series triggered by signed_up_at, each nudge fired on the channel that fits the missing step. Stops the moment activated_at is set.

Day-7 activation
54%+22pp
from 32% · 8 weeks
Free → Pro
5.8%+2.6pp
from 3.2% · post-flow
Activation checklist
Marco · joined 6 days ago
1/4
Sign up
Connect a device
Log first workout
Invite a friend
Day-7 activation
32%+22pp
Free → Pro
3.2%+2.6pp
The recipe

Trigger · Sequence · Goal.

Three pieces, no hidden state. The flow lives in your data, fires on a column flip, and stops when the goal column is filled.

Trigger

signed_up_at filled

The flow fires the moment a new user appears in your users table. No CSV export, no nightly batch.

WHEN signed_up_at IS NOT NULL
Sequence

Channel matched to the missing step

An email tip when a device is missing, a WhatsApp nudge for the first workout, an in-app push for invites. Each step waits on its own data column.

Email · WhatsApp · Push
Goal

activated_at not null

The flow stops the second your activation column flips: device connected, first workout logged, friend invited. Goal completion is attributed to the channel that did it.

STOP WHEN activated_at IS NOT NULL
Variations

Same recipe, four shapes.

B2B onboarding: book a call

Detect plan = team and replace the generic welcome with a calendar link to the founder.

Sign up · plan = team
If team plan
segment branch
Founder calendar
+1 more

Vibe-coder lane

If signup_source = lovable / cursor / replit, lead with a Postgres connection guide instead of generic onboarding.

Sign up · vibe coder
Connect Postgres
Free seat · 30d
+1 more

Freemium: first value first

Skip the welcome series and ship straight to the missing-feature email if the user is already active in week 1.

Sign up · free
If activated_at IS NOT NULL
skip welcome
Pro features
+1 more

Cold start: re-target on day 14

If activation hasn't fired in 14 days, branch into a re-engagement track instead of dropping the user.

Day 14 · still inactive
Personal nudge
Founder note
+1 more

Day-7 activation jumped from 32% to 54% in 8 weeks. We didn't change a single line of product code, just wired the welcome flow to the columns we already had.

Lucas Park
Head of Product · Klimb · Fitness tracking · 40k signups / month
Outcomelive
32%54%
Day-7 activation in 8 weeks

Activate your signups today.

Connect Supabase or Postgres. Wire the trigger on signed_up_at, drop the channels, watch activation lift.

14 days · all features · no credit card