How to build complex (multi-stage) funnels and retention reports?

  • 4 September 2020
  • 2 replies

Badge +4
  • Community Champion
  • 11 replies

GOAL: I’d like to implement Mark Roberge’s model for tracking customer success in his e-book, The Science of Scaling: At least P% of users complete event E within T days/months/quarters,


For example:

  • Slack: 70% of customers send 2,000+ team messages in the first 30 days
  • Dropbox: 85% of customers upload 1 file in 1 folder on 1 device within 1 hour
  • HubSpot: 80% of customers use 5 features out of the 25 features in the platform within 60 days

In the chart below, for example (which comes from Roberge’s book), in November 48 users were added, and by month 2, 73% of them completed the required sequence.

My challenge is that Mixpanel’s funnel and retention reports don’t seem to be set up to capture events happening with a specified frequency. For example, I can track the event “User Added” following by “Meaningful Activity”, but I can’t track “User Added” followed by “Meaningful Activity 5 times”. 

On the other hand, this seems exactly what cohorts are made for. I can set up a cohort to capture this metric easily. 

BUT! What I’d like to do is see how this cohort changed month-by-month. How many users were added but never managed join the funnel? 


Would love the community’s thoughts. 

2 replies

Userlevel 3
Badge +1

Yes. Frequency of events does not gel well with funnel and retention charts (funnel can be made to work for a smaller frequency by adding the event repeatedly, but not retention charts).

The way I would solve for it is an event design workaround. 

Option 1: Send a lifetime “count” property with “Meaningful Activity” event. Then in funnel and retention charts, filter the event for the count you want to track. (Want to track conversion to when “Meaningful Activity” has happened 5 times, filter for count = 5). Could be implemented as an incremental super property.

Option 2:  Send a separate event for when “Meaningful” frequency has been reached. This can be used if you absolutely know the frequency you want to track (and don’t expect to be playing around to find what meaningful frequency is) or if you need something more complicated than just a simple count to defined meaningfulness of the activity (e.g. if meaningfulness means some combination of events and properties). A “User Meaningful Activated” event.

Badge +4

@Jaya Thanks for your suggestion. One problem I foresee is that “Meaningful Event” is actually a custom event that aggregates many individual events — there’s therefore no way to increment a user property for number of meaningful events. As well, Option 2 probably wouldn’t work because, as you alluded to, we don’t absolutely know the frequency we want to track, and we don’t want to have to engage our developers to change the events they’re sending (turnaround is too long and cost is too high). 

I guess I’m wishing that membership in a cohort could be a valid entry criterion for funnels and retention reports. That would solve my problem, I think.