Retention Segments is an engagement analysis feature, available with Enterprise Edition. It unrolls your users' session and event behavior starting from their very first session.
- You can select the retention type that you're interested in.
- Here, you select the data type you want to use in the calculation: Session or Event (Views, Crashes, and Feedback are listed under Events). Session and Event Retention have a tiny but important difference (see Day 0).
- You can select the period and bucket. For the sake of simplicity, this document uses day terminology. Nonetheless, all examples and descriptions apply to weekly and monthly retention as well.
- You can target a specific set of Day 0 users/new users using the query editor.
- You will see an overview graph for selected time period. It basically depicts the ratio of (sum of n-th day/sum of Day 0). That is, it summarizes tabular data in a single chart.
- Each row of the table denotes a day/week/month. "New users" column can be renamed to "Users" when using Event Retention. Please see next sections for details.
- Scrolling across the table shows corresponding ratios of retention (ratio of users retained on Day 1, ratio of users retained on Day 2, so on)
Day 0: Session Retention vs. Event Retention
Day 0 is a term to define the starting point of the Retention. In Session Retention, Day 0 is the first session or visit of the user. Retention calculation methods use that day to determine overall retention. It answers questions like, “How many users who had their first session on April 3 (59 new users) had another session on Day 5 (April 8, 5.08%) too?”
Event Retention, on the other hand, has a fundamental difference when compared to Session Retention. It doesn’t require an Event to be done for the first time. It answers questions like, “How many users who did Login on April 3 (87 users) did Login on Day 5 (April 8, 9.2%) too?”
It is important to note that "like" is underlined in the examples. This is because the answers to those example questions depends on the retention calculation method. Let's take a look at them.
Retention Calculation Method
There are 3 different types of calculation methods: full, classical, and unbounded. Each type provides a different approach to crunch Session/Custom Event numbers to calculate Retention. Both Session and Event Retention support all those three types. The following examples are for Session Retention, but the methods do not differ for Event Retention. That is, “Session” can be replaced with an arbitrary event name. That being said, it is important to remember the slight difference between Session and Event Retention that is explained in the previous section.
Full Retention is the most strict approach compared to others. For daily-full retention; once the user skips a day, retention gets broken for them and is not changed after that point. The table below demonstrates a fully retained (3 days) user.
Similar to daily (full) retention, weekly retention counts the number of users who had no inactivity which breaks the retention. Let's have a look at an example for weekly full-retention:
100 new users every day for 5 days during the first week of the month (Week 0). On Saturday, the 6th of the month, 60 users come back. Some time during the subsequent week (Week 1), 70 unique users come back, 30 on the 9th and 40 on the 13th. In the third week, 20 users come back, all on the 21st. Week-1 retention is 70/500 or 14%; Week-2 retention is 20/500 or 4%.
Classical Retention doesn’t require continuous sessions/visits. Days are affecting only themselves, but not previous or following days. In other words, if a user has a session for a day, then she is considered retained on that day.Let's take a look at classical retention over an example: 100 users who have their first session on Monday, the first of the November. 30 of those users come back the next day on Tuesday, the second of the month, and 20 come back the following day on Wednesday, the third of the month. Your Day 1 retention rate is 30/100 or 30%. Your Day 2 retention rate is 20/100 or 20%. If 50 people were to come back 89 days from Monday the 1st (it means Day 90), your Day 90 retention rate would be 50/100 (50%).
Classical Retention = (# of users who had a session on Day Nth day after Day 0) / (# of users who has first session on Day 0)
Unbounded Retention is even more tolerant than Classical. It gives the percentage of users who came back on a specific day or anytime after that day. All days between Day 0 and the last session day are considered as retained, regardless of whether there are sessions before the last one. Also, the same logic is used for Event based Unbounded Retention calculation by selected Event type or specified Event.
To understand how Unbounded Retention is calculated, let’s assume that 10 new users come on Day 0. On the 7th, user X comes back. On the 10th, user Y comes back. On the 17th, user Z comes back and again on the 19th. Your Day 7 Retention is 3/10 or 30% because users X, Y, and Z all came back on Day 7 or after. Your Day 14 Retention is 1/10 or 10% because only user Z came back on or after Day 14.
Unbounded Retention = (# of users who had a session on Day N or after Day N) / (# of users who have first session on Day 0)
More on technical details
Session/Custom Event counting policy
In order to determine that a day has a Session or Custom Event, we use absolute differences. For example:
- Let’s say the first session is on Jan 1, 2018 at 22:00 (Day 0)
- Next session is on Jan 2, 2018 at 00:00 (Day 1)
- Only 2 hours passed but the date is different. So, it is counted as a day. We didn’t wait for 24 hours to pass.
From the storage point of view, there is an upper limit for Session Retention values. Daily Retention, for instance, is not stored if the time span starting from Day 0 is longer than 30 days. The time limits for all periods are as follows:
- Daily Retention: 30 days
- Weekly Retention: 24 weeks
- Monthly Retention: 13 months