Refine this statement however it is relying on device ID to count unique user and Mixpanel clustering device IDs together, but we have seen instances in the past where this failed to cluster accurately?
Hi event, Please stand by as I search the Mixpanel knowledge base for an AI-powered answer. I normally take about 15 seconds or so. In case AI cannot answer your question, feel free to reach out to Mixpanel support at mixpanel.com/get-support. If you have follow-up questions for this thread, please tag me again with your question: @kapa.ai <follow-up question> đź‘‹
Feel free to ask a follow-up question once I've answered by mentioning me with @kapa.ai
Certainly! Here’s a refined version of your statement, grounded in the Mixpanel documentation: ---While Mixpanel’s identity management system is designed to cluster device IDs and user IDs together—allowing for accurate unique user counts across devices and sessions—there have been instances where this clustering did not occur as expected. Mixpanel relies on the correct implementation of identity management, specifically calling .identify(user_id)
at the appropriate times (such as user login or registration) to merge the anonymous $device_id
with the known $user_id
. If .identify()
is not called correctly, or if there are implementation issues (such as passing a static string instead of a dynamic user ID), events may not be clustered accurately, resulting in duplicate or fragmented user profiles. Additionally, in the Original ID Merge system, the canonical distinct_id
is selected programmatically and may not always align with the expected user ID, which can further complicate user counting and analysis. Therefore, it is crucial to follow Mixpanel’s best practices for identity management and thoroughly QA your implementation to ensure accurate clustering of user identities [Identifying Users (Simplified)] [Changing your implementation] [Canonical Distinct ID].---If you need a more technical explanation or specific troubleshooting steps, please let me know!
kapa.ai is still learning and improving, please let me know how I did by reacting below.
ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
Let me check the knowledge base for you again. One moment! 📚
If a user never logs in and is only tracked anonymously, Mixpanel will assign and use a unique $device_id
for that user. In this scenario, events from the same device will be associated with the same $device_id
, and thus counted as a single unique user on that device. However, clustering (merging) of identities in Mixpanel only occurs when a $user_id is introduced via an .identify() call. Without a $user_id
, Mixpanel does not merge multiple device IDs together—each device remains a separate anonymous user.So, to summarize:
- Anonymous users are tracked by their $device_id only.
- Clustering (merging) of device IDs into a single user profile only happens when a $user_id is provided and .identify() is called.
- If a user never logs in (no $user_id
), their activity remains tied to their $device_id
and is not clustered with other device IDs.This is confirmed in the documentation:
If an event contains a $device_id
without a $user_id
, the value of the $device_id
will be set as the distinct_id
for that event. We can consider the $device_id
as the anonymous ID for the user.
...a mapping is created to merge the $user_id
and $device_id
values together, forming an identity cluster, only when both are present in the same event for the first time Identifying Users (Simplified).Therefore, Mixpanel does not cluster multiple device IDs together unless a user logs in and a $user_id is provided. Anonymous users on different devices will be counted as separate users.
kapa.ai is still learning and improving, please let me know how I did by reacting below.
ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
Let me check the knowledge base for you again. One moment! 📚
Yes, if you do not have a user ID (which is only captured when a user logs in), Mixpanel will rely solely on the $device_id
to identify users. In scenarios where the same user logs in from different devices or clears their cookies/local storage (causing a new $device_id
to be generated), Mixpanel will count them as separate users. Without a consistent $user_id
provided via .identify()
, Mixpanel cannot cluster these sessions together, and the same person may be counted as multiple unique users if they appear with different device IDs Identifying Users (Simplified) Identity Management Overview.So, to ensure that repeat visits or logins by the same user are counted as a single user, it is essential to capture and use a unique user ID and call .identify()
whenever the user logs in. Otherwise, Mixpanel will treat each new device (or cleared device) as a new, separate user.
kapa.ai is still learning and improving, please let me know how I did by reacting below.
ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
Let me check the knowledge base for you again. One moment! 📚
Yes, if you do not have a user ID (which is only captured when a user logs in), Mixpanel will rely solely on the $device_id
to identify users. If the same user visits the same page multiple times without logging in—especially if they use different devices, browsers, or clear their cookies/local storage—Mixpanel will assign a new $device_id
each time. As a result, the same person can be counted as multiple unique users because each session with a new $device_id
is treated as a separate anonymous user. Clustering of identities in Mixpanel only happens when a $user_id
is present and .identify()
is called. Without a $user_id
, there is no way for Mixpanel to know that these different $device_id
s belong to the same person Identifying Users (Simplified).So, in scenarios where users do not log in and only anonymous tracking is used, repeat visits by the same person (on different devices or after clearing storage) can be counted as separate users.
kapa.ai is still learning and improving, please let me know how I did by reacting below.
ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
Let me check the knowledge base for you again. One moment! 📚
If the action is only expected for a user to submit once, but you are not capturing a user ID (i.e., the user is anonymous and only tracked by $device_id
), Mixpanel will only be able to enforce this "once per user" logic per device/browser session. If the same person submits the action from a different device, browser, or after clearing cookies/local storage (which generates a new $device_id
), Mixpanel will treat them as a new anonymous user and allow the action to be counted again.In other words, without a persistent user ID, Mixpanel cannot guarantee that an action is only submitted once per actual person across devices or sessions. The "once per user" logic will only hold true per $device_id
, not per real-world user, unless you implement user identification with .identify()
and a unique user IDÂ Identifying Users (Simplified).If you need to enforce or analyze "once per user" actions accurately, capturing and identifying users with a unique user ID is essential.
kapa.ai is still learning and improving, please let me know how I did by reacting below.
ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.