Is it possible to track funnels that span across multiple users? For example, in our mental health application, we have Patients and Therapists. A Therapist can assign an assessment to a Patient and the Patient completes the assessment. We would like to track the conversions along that Assessment Completion funnel, which looks roughly like this:
1) Therapist assigns assessment to Patient
2) Therapist delivers assessment to Patient
3) Patient clicks link to start assessment
4) Patient completes assessment
I am not seeing any features that allow us to track this funnel across multiple users. One option is we can track #1 and #2 against both the Therapist and Patient, but that seems a little hacky. Is there a better feature I am missing that would help with this?
Reading through the Funnels Deep Dive article, it would be great if we could choose to hold a property constant (in our case we would hold the unique Assessment ID constant in the funnel above) but not restrict it to the same user.
It seems like this would be a pretty common need for many products.
Best answer by james
Before going into your question, I felt like it might be valuable to take a few steps back and give some added background on funnels. What makes a Funnels report a Funnels report is the $distinct_id that is sent to Mixpanel with each event. The $distinct_id field is used to identify a single user and follow them from step 1, into step 2, into step 3 etc. When a report is calculated, Mixpanel takes a snapshot of unique $distinct_id values that triggered the first event, and from that list they see which $distinct_ids made it to the second step, etc — A $distinct_id that triggered event 2 without triggering event 1 will not show up in the funnel. Then, Mixpanel follows that pool of ids through the subsequent events, calculating the drop off as they go.
Mixpanel recently released a new feature called Group Analytics, which enables you to run a funnel off a _property_ instead of the _$distinct_id._ So then instead of taking a snapshot of unique $distinct_id values that triggered the first event, the report would take a snapshot of all unique property values instead. I imagine something like the Patient ID would enable you to track events for a single patient across two different users (the therapist and the patient). I see Sarah mentioned it here too https://community.mixpanel.com/questions/1802/how-do-i-create-a-funnel-for-businesses-instead-of.html
However, if that is not your preferred route, you will need to make the $distinct_id the same for each of these events. Being that the patient is the constant for each step in this Funnel, I imagine you could use a server-side implementation and assign a value (such as Patient ID) as the $distinct_id. So any activity triggered within a patient's account (assigns assessment, starts assessment) would be tied back to the single patient, instead of looking at it from a user level (therapist vs patient).
1) Therapist assigns assessment to Patient($distinct_id =Patient ID)
2) Therapist delivers assessment to Patient ($distinct_id =Patient ID)
3) Patient clicks link to start assessment ($distinct_id =Patient ID)
4) Patient completes assessment ($distinct_id =Patient ID)
Let me know if this helps out your use case!