Sessions
Get Total Insight into Activity with User Sessions
Embrace's User Sessions allow developers to recreate user activity with detailed data, helping identify and resolve issues efficiently.
User Sessions give you every technical detail for every session that users were in your app. User Sessions are crucial for modeling and debugging app behavior, as they capture everything a user does from app launch to termination, including user actions and technical events.
What is a User Session?
User Sessions (or just sessions) are an encapsulation of all app activity a specific user had during one use of the app. The User Session creates a picture that includes all app lifecycle and user interface details, business logic and networking, and other technical details that occurred in your app while it was in the foreground or background. It also includes key metadata for the session including device info, user personas. A Session is made up of Session Parts. Each Session Part captures a contiguous interval of app execution.
The first Session Part begins when a user launches the app to the foreground. That foreground session part can end or terminate in a variety of states:
- when the app is sent to the background (for example, when switching to another application like email)
- when the app runs into an exception, crash, or ANR that terminates use of the app
- the developer decides to end the session part in their code under certain conditions (for example, deciding they would like to end session parts when a user logs out)
User Session Lifecycle
A Session stays open as long as the user keeps coming back to your app. Each new Session Part is added to the Session already in progress.
Two boundaries close a Session. The first is inactivity: once 30 minutes pass with no new Session Part, the Session is complete. The second is maximum duration: a Session is capped at 12 hours, so a user who stays continuously active is split into successive Sessions rather than accumulating one indefinitely.
Both values are defaults and are configurable per customer. Contact Embrace support if a different inactivity window or maximum duration better matches how your users work.
Implementation details
Sessions are automatically collected by the Embrace SDKs, ingested by Embrace's backend, and displayed in the Embrace dashboard. Once Sessions have been collected, they can be used in the dashboard a variety of ways:
- Sessions let you see user activity over time for all users or specific cohorts of users, and filter users into groups by experiments, real-world conditions, and any other dimensions you attach to users.
- User Timelines let you dig into the experience for individual users.
Learn more
This walkthrough video will show you how developers use User Sessions to make sense of app activity:
Additionally, you can read about use cases to learn more about how developers use Sessions to dig into user experiences.
Finally, read about these User Session topics on our blog: