We track the user lifecycle as an 8-stage funnel. Website acquisition uses consented website analytics on the web, and product funnel events live in PostHog. For implementation details and the full event catalog, see the developer analytics docs.
[ 1. Acquisition ]
[ 2. Install ][ 2a. Waitlist ]
[ 3. Onboarding ]
[ 4. Activation ]
[ 5. Habits ]
[ 6. Retention ]
[ 7. Convert ]
[8. Paying]
1. Acquisition (website visits)
Standard consented website analytics tracking, plus PostHog pageview and session tracking.
2. Converting visits to app installs
download_clicked—platform,spec,sourceshow_main_window— fired whenever the app is opened. First occurrence marks install.
Optional:
reminder_requested— mobile waitlist signupos_waitlist_joined— unsupported OS waitlist signup
3. Onboarding
onboarding_step_viewed— freshly downloaded users see this on first openuser_signed_in+identify()— account createdonboarding_completed— finished onboarding flow
4. Activation (first summary)
note_created—has_event_idsession_started—has_calendar_event,stt_provider,stt_modelnote_enhanced—is_auto,llm_provider,llm_model,template_id(this is the summary)
5. Building habits (multiple meeting notes)
- Repeated
note_createdevents - Repeated
session_startedevents - Repeated
note_enhancedevents file_uploaded—file_type(audio/transcript imports)message_sent— chat engagementsearch_performed— searching past notessession_exported—format, getting value out of notes
6. Retention (coming back)
- Repeated
note_enhancedover multiple days/weeks - Repeated
tab_opened—view note_edited— revisiting old notessearch_performed— referencing past content
7. Conversion (trial to pro)
upgrade_clicked—plan:"pro"- User property:
planchanges from trial to pro - User property:
trial_end_datefor timing analysis
8. Retention (keep paying)
- Continued
session_started,note_enhanced,note_createdpost-conversion settings_changed— ongoing engagement with app configdata_imported— deepening investment in the platform- Absence of
user_signed_out
Segmentation properties
Key user properties for segmentation across all stages:
is_signed_up, plan, trial_end_date, has_configured_ai, platform, app_version, current_stt_provider, current_llm_provider