Lifecycle lists

Use Airship’s automatically-generated lifecycle information about your app users to target specific audience members.

Audience Lists are messaging recipient groups based on either your own data or automatically-generated app user lifecycle information. You can use audience lists to target specific users. This document explains Lifecycle audience lists.

About Lifecycle lists

Lifecycle lists are automatically generated audience lists that capture app open, uninstall, notification, and dormancy information within the past 24 hours, one week, or 30 days. For example, with Lifecycle lists you have a built-in recipient list of all users who have opened your app in the past 7 days. You can disable Lifecycle list auto-generation.

There are six Lifecycle list types:

  • First App Open — Opened the app for the first time within the given time interval.
  • Opened App — Opened the app within the given time interval.
  • Uninstalls — Devices that have been marked as uninstalled within the given time interval. Note that you must attempt to send a push to an uninstalled device before our system marks it as uninstalled. For details, please see Detecting Uninstalled Devices.
  • Sent Notification — Devices that have received a notification within the given time interval.
  • Direct Opens — Opened the app directly from a notification within the given time interval.
  • Dormant — Given a time interval X, the dormant list contains users that have not opened the app in the last X days, but did open the app at least once in the X days prior to not opening the app. Tooltips provided in the UI give actual values.

Android devices with faulty registrations may be included in the Uninstalls list regardless of whether or not they have an active installation of your app. Consequently, the Uninstalls list may contain a small number of devices that have not actually uninstalled your app.

See error “Unregistered Device” in Android’s Downstream message error response codes.

List intervals and data

The data for each list type is presented in time intervals:

  • Last Whole Day — Defined as a period of time commencing and terminating at midnight UTC
  • Last 7 Days
  • Last 14 Days — Sent Notifications list only
  • Last 30 Days

In Audience » Lists » Lifecycle, each list displays the following per time interval:

  • Processing status
  • Days and dates (UTC)
  • Day and date when the list was last processed
  • Devices count —  The number of channels associated with the list.

    As with Uploaded ListsA reusable audience list that you create. Uploaded lists are static and updatable. In the API, they are referred to as Static Lists., the Devices count includes both users who are opted-in and opted-out of push. For example, if you send a push to a list of 1,000 devices where 600 of the devices are opt-in, only 600 devices will receive that push, whereas an in-app message would go to all 1,000 devices. This distinction between a list’s Devices count (total devices) and opt-in devices is important to know when viewing a push-to-list’s Total Sends metric — Total Sends will correspond to opt-in devices rather than the Devices count.

You can also retrieve Lifecycle list information using the /lists API endpoint.

Use cases

You can use Lifecycle lists to target users with personalized messages based on their behaviors:

Use cases per list:

  • First App Open: Target users that have been acquired recently.

    • Engage with newly-acquired users, sending specific messages that help them understand the benefits of your app.
    • Guide users to specific areas of your app experience that they might not know about.
    • Welcome customers and deliver an incentive to open the app again.
  • Opened App: Target users according to active-user status.

    • If your app is focused on daily or weekly users, e.g., a gaming app, use the Last Whole Day or Last 7 Days Opened App list to target your most active users.
    • For lifestyle or retail apps, the Last 30 Days list can be used to message users that have engaged, pushing them to a conversion point in the app such as making a purchase.
  • Uninstalls: Target users (via non-push channels) who have uninstalled your app.

    • Use this list to export devices that have uninstalled your app. Consider messaging them via a different channel regarding the value and utility of mobile notifications.
    • Augment your data warehouse with this information to investigate why they uninstalled your app.
  • Sent Notifications: Filter out users who have already received a message.

  • Dormant: Target previously active customers who have not engaged with the app recently.

    • Send special offers to previously active users, incentivizing re-engagement with your app.
    • Send messages that describe the value and benefit of your app to users who have become dormant. Encourage re-engagement by describing new app versions and features.
    • Export the dormant list into your CRM and follow up with customers using a different communication method.

Enabling Lifecycle lists

Go to Audience » Lists » Lifecycle, and click Turn On. The lists are available 24 hours after you enable them; the delay is necessary in order to populate the minimum data required for the shortest time interval, Last Whole Day.

Using Lifecycle Lists

  • Message audience — Select a Lifecycle list when defining your audience in the Message and A/B Test composers. See: Target Specific Users. To send to a list using the API, see the Static Lists API documentation.


    If a Lifecycle list is processing, you will not be able to send to the list until processing has finished.

  • Segments — Include a Lifecycle list in a SegmentA grouping of audience members selected by unique or shared identifiers. Multiple identifiers can be combined within a segment.. See: Create reusable audience segments. This is essentially the same process used when defining your audience in a composer, but the audience information is saved for reuse for other messages.

  • Add to a backend system — Download a CSV of your Lifecycle list data for use in another system. Click the arrow icon at the end of a list’s row, and save the file. Lifecycle lists can only be downloaded by a project Owner or Administrator.

    Each row of the CSV has two columns: device type and channel ID; add the users’ channel IDs to your CRM or other backend system. How you use this data depends on your backend integration:

    1. You maintain a mapping of channel IDs to customer IDs (such as named users) in your system. If this is the case, you have all the information you need! Feed the channel IDs into your backend system for further analysis.

    2. You don’t have a mapping, but you do have named users integrated with your app. In order for the downloaded list data to be usable, you need to get the named user associated with each channel:

      1. Use the named users listing endpoint to get a paginated list of named users and their associated channels.
      2. Iterate through the list of named users and their channels, mapping the channels contained in your downloaded list to the appropriate named user. How you accomplish this step is up to you. You may want to write a simple script that compares the named user list generated in step 1 with the downloaded list.
      3. Now that each channel on the downloaded list has an associated named user, you may add the channels to your backend system.