On this page

How time works in a retention analysis

Amplitude Academy

Drive Product Adoption with Retention Analysis

Learn how the Retention chart can help drive product adoption.

Get started

In a Retention Analysis chart, you can define a day in two ways: a rolling 24-hour window or a strict calendar date. The method you choose can affect your results.

Amplitude treats a day as a rolling 24-hour window by default, which is different for each user. Each day is exactly the same length, no matter when the user triggered the starting event. For example:

  • The beginning of the 24-hour window starts when a user triggers the starting event (Day Zero).
  • Day 1 runs from hour 24 to hour 48.
  • Day 2 from hour 48 to hour 72, and so on.

When using strict calendar dates, a day starts when the calendar day starts, and ends when the calendar day ends. Amplitude then determines daily retention by:

  • The timezone specified in your project settings.
  • The specific calendar day instead of on an hourly basis.

Retention using 24-hour windows

The way Amplitude calculates retention depends on whether you're looking for daily, weekly, or monthly retention rates. When using a 24-hour window to measure a day, Amplitude calculates the retention rates as the following:

  • Daily: Amplitude computes daily retention on an hourly basis. Amplitude rounds down event timestamps to the most recent hour. An event triggered at 4:59 pm has a timestamp of 4:00 pm. Amplitude counts the user as next-day retained if they trigger any event during or after the 24th-incremented hour, but before the 48th-incremented hour.

When a user triggers the initial event multiple times, Amplitude starts multiple 24-hour buckets for them. One return event can define a user as both Day 1 and Day 2 retained.

  • Weekly: Amplitude computes weekly retention on a daily basis. A week is seven days.
  • Monthly: Amplitude computes monthly retention on a daily basis. A month is 30 days.

For instance, suppose three users triggered the following events. User 1 is measured for daily retention, User 2 for weekly retention, and User 3 for monthly retention.

  • Wednesday, December 1st
    • User 1 triggered their first event at 5:59 PM.
    • User 2 triggered their first event.
  • Thursday, December 2nd
    • User 1 triggered their second event at 5:00 PM.
  • Monday, December 6th
    • User 2 triggered their second event.
    • User 3 triggered their first event.
  • Sunday, December 12th
    • User 3 triggered their second event.

Amplitude counts User 1 as Day 1 retained (next-day retained), because their second event's timestamp (5:00 PM) was during the 24th-incremented hour after the timestamp on the original event (5:59 PM).

User 2 is Week Zero retained because they triggered their second event (December 1st) within seven days from the first event (December 6th). They would be Week 1 retained if they triggered an event on any day between December 8th and December 14th (days 8-14).

When considering User 3 for monthly retention, Amplitude counts them as Month Zero retained because they triggered the return event within 30 days from the original event (event one on December 6th and event two on December 12th).

Any retention computations that include dates of August 17, 2015 or earlier use calendar time instead.

Retention using strict calendar dates

Amplitude can also measure retention by strict calendar dates, where day X is measured from the calendar date the event was triggered. The way Amplitude calculates retention depends on whether you're looking at retention on a daily, weekly, or monthly basis.

When measuring a day by strict calendar dates, Amplitude measures retention by the following:

  • Daily: Daily calendar dates start when the calendar day starts and end when the calendar day ends. The timezone specified in your project settings determines the calendar view. Under the strict calendar view, daily retention is based on the calendar day instead of on an hourly basis.
  • Weekly: Weekly calendar dates determine the beginning and end of each week. The timezone specified in your project settings defines a week. There you can also specify the first day of your week.
  • Monthly: Monthly calendar dates determine the beginning and end of each month. The timezone specified in your project settings defines a month.

Using the user activity example above, the retention rates are:

  • Daily retention for User 1: Amplitude counts this user as next-day retained because they fired their second event during the next calendar day (December 2nd). Had they fired their return event on December 1st before 11:59 PM, Amplitude would consider them Day Zero retained.
  • Weekly retention for User 2: If a week starts on Monday, User 2 is Week 1 retained because they triggered their return event on December 6th, after the end of the week of their original event (Monday, December 1st to Sunday, December 5th).
  • Monthly retention for User 3: Amplitude counts User 3 as Month Zero retained because they triggered both their original and return events within the same month (December).

Users who trigger the starting event multiple times are still restricted to the calendar day they first triggered the starting event. The exception is when a user triggers the starting events on multiple calendar days; in this case, Amplitude includes that user in multiple interval cohorts.

Retention types

For new user retention, filter conditions applied in the Segmentation module are only satisfied if they're true during the same time frame the new user event was triggered. For charts using strict calendar dates, this is the same as the chart interval. For charts using unaligned ranges, the time frame is more granular: for example, the first day for seven-day windows and the first hour for 24-hour windows.

This table further delineates the differences between 24-hour windows and strict calendar dates by retention types Return on or After and Return On.

Was this helpful?