-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
"Test and release" and Analytics (missing pages) are added to TOC
- Loading branch information
Showing
4 changed files
with
509 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,209 @@ | ||
--- | ||
title: "Funnel analysis" | ||
description: "" | ||
metadataTitle: "" | ||
--- | ||
|
||
Adapty funnels are designed to assist you with such kinds of questions: | ||
|
||
1. What percentage of installs is converted to paying clients? | ||
2. What part of those who tried the product became loyal? | ||
3. Which steps show high drop-off and need more attention? | ||
4. Why do clients stop to pay? | ||
|
||
With a funnel chart, you may also find more insights about user behavior setting filters and groups. | ||
|
||
Funnels work with the data that we gather through SDK and store notifications and don't require any additional configuration from your side. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/10c99f9-CleanShot_2022-06-24_at_10.08.53.png" | ||
style={{ width: 'auto', border: 'none' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
### Funnel chart step by step | ||
|
||
Let's go through the elements of a funnel to understand how to read the user journey on the chart. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/ed5bf5d-CleanShot_2022-06-23_at_09.36.49.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
The 1st column (1) is the number of installs. It is shown as an absolute value (2) of total installations (not unique users) and also as 100% - the largest input number for further conversions relative calculation. If a user deletes an app and then installs it again two separate installs will be counted. | ||
A grey area nearby stands for transition parameters between steps. A conversion percent to the next step (Displayed paywall) is shown on a flag (3). Drop off percent and an absolute value of churn are shown below (4). | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/00416f9-CleanShot_2022-06-23_at_14.02.06.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
The 2nd column (5) shows the number of users of the app who saw a paywall at least one time (6). They are taken only from those installs that happened in a selected period. If a user sees a paywall in the selected period but his install date is out of range his view is not counted. | ||
There is also a percentage of such views taken from the 1st step (7). You may notice that this percent is equal to the grey flag (3) of the 1st step. This equality takes place only for these first steps. | ||
|
||
We collect data for this step from all your paywalls that use the `logShowPaywall()` method. So please be sure to send every paywall view to Adapty using this method as described in the [docs](https://docs.adapty.io/docs/ios-displaying-products#paywall-analytics). | ||
|
||
A grey area next to the 2nd column stands for transition. A conversion percent to the next step (Trial) is shown on a flag (8). Drop-off percent and the absolute value of churned customers after the paywall are shown below (9). | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/fb11650-CleanShot_2022-06-23_at_15.54.32.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
The 3rd column (10) shows the number of trials activated on the paywalls by customers who installed the app within a selected period (11). If a filter is set to non-trial product(s) this value becomes zero and the column is empty. | ||
|
||
See also a percent of trials taken from the 1st step, showing the conversion from installs to trials (12). | ||
You may notice that this percent is not equal now to the grey flag (8) of the previous step conversion. This is because we compare the current value with the 1st step at the top of the chart and with the previous step on grey flags. | ||
So a grey area next to the 3rd column shows a conversion percent to the next step (Paid) which is displayed on a flag (13). Drop-off percent and absolute value of churned customers during a trial period are shown below (14). | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/7b88909-CleanShot_2022-06-23_at_15.54.32_-_2.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
Starting from the trial you can hover on the step to see churn reasons. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/df40d2f-CleanShot_2022-06-23_at_17.36.08.png" | ||
style={{ width: 'auto', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
The 4th column shows the number of activated subscriptions (15). For products without trials, this number includes direct subscriptions from a paywall. For products with trials, it contains the number of trials converted into paid subscriptions. If you have both types of products, with trial and without, it will be a sum of both. | ||
|
||
The percent at the top shows the conversion from installs (16). | ||
The percent on a grey flag shows conversion to the next step (renewal to the 2nd period) (17). | ||
Drop off before the renewal to the 2nd period percent and absolute value are shown below the conversion (18). | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/d13bf9b-CleanShot_2022-06-23_at_15.54.32-3.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
This step starts a sequence of steps with a similar structure. After the 2nd renewal comes the 3rd, then the 4th, etc. If there is enough data in your app history you may see dozens of periods using the horizontal scroll. The logic for these steps remains the same: | ||
|
||
- percent from installs at the top, | ||
- percent from the previous step at the bottom, | ||
- the absolute amount of renewal at the top, | ||
- the absolute amount of churn at the bottom, | ||
- a hover for churn reasons pop-up. | ||
|
||
### Table view, filters and CSV export | ||
|
||
A funnel chart is enriched with data in a table to provide handy material for your work with numbers. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/4787aff-CleanShot_2022-06-23_at_21.01.44.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
This table repeats the approach of the funnel with some amendments. | ||
There are columns that show data on all steps except for the step of the 1st paid subscription. | ||
Instead of this one, there are two separate: Install -> Paid and Trial -> Paid. They display a core point of conversion when a free user becomes paying. | ||
|
||
It may seem that there is a product type division: Install -> Paid column shows only products without trials while the column Trial -> Paid contains only products with trials. But that's not exactly the way it works. Because we also consider those users whose trial has expired and they purchase a product with a trial like it doesn't have it at all. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/a9bcbc7-CleanShot_2022-06-23_at_21.29.12.png" | ||
style={{ width: 'auto', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
Diving deeper into numbers you will find filtering powerful tools for new hypotheses. | ||
Feel free to set conditions in different dimensions. Collect true insights based on data. | ||
Variate: | ||
|
||
1. Product type - economy, length, etc | ||
2. Time range. | ||
3. Country segmentation. | ||
4. Traffic attribution. | ||
5. Store. | ||
|
||
Select Absolute #, Relative %, or both to view only necessary data. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/1475e42-CleanShot_2022-06-23_at_21.50.33_-2.png" | ||
style={{ width: '7000px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
Finally, on the right of the control panel, there's a button to export funnel data to CSV. You can then open it in Excel, or Google Sheets, or import it into your own analytical system. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/ff23846-CleanShot_2022-06-23_at_22.15.49.png" | ||
style={{ width: 'auto', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
:::warning | ||
Be sure to indicate that your app is included in Small Business Program in [Adapty General Settings](https://app.adapty.io/settings/general). | ||
::: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,182 @@ | ||
--- | ||
title: "Retention analysis" | ||
description: "" | ||
metadataTitle: "" | ||
--- | ||
|
||
Retention charts can help with the following questions: | ||
|
||
1. How does your app retain clients from period to period? | ||
2. What products are more attractive and hold better? | ||
3. What groups of users are more loyal? | ||
4. Which level of retention can be used as a benchmark for growth? | ||
5. And of course, how can you save money investing in the attracted audience instead of capturing new. | ||
|
||
You'll find valuable insights about user behavior setting filters and groups. | ||
|
||
Retention is performed with the data that we gather through SDK and store notifications and don't require any additional configuration from your side. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/86dc5ac-CleanShot_2023-01-09_at_18.56.15.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
### How do we calculate retention? | ||
|
||
Observing the retention chart, you see how the number of users depends on the step they take: trial (if the checkbox "show trials" is checked), the 1st payment, the 2nd payment, etc. Let's specify what users are counted when you choose a date range for the retention chart. | ||
For example, you've selected the last 3 months in the calendar, and the checkbox "show trials" is unchecked. This means we count only those who have had their 1st subscription during the last 3 months. If the checkbox "show trials" is checked and the 3 last months are selected in the calendar we count all those who have had their trials during the last 3 months. For these subscribers, we show the absolute retention for the Nth step as the number of those who have had the Nth payment. And we calculate a relative value of retention for the Nth step as a ratio of the absolute amount of the Nth payment to the total amount of subscriptions (or trials) during the selected time range. | ||
|
||
:::info | ||
Retention changes retrospectively | ||
|
||
Regardless of when you check the chart, the baseline number (100%) remains the same for the selected period of time. Meanwhile, the retention to the next period may grow over time. | ||
For example, for a Monthly subscription, if there are 20 first purchases made between Dec 1 and Dec 31, it is expected that retention to the second period will grow throughout January (and possibly even after) while users will be entering the next subscription period in time or later for some reasons (e.g. grace period). | ||
::: | ||
|
||
### Retention opportunities | ||
|
||
Let's see how to get more from the Adapty retention feature. | ||
Having not only a pure passion for numbers but more willingly seeing real business value after implementing analytical results, we may think about the purposes first. With a deep dive into chart features, it would be nice to clear up the impact this data can have. | ||
So let's keep in a glance together WHY and HOW. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/e501382-CleanShot_2022-07-11_at_21.09.20.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
1 - work with the audience. | ||
First of all, retention is about the target audience, its preferences, and whether your product meets their expectations or not during the consuming lifetime. If you have wondered how to measure the core relationship of your business that generates money - retention is at your service. | ||
Such a measurement benefits because it's usually cheaper to sell to your customer than to a stranger. And this cost is low for two reasons: less effort to sell and higher average check. So it might be a good idea to invest in your subscribers' loyalty when retention goes down. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/e10de4a-CleanShot_2022-07-11_at_21.06.45.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
2 - work with the product. | ||
The second reason WHY is that retention charts show the actual consuming lifetime of your product and let you forecast in long term. And if you want to improve, correct the job that delivers the product to change its lifetime, and then forecast again to become closer to your business targets. Such updates may be a part of a strategic vision working together with a forecasting routine. And yes, this process never ends because we all run fast to be at the same place in a constantly changing environment. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/26a7026-CleanShot_2022-07-11_at_21.36.36.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
3 - work with the market. | ||
Moving faster than the main competitors is good but sometimes jumping out of the ordinary race may bring more benefits. When you analyze the behavior of users in different countries and stores, some local peculiarities can open outstanding insights and new opportunities for the business. Cultural and market context can be analyzed from the perspective of retention to be later used for segmentation and further development. For example, you may find blue water in some regions and grow there faster. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/cee8bd6-CleanShot_2022-07-11_at_22.02.39.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
The usage of retention data is of course, not limited to this basic interpretation but it may be a good start if you want to get real value fast. | ||
|
||
### Curves, table view, filters and CSV export | ||
|
||
Now when we are on the same page with retention purposes and basic ways of interpretation let's go through the tools that make it all handy. | ||
The core of the retention feature in Adapty is the chart. It shows how retention level depends on the steps of a customer's lifetime. | ||
The steps are shown on the horizontal axis: Trial, Paid (the 1st subscription), P2 (the 2nd subscription), P3, P4, etc | ||
Please mind that the axis starts with the Trial step only when the checkbox "Show trials" is selected. | ||
For data calculation, this checkbox works as follows. When "Show trials" is selected and the axis starts with the Trial step, you see only scenarios that contain trials, no transactions directly from installs are shown and the step Paid contains only transactions that come from trials. When "Show trials" is not selected, and the axis starts with a Paid step, this first step contains all first transactions including both from trials and directly from installs. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/d849428-CleanShot_2022-07-12_at_11.24.57.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
When you hover over the chart, a pop-up with a data summary is displayed. And if you hover over a column in the table below, you also see a summary pop-up with relevant data on the chart. | ||
The table contains the same grouping and filters chosen for the chart. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/e8803c2-CleanShot_2022-07-12_at_11.50.48.png" | ||
style={{ width: '700px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
Feel free to combine filters and grouping for advanced analysis. Collect true insights based on data. | ||
Variate: | ||
|
||
1. Product type. | ||
2. Duration. | ||
3. Time range. | ||
4. Country. | ||
5. Traffic attribution. | ||
6. Store. | ||
|
||
Use #Absolute and %Relative control to view the necessary data. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/d891f77-CleanShot_2022-07-12_at_12.43.11.png" | ||
style={{ width: '7000px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
|
||
|
||
Finally, on the right of the control panel, there's a button to export funnel data to CSV. You can then open it in Excel, or Google Sheets, or import it into your own analytical system to continue analysis and forecasting in your preferred environment. | ||
|
||
|
||
<div style={{ textAlign: 'center' }}> | ||
<img | ||
src="https://files.readme.io/f351197-CleanShot_2022-07-12_at_13.26.49.png" | ||
style={{ width: '7000px', border: '1px solid grey' }} | ||
/> | ||
</div> | ||
|
||
|
||
|
||
:::warning | ||
Be sure to indicate that your app is included in Small Business Program in [Adapty General Settings](https://app.adapty.io/settings/general). | ||
::: |
Oops, something went wrong.