Retention helps you understand whether users are returning to your product over time, providing insights into your product's growth and customer engagement.
Retention analysis, also known as cohort analysis, groups users based on shared characteristics or behaviors, such as new visitors within a specific time period. This approach helps product teams track user behavior trends and assess the effectiveness of retention strategies.
A high retention rate indicates that users find value in your product and are likely to continue using it, leading to increased customer loyalty and revenue. In contrast, a low retention rate might signal dissatisfaction or disengagement, prompting the need for improvements or adjustments to your product or user experience.
Tip: For a quick overview of retention concepts and considerations, see our Retention report FAQs.
Within retention analysis, you have two cohort types to measure by:
- New user retention. This measures the percentage of first-time visitors or accounts who return to your product within a specified timeframe, providing insights into the initial user experience and the effectiveness of user acquisition strategies.
- All user retention. This measures the percentage of all visitors or accounts who continue engaging with your product over time, reflecting long-term satisfaction and loyalty within your user base.
Note: The retention report presents data for identified users only. Anonymous visitors aren't included.
Create a retention report
To create a new retention report, select Behavior from the left-side menu, then select Create report > Retention.
Step 1. Define an activity source
Your Activity source selection determines the app and activity included in your retention analysis. It serves as both the starting event, indicating the visitor or account's initial interaction, and the return event, indicating subsequent engagement.
To choose your activity source, select the Edit icon within the Activity source field of the query builder, or select + Select activity from the empty state on the right side of the report to open the Select activity window.
In the first dropdown menu, select the type of activity that you want to measure retention for:
- Any activity. This allows you to select a specific app or app group, which includes any activity of all Pages, Features, and Track Events for the selected app. Retention percentages increase when visitors generate any activity within that app.
- Events. This allows you to select a specific Page, Feature, or Track Event. Retention percentages increase only when visitors interact with that specific event, enabling precise measurement of a particular Page, Feature, or Track Event for any segment.
After selecting the activity type, use the provided filters and search field to locate and choose a specific app, app group, or event.
Step 2. Select a cohort type
For Cohort type, you can choose to measure retention for new visitors or accounts, or for all visitors or accounts. This distinction categorizes cohorts into two specific types: new user retention and all user retention.
New user retention focuses on visitors or accounts who interacted with your app or a specific event for the first time. Measure by new user retention if you want to assess the effectiveness of your onboarding process and user acquisition strategies.
All user retention measures retention for all users included in the selected segment, regardless of whether they're net new users or interacted with an event previously. Measure by all user retention if you want to know how many visitors or accounts are continually returning to your product.
Note: If you choose to measure retention for accounts, this requires at least one visitor from that account to interact with your specified app or event.
New user retention
New user retention measures the percentage of first-time visitors or accounts who return to your product or engage with a specific event within a specified timeframe.
When measuring new user retention for Any activity in the app, the "First Visit" value for visitors and accounts determines which users are included in the retention analysis.
When measuring new user retention for a specific event (Page, Feature, Track Event), a visitor or account's first interaction with that event determines which users are included in the retention analysis.
To calculate new user retention, we divide the number of first-time visitors or accounts who have returned to the selected event or app in the subsequent period by the visitors who have had the possibility of being retained until that month. (This means that we exclude visitors from the denominator who haven't been around long enough to reach that month in their product lifecycle.)
All user retention
All user retention tracks the percentage of all visitors or accounts who continue to engage with your product or event over time, regardless of whether they're new or returning users.
When measuring all user retention, we measure retention for everyone included in the selected segment, rather than net new visitors or visitors who first interacted with an event.
To calculate all user retention, we divide the number of people who have returned to your app in that cohort period by the visitors who have had the possibility of being retained until that month. (This means that we exclude visitors from the denominator who haven't been around long enough to reach that month in their product lifecycle.)
Step 3. Choose a cohort size
For Cohort size, select whether you want to divide your user base into monthly, weekly, or daily cohorts.
In retention analytics, one month is defined as 30 days, and one week is defined as 7 days. This means that each individual visitor or account has its own 30-day or 7-day timeframe that rolls up into a cohort.
Here's how each visitor or account's timeframe is calculated when using a 1 month cohort size, which shows data in 30-day increments:
First visit | Month 0 | Month 1 | Month 2 | |
User A | April 15 | April 15 to May 14 | May 15 to June 13 | June 14 to July 13 |
User B | April 30 | April 30 to May 29 | May 30 to June 28 | June 29 to July 28 |
Similarly, here's how each visitor or account's timeframe is calculated when using a 1 week cohort size, which shows data in 7-day increments:
First visit | Week 0 | Week 1 | Week 2 | |
User A | April 15 | April 15 to April 21 | April 22 to April 28 | April 29 to May 5 |
User B | April 30 | April 30 to May 6 | May 7 to May 14 | May 15 to May 21 |
Step 4. Select a segment
The default Segment is everyone who visited your product or app. Update your desired target group as needed.
When using a segment with an account-level based rule (for example, Account ID = Acme Org
), you're measuring the retention for visitors under accounts that meet the specified criteria. For example, consider the retention filters are set to All activity, New visitors, 1 week, and Last 6 weeks (April 1 to May 13).
- If Visitor A first visited your app on March 1 with
Account ID = Globex Co
, they wouldn't show up in the report if the segment was set to everyone. - However, if the segment was set to
Account ID = Acme Org
and the first event that had Visitor A attached to Account Acme Org was May 1, then Visitor A would appear in the report.
Step 5. Select a date range
The Date Range determines the time period over which retention is measured and what displays in the chart. Depending on your cohort size selection, you can choose weeks or months.
When using a cohort size of 1 week, the default date ranges of Last 6 weeks, Last 9 weeks, and Last 12 weeks are adjusted to ensure that the cohorts include an entire week of data, with each weekly cohort starting on a Sunday.
For example, if today's date is Wednesday, May 6 and for a cohort size of 1 week and a date range of Last 6 weeks, the retention chart shows data for the following 6 weekly cohorts:
- Sunday, March 22 to Saturday, March 28
- Sunday, March 29 to Saturday, April 4
- Sunday, April 5 to Saturday, April 11
- Sunday, April 12 to Saturday, April 18
- Sunday, April 19 to Saturday, April 25
- Sunday, April 26 to Saturday, May 2
Sunday, May 3 through Wednesday, May 6 aren't included in the default Last 6 weeks date range since those dates would only create a partial week.
Step 6. Run your report
After making your selections, select Run in the bottom-right corner of the query builder to generate the retention report.
To maximize space for the report, select the Collapse query icon in the bottom-left corner of the query builder. You can also drag the right edge of the query builder to resize it.
Interpret your retention report
After you run your report, a line chart and breakdown table populate.
Trending over time chart
The line chart shows retention trends over time based on what you selected in your query. The x-axis is the timeframe set in the query, and the y-axis is the percentage of visitors or accounts retained during that timeframe.
Hover over a data point to see the percentage of users who were retained from the previous time period, as well as the difference in retention from one time period to the next. You can also select a data point to view retained and dropped users associated with that cohort.
Each row in the report represents a cohort, which is why retention analytics is often referred to as cohort analytics. Cohorts are defined by their type (new or all, visitors or accounts) and their size (week or month).
When measuring a time period that includes the current week or month, the end of the chart always shows a drop-off. This is because the following time period (week or month) must complete (finish out the 7-day or 30-day period) to properly determine if the user was retained. After the next period completes, the data for this time period will be fully populated.
For example, if you’re running this report on July 15, then the month of June will show a drop-off in the chart. This is because the month of July hasn’t finished yet, so the data isn’t yet complete to measure if users from the month of June were retained in July.
If you're looking at a custom range from a previous period that doesn't end in the most recent time period, then data only displays a drop-off if an actual drop-off occurred.
Use the dropdown in the top-right corner of the chart to update the cohort shown in the chart. The x-axis and breakdown table automatically update to match the data in this cohort.
Select the Show data labels checkbox to add the percentages above each data point in the chart.
If you want to export the chart as a PNG file, select the Download PNG icon located in the top-right corner of the chart.
Breakdown table
The breakdown table is directly below the line chart. By default, it shows the Chart breakdown. This is a visual representation of all of the data plotted in the line chart, for the cohort selected in the dropdown within the line chart.
You can view a breakdown of retention for each cohort by selecting the table title and then selecting Cohort breakdown.
In the cohort breakdown view, each row represents a cohort. Cohorts are defined by their type (new or all, visitors or accounts) and their size (week or month).
Each cell within a row represents the retention of a specific cohort, indicating the percentage of visitors or accounts who returned to your app or specific event after each week or month passed.
The color scheme in the report corresponds to different retention percentages:
- Darkest blue: 80 to 100% retention
- Second-darkest blue: 60 to 79% retention
- Middle-shaded blue: 40 to 59% retention
- Second-lightest blue: 20 to 39% retention
- Lightest blue: 0 to 19% retention
The first week or month (Week 0 or Month 0) always displays 100% retention since all visitors within the cohort accessed your app or specific event. (Otherwise, they wouldn't be eligible for that cohort.)
The second week or month (Week 1 or Month 1) indicates how many users returned to your product in the following 7 days or 30 days, depending on your selected cohort size.
For example, if you had a total of 100 visitors in December 2023 and the retention report indicates that 33% of your visitors returned in Month 1, approximately 33 out of 100 visitors visited your app or interacted with the specific event again during the subsequent 30-day period, which falls within the 30 to 60-day window of their product lifecycle.
All cells are independent of each other, so you might notice an increase in percentage in some instances, indicating more visitors used your app during that timeframe.
Tip: When you observe an increase, investigate the cause. For example, did you publish a guide to prevent users from leaving your product prematurely? Did your support team resolve more issues, encouraging users to return? Identifying the reason for the spike can guide future strategies.
An asterisk (*) next to a percentage indicates that the number is subject to change because there's still time remaining for the month (30-day increment) or week (7-day increment) for that cohort.
In new user retention, a visitor or account appears in only one cohort since they can only be a net new visitor or account or interact with an event for the first time once. Thus, the top row in the chart represents a sum of all visitors in each cohort.
In all user retention, visitors appear in each cohort where they interacted with your source. In this case, the top row in the chart doesn't reflect a sum of all visitors in each cohort, as a single visitor might appear in multiple cohorts if they return to your app over multiple months. Instead, the top row reflects all unique visitors who interacted with your specified source in that time period.
To export the breakdown table as a CSV file, select the Download CSV icon located in the top-right corner of the table. This export option includes the data that's currently shown in your table.
View retained and dropped users
If you select a data point within the chart or a cell within the breakdown table, a panel opens and displays the list of unique visitors or accounts that were retained for the given period. The list displays the total number of unique users that form that particular cohort percentage and a list preview of up to 250 Visitor or Account IDs. Selecting a Visitor or Account ID directs you to the visitor or account's details page.
Similarly, you can select the Dropped visitors or Dropped accounts tab to view which users (up to 250) were present in the previous period but didn't return in the subsequent period.
At the bottom of the panel, select Export CSV to download the entire list of Visitor or Account IDs from the selected cohort with your preferred metadata values in the CSV file. Add your preferred metadata, then select Generate CSV.
Save and share your retention report
Once you finish building and interpreting your report, you should save your report so that you can easily return to your findings or modify your query as needed. You can also share your findings with others at the time of saving.
- To save your retention report, select Save in the top-right corner of the page.
- Enter a Report Name and Description
- If you’d like other users in your Pendo subscription to view and edit the report, update the Visibility to Everyone. (If your user account is only assigned the Viewer role, you can only choose Only Me.)
- If you’d like to add the report to an existing dashboard for quick access, select the dashboard name from the Add to Dashboard dropdown menu.
- Select Save Report. You can now access the report through Behavior > Retention and Behavior > View all reports.
As long as you choose the Everyone visibility at the time you save the Retention report, all Pendo users in your subscription can access the report through Behavior > Retention or Behavior > View all reports.
If you need to update the visibility, simply select your report from the Saved Reports page, ensure Visibility is set to Everyone using the Share icon at the top of the report, then share the URL found in the address bar in your web browser or let them know it's available to view on the Saved Reports page.
As an alternative to direct sharing, you can also add the report to a dashboard using the Retention widget and share the dashboard with that user. You can do this by adding a new dashboard widget to a dashboard or by selecting Add to Dashboard at the top of an existing report.