If a user switches devices, does that generate a new calculation session start/session? Or can a session span across multiple devices
Hi Tyler T., 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
In Mixpanel, the behavior of sessions across devices depends on how you identify users and which session computation method you use.
Session Computation and Devices
By default, sessions are calculated based on events performed by a single user (a unique distinct_id) within a specific timeframe [Session Computation Deep-Dive].** Timeout-Based Sessions (Default): If a user switches from Device A to Device B, Mixpanel generally treats these as separate sessions if they have different identifiers. On a new device, Mixpanel's SDK assigns a random $device_id. Until that user is identified, the activity on the new device is seen as a new anonymous user, thus starting a new session [Example User Flows].
** Property-Based Sessions: If you define sessions using a custom session_id property, the session persists as long as that specific ID remains constant across the events you send, regardless of the device [Property-Based Sessions].
Identifying Users to Bridge Devices
If you use Mixpanel’s ID Merge, you can link activity from multiple devices to a single user profile.1. Anonymous State: When a user is on a new device and not logged in, they have a unique $device_id. Events on this device will start a session for that specific identifier [Example User Flows].
2. Identification: Once you call .identify(U1) on the second device, Mixpanel merges that new $device_id into the user's existing identity cluster.
3. Retroactive Stitching: With Simplified ID Merge, Mixpanel retroactively updates the distinct_id of the anonymous events on the new device to match the authenticated user ID (U1) [Example User Flows].
Key Limitations
** 24-Hour Reset: Regardless of device or identification, all Mixpanel sessions are reset at midnight according to your project timezone. A session cannot exceed 24 hours [Session Computation Deep-Dive]. ** Inactivity: In the default timeout-based model, if the time it takes to switch devices and perform a new action exceeds your session timeout (default 30 minutes), a new session will naturally start [Timeout-Based Sessions].
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! 📚
Based on the provided documentation, if you use a phone and a computer at the same time and have implemented ID Merge, Mixpanel will likely count these as one session, provided the following conditions are met: ** Successful Identification: You must have called .identify(user_id) on both the phone and the computer. This links the $device_id of your phone (e.g., D1) and the $device_id of your computer (e.g., D2) into a single identity cluster tied to your unique user ID [Identifying Users (Simplified); Identity Management in Action].
** Unified Identifier: Because Mixpanel computes sessions by looking at the sequence of events for a single distinct_id, once the devices are merged, all events from both devices are attributed to that same user ID [Session Computation Deep-Dive].
** Activity Overlap: Since it is a timeout-based session, as long as the gap between an event on one device and the next event on the other device does not exceed your project's timeout limit (default is 30 minutes), the events will be grouped into the same session [Timeout-Based Sessions].**Important Note:* If you are not logged in on one of the devices, Mixpanel will treat the logged-out device as a separate anonymous user (with its own $device_id) until the .identify() call is made. Once identified, Mixpanel retroactively stitches these event streams together, merging what were previously two separate sessions into one unified session [Example User Flows].
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.
