Build cohort based on selection of events

  • 19 November 2020

Our north star metrics revolve around whether a user engaged with any 2 out of 5 core features within a given time frame (let’s say the last 30 days). Setting up a tracking system for this is brutal: it requires a total of 16 (or 17, depending on how you count) cohorts!

Here’s what I mean. Consider 5 features (A, B, C, D, E). 

  1. Set up a cohort called Feature A defined as “Users that did Feature A at least once in the past 30 days”. Repeat this 4 more times for features B-E. (5 cohorts total)
  2. Since we count any two events, we need to set up cohorts defined as “User in Feature A AND User in Feature B”. Repeat this 9 more times for every possible two-item combination. (10 cohorts total)
  3. Finally, create a massive super-cohort of all cohorts we set up in step 2, separated by OR. “(A AND 😎 OR (A AND C) OR (A AND D) ...”. Together that will output the set of all users who engaged with exactly 2 out of 5 features. (1 cohort total)
  4. Oh, and then create another inverse set out of the one we created in step 3, just so that we encompass the universe of users (1 cohort total). 

That’s 17 cohorts! And it only counts users who engaged with exactly 2 features. If I wanted to measure users who engaged with 2 or more features (out of 5) I’d have to repeat step 2 another 16 times (5 choose 3 = 10; 5 choose 4=5, and 5 choose 5 =1). That’s a lot of cohorts. 

Or, Mixpanel could provide an interface where you could pick from a set of events and choose the number of events you wanted to see. From a ui perspective this would be nearly identical to the current method of selecting “at least/exactly/fewer” times.   

Be the first to reply!