Retention is a key ingredient of your product. It's particularly important in terms of unit economics, as it basically determines the period over which you amortize the fixed costs associated with your users. These fixed costs are the expenses you have incurred to bring the user to your product. In the case of a B2C product, these expenses are often advertising campaigns on social networks; in the case of a B2B product, they may be the costs associated with onboarding a user. This is why retention is such a closely scrutinized metric.
Retention isn't all that easy to measure. Worse still, once you've measured it, it's even harder to understand. What makes your users abandon your product after a few sessions? What, on the contrary, drives your users to make a lasting commitment to your experience? These are the issues we're going to look at trough this guide.
First of all, how do you measure retention? There are several definitions of retention, and we propose to cover two of them today.
As you can see, the choice of definition can lead to very different observations in terms of retention. So when should you choose one measure or the other?It's never easy to establish absolute truths, as everything depends on your product. That's why both measures exist, as they are both relevant in different contexts. But, If you've launched a major marketing campaign, or a Product Hunt launch, then the n-days retention metric is relevant for measuring how the users in that cohort behave. If you're analyzing longer-term behavior, unbounded measurement is probably more relevant. Another relatively obvious example of the use of unbounded measurement is the context of your product. For example, if you operate an air ticket booking app, an n-days metric is not very relevant.However, there's one big advantage of n-day retention: it delivers definitive results. Unbounded retention is potentially subject to change at any time in the future. For example, imagine a user downloads a mobile app on day one, uses it a little on the first day and then doesn't use it again. He is therefore not included in the retention (n-day and unbounded) of the second day. But then, 182 days later, he decides to reopen the app. This action will have the effect of increasing the d2 retention 182 days later in the case of the unbounded measure.
That's it for the theory, now it's time to put it into practice. To analyze your users' retention with Vespucci, start by creating a new story. Use the template on the left to start your exploration.
You absolutely must have certain elements within your tagging plan to track user retention. However, some approaches are more demanding than others.
Identify your users' first session.
One approach is to create a first launch property. You'll need to define this property as a "user property" if you're using Amplitude, or attach it to an "identity" if you're using Segment. The advantage of this approach is its robustness. You don't have to go through your entire data set to find the first session of each of your users. The disadvantage is its lack of flexibility: it doesn't allow you to define the starting point of retention based on the performance of a specific action.
Event based approach.
The most obvious and flexible approach is to use the event flow of your taging plan. This allows you to calculate retention after the first occurrence of a specific action. However, this approach can be challenging, as it requires you to process and have access to all your historical data. Such an approach is even impossible to implement in certain Segment setups.
"Index" based approcah.
A final approach is an "hybrid" approach. It can be implemented in several ways. The simplest is to define the "first launch" property mentioned in the first approach on the basis of finer criteria. For example, you could track not the date of the first launch, but that of a particular, more relevant action. You could also consider implementing a more complex, but more flexible, solution based on a dictionary. The keys of this dictionary would consist of a series of remarkable properties that you would have identified beforehand, while their values would correspond to the time stamps associated with these actions
Retention is a key ingredient of your product. It's particularly important in terms of unit economics, as it basically determines the period over which you amortize the fixed costs associated with your users. These fixed costs are the expenses you have incurred to bring the user to your product. In the case of a B2C product, these expenses are often advertising campaigns on social networks; in the case of a B2B product, they may be the costs associated with onboarding a user. This is why retention is such a closely scrutinized metric.
Retention isn't all that easy to measure. Worse still, once you've measured it, it's even harder to understand. What makes your users abandon your product after a few sessions? What, on the contrary, drives your users to make a lasting commitment to your experience? These are the issues we're going to look at trough this guide.
First of all, how do you measure retention? There are several definitions of retention, and we propose to cover two of them today.
As you can see, the choice of definition can lead to very different observations in terms of retention. So when should you choose one measure or the other?It's never easy to establish absolute truths, as everything depends on your product. That's why both measures exist, as they are both relevant in different contexts. But, If you've launched a major marketing campaign, or a Product Hunt launch, then the n-days retention metric is relevant for measuring how the users in that cohort behave. If you're analyzing longer-term behavior, unbounded measurement is probably more relevant. Another relatively obvious example of the use of unbounded measurement is the context of your product. For example, if you operate an air ticket booking app, an n-days metric is not very relevant.However, there's one big advantage of n-day retention: it delivers definitive results. Unbounded retention is potentially subject to change at any time in the future. For example, imagine a user downloads a mobile app on day one, uses it a little on the first day and then doesn't use it again. He is therefore not included in the retention (n-day and unbounded) of the second day. But then, 182 days later, he decides to reopen the app. This action will have the effect of increasing the d2 retention 182 days later in the case of the unbounded measure.
That's it for the theory, now it's time to put it into practice. To analyze your users' retention with Vespucci, start by creating a new story. Use the template on the left to start your exploration.
You absolutely must have certain elements within your tagging plan to track user retention. However, some approaches are more demanding than others.
Identify your users' first session.
One approach is to create a first launch property. You'll need to define this property as a "user property" if you're using Amplitude, or attach it to an "identity" if you're using Segment. The advantage of this approach is its robustness. You don't have to go through your entire data set to find the first session of each of your users. The disadvantage is its lack of flexibility: it doesn't allow you to define the starting point of retention based on the performance of a specific action.
Event based approach.
The most obvious and flexible approach is to use the event flow of your taging plan. This allows you to calculate retention after the first occurrence of a specific action. However, this approach can be challenging, as it requires you to process and have access to all your historical data. Such an approach is even impossible to implement in certain Segment setups.
"Index" based approcah.
A final approach is an "hybrid" approach. It can be implemented in several ways. The simplest is to define the "first launch" property mentioned in the first approach on the basis of finer criteria. For example, you could track not the date of the first launch, but that of a particular, more relevant action. You could also consider implementing a more complex, but more flexible, solution based on a dictionary. The keys of this dictionary would consist of a series of remarkable properties that you would have identified beforehand, while their values would correspond to the time stamps associated with these actions