Skip to content
Academy
Marketing Academy · Field Work●Growth Marketing
MiniAudit· 35 minutes

Finding the Aha Behavior: A Host Cohort Audit

Airbnb

Objective: Given a synthetic export of 30 Airbnb hosts' first-14-day behaviors and whether each host was still active at day 90, apply the lesson's cohort-comparison method to identify which single behavior is the real activation event, and set the time window that captures it.

You're a growth analyst on Airbnb's host-growth team. Leadership wants one activation metric for new hosts instead of five loosely tracked onboarding steps. You've pulled a 30-host synthetic export with first-14-day behaviors and each host's day-90 status.

Compare the retained-at-day-90 cohort against the churned cohort, find the earliest behavior that actually separates them, and write a one-line activation definition an engineer could instrument tomorrow.

Before you start

What you'll need

Free path (everything below is enough to finish)

FreePivot the export and compute the retained-vs-churned behavior gaps

No account friction, pivot tables handle a 30-row cohort split easily

The process

1 step

Step 01 of 01

Finding the aha behavior via cohort comparison

The lesson's Step 1 says: pull the retained-past-day-30 cohort and the churned-before-day-30 cohort, then look for the earliest behavior that separates them. The activation event is not the behavior most hosts do, it is the behavior that correlates with sticking around.

22 of 30 hosts synced their calendar in week 1, but only 11 hosts uploaded 5+ photos in week 1. Which behavior actually separates the day-90-retained hosts from the churned ones, and why does the more 'popular' behavior lose?

Google Sheets— Import the 30-row export, freeze the header row, then build a pivot table with `day_90_active` as rows and each behavior column as values.

Procedure

  1. Import the export and freeze row 1.
  2. Split hosts into two groups: day_90_active = TRUE (18 hosts) and FALSE (12 hosts).
  3. For each behavior column (calendar_synced, photos_5plus, first_booking_accepted, pricing_tool_used, messaged_guest_first), compute the % TRUE within each group.
  4. Rank behaviors by the gap between the two group percentages, largest gap first.
  5. Confirm the winning behavior happens early enough (within 14 days) to be useful as a leading indicator, not a lagging one.
Sample output
Behavior gap analysis (n=30 hosts)

calendar_synced: 73% (active) vs 67% (churned) -> 6pt gap
photos_5plus: 61% (active) vs 58% (churned) -> 3pt gap
first_booking_accepted: 89% (active) vs 25% (churned) -> 64pt gap
pricing_tool_used: 44% (active) vs 33% (churned) -> 11pt gap
messaged_guest_first: 39% (active) vs 17% (churned) -> 22pt gap

Winner: first_booking_accepted, 64-point gap, occurs at a median of day 9.

Healthy

One behavior shows a gap of 40+ points between the retained and churned cohorts, and it happens inside the target window.

Unhealthy

The 'busiest' behavior (calendar_synced, done by almost everyone) shows only a 6-point gap. Building onboarding around it would optimize for attendance, not value.

What this means

Accepting a first booking, not syncing a calendar, is the aha moment: it's the point where a host experiences real income, which is what makes them stick. Calendar sync is a setup step everyone does regardless of outcome.

So what do I do about it?

SymptomActionEffort
Onboarding funnel currently celebrates 'calendar synced' as the activation milestoneRe-point the activation event to first_booking_accepted, and redesign onboarding to accelerate getting a first booking (better default pricing, instant-book nudges)half day
No single frozen definition exists, each team cites a different onboarding stepWrite the definition down: 'Activated = accepted first booking within 14 days of listing published' and circulate it as the one number every team reports against30 min
YouYou can do this yourself, no engineering access required.

Final deliverable

A one-line activation definition (event + threshold + window), backed by the cohort gap analysis, ready to hand to engineering for instrumentation as a single `activated` event.

See a reference example
Sample output
HelloFresh, new-subscriber activation definition (excerpt)

Candidate behaviors tested against day-30 retention (n=45 synthetic subscribers):
  box_customized: 8pt gap
  delivery_rescheduled: 4pt gap
  second_box_ordered: 71pt gap  <- winner

Frozen definition: 'Activated = ordered a second box within 21 days of first delivery.'
Owner: Retention pod. Reviewed quarterly against fresh cohort data.

Success criteria

You're done when you can:

  • Correctly computes the retained-vs-churned percentage gap for all 5 candidate behaviors
  • Selects the behavior with the largest gap, not the most frequent behavior
  • Writes a frozen definition with an explicit event name, threshold, and time window