Here we are listing some possible causes on why you might see many users showing in the “0 sec” session data point in the User Session chart.
Table of Contents
Because of out-of-session events
Are you sending the events using the HTTP API, without setting a Session ID? By default, these are considered to be out-of-session events (Session ID = -1). Since the Session length is calculated based on the formula:
max(client_event_time) - session_id
and you would like that these events are considered to be be part of a session, then the session ID should be a timestamp of when the session started (Epoch time).
Because of tracking "Start Session" event, but no other events
Are you tracking all of the critical events performed on the app? In case that sending “Start/End session” events is enabled for the project, (using Android SDK or iOS SDK), a "Start Session" event is sent to Amplitude when the app is launched in the foreground. If there is no other event logged in Amplitude after this, then the Session length is calculated to be zero.
NOTE: You can check whether any of these are the reason, by using the Microscope feature to deep dive into the User’s Activity.
To do so:
- Click on the “0 sec” session length data point
- View Users
- Click on a given user’s id to check the User's Activity
The following example user activity shows an out-of-session event. Note that the "0 sec" length session would show as "a few seconds" in the User's Activity.