Tracking Truly Anonymous Data

Many Mixpanel reports distinguish individual users as part of its data analysis. Data is therefore sent to Mixpanel with an identifier that represents a unique user’s identity. Some regulations, such as the General Data Protection Regulation (“GDPR”), may not consider this to be truly anonymous tracking. Data that is not truly anonymous is considered personal data or personal information under regulations like the GDPR. Customers may therefore need to have a legal basis to capture this information, such as consent or a legitimate interest. Any uncertainty about whether or not captured data is lawful should be clarified by contacting compliance and legal teams.

While certain Mixpanel reports will not work without the use of unique user identifiers, Mixpanel tracking still can be implemented without unique user identifiers. It is important to consider the implications of using Mixpanel without unique identifiers and how that affects a tracking plan.

Implications of Tracking Truly Anonymous Data

Many Mixpanel reports are dependent on the use of unique identifiers. For this reason, truly anonymous tracking is incompatible with most Mixpanel reports. It is generally recommended to track events with a distinct_id. If tracking an anonymous distinct_id, steps can be taken to ensure that those events do not contain personal information.

Reports that will not work include:

  • Funnels
  • Retention
  • Signal
  • Explore
  • Messages
  • Campaign
  • Cohorts
  • A/B Testing

Reports that will lose unique count functionality include:

  • Revenue
  • Insights
  • Formulas
  • JQL reports

While truly anonymous tracking does affect most Mixpanel reports, it is still possible to implement truly anonymous Mixpanel tracking. The following strategies for tracking truly anonymous data may be helpful if the implementation is designed for basic analysis of total event counts.

Anonymizing the Distinct_id

Mixpanel’s client-side tracking libraries automatically assign a distinct_id to a user when they first visit a website or an application that has Mixpanel installed. By default, the distinct_id is a unique random hash that is stored in the browser cookie of an end-user (JavaScript) or is linked to mobile identifiers (a random UUID in both iOS and Android).

By its nature, the distinct_id is not truly anonymous as it connects data to an individual user. There are several ways to alter the distinct_id so that it is truly anonymous.

Send Events Without a Distinct_id

It is possible to send data directly to Mixpanel's HTTP API without a distinct_id. Sending data directly to the API endpoint requires manually building both the HTTP requests and the JSON payload contained within it. This affords flexibility in choosing what data to send to Mixpanel.

It is possible to omit any identifying information, including the distinct_id, in JSON payloads sent via HTTP. User profiles require a distinct_id, so it is important to note that only event data can be tracked anonymously in this way.

Additional Information 

For basic analysis of total events, events can be tracked truly anonymously (without a distinct_id) using Mixpanel’s HTTP API, or by sending a common identifier with each event. With that said, for most user-based analysis, a distinct_id is required.

Refer to Mixpanel's user and identity management and distinct_id documentation to get more information on general best practices when handling users in Mixpanel.

To learn more about Mixpanel’s approach to PI and privacy, refer to our Privacy Statement, or reach out to Support.

Did this answer your question?



Please sign in to leave a comment.