Skip to main content

Customer Lists

RevenueCat Customer Lists allow you to cohort and export groups of customers based on some interactions with your app and/or purchase behavior.

Lists are a segment of your customers inside RevenueCat, this can include both paying and non-paying users. Some lists are created automatically for every project (see Default lists below) and you can also create custom lists with your own defined filter logic.

๐Ÿ“˜

If you're on a legacy Free plan and want to access custom lists or export lists, migrate to our new pricing via your billing settings.

๐Ÿ“˜Sandbox Customers

The Customers dashboard tab doesn't support toggling the 'View sandbox data' switch as there is no concept of a sandbox customer in RevenueCat, only sandbox transactions.

To view customers who have made sandbox transactions you can use the default Sandbox list or apply the 'Made Sandbox Purchase' filter to a list.

Find an Individual Customerโ€‹

You can look up an individual customer by an exact match of their App User ID, Transaction ID, Email Attribute, or Order ID (iOS only). To find a customer via Order ID, you can follow our guide on setting up In-App Purchase Keys to unlock this feature. The transaction must show as completed in the Apple Purchase History to be considered a valid Order ID. Note that Transaction ID refers to the identifier in Google Play console and order emails of GPA.1234.1223โ€“, and for Stripe si_abcefg, whereas Order ID refers to the identifier from Apple's order emails.

Looking up customers in RevenueCat is real-time, as soon as a customer exists in RevenueCat they will be searchable here.

Viewing a Listโ€‹

Choose a projectโ€‹

Customer lists are created on a per-project basis, you must select a project before viewing a list. Lists cannot be combined across projects inside of RevenueCat. Screenshot 2023-03-27 at 1.00.35 PM.png

Default listsโ€‹

app.revenuecat.com_overview.png

RevenueCat creates some default lists for every project. Default lists should give you insight into every customer that has ever made any purchase.

Default ListDescription
ActiveAny customer with an active subscription or trial.
SandboxAny customer who has any sandbox transaction associated with their App User ID.
Non-subscriptionAny customer with a non-subscription purchase associated with their App User ID.
ExpiredAny customer with an expired subscription or trial.
๐Ÿ“˜Promotionals are not considered 'Active'

If a customer has a Promotional transaction, they are not considered as 'Active'. Note that if a customer has an active subscription + Promotional, they will not be counted in the Active Customer List.

Custom listsโ€‹

In addition to Default Lists, you can create new Custom Lists with any combination of AND filters. See the section below on 'Filters' for a full description of available filters.

app.revenuecat.com_lists_list0332b22d97 (1).png

๐Ÿ“˜Custom lists are shared across collaborators

Any custom lists you create will also be visible to any project collaborators with Read or Admin privileges.

Overview Metricsโ€‹

For each list, RevenueCat computes overview metrics for the cohort of customers.

MetricDescription
CustomersThe total number of customers in the list.
Active TrialsThe total number of active trials. This includes trials which are cancelled, or in their grace period, and have not yet expired.
Active SubscriptionsThe total number of active subscriptions. This includes subscriptions which are cancelled, or in their grace period, and have not yet expired.
Total RevenueThe total revenue (USD) that the list of customers has generated, minus refunds.
๐Ÿ“˜Active Subscribers vs. Active Subscriptions

Active "subscribers" may be lower than your count of all active "subscriptions" (e.g. in Overview or Charts) if some customers have multiple active subscriptions.

List Dataโ€‹

For each list, RevenueCat displays the 100 most recently seen customers in the dashboard. The dashboard shows the App User ID, purchase status, total spent (USD) and the latest product identifier purchased. Additional columns are available when exporting data.

๐Ÿ“˜Customer lists are refreshed every 2 hours

For lists with the filter Only Customers with Purchases enabled (see our Filters section below), deleted users will be removed in a matter of seconds. For lists without this filter, it will take up to 30 minutes for a deleted user to be removed.

Filtersโ€‹

Filters allow you to choose which customers appear in your list. You can create custom lists with any combination of filters. All filters are applied as AND filters. The first filter is a default filter applied to every customer list. You can choose whether the list should be limited to only those customers that have purchases (e.g., started a trial, started a subscription, or made a non-subscription purchase) or not. Lists that are limited to only customers with purchases typically load much faster, because there are many more customers without transactions than those with transactions.

๐Ÿ“˜

Filtering customers by purchase is being rolled out gradually, so you may not see this option available in your lists immediately.

See the table below for additional filters you can apply to your lists.

FilterTypeDescription
AdStringThe $ad Attribute for the customer.
Ad GroupStringThe $adGroup Attribute for the customer.
Auto Renew IntentBoolWhether the customer has opted out of auto-renew or not.
CampaignStringThe $campaign Attribute for the customer.
Cancellation DateDateThe date the customer unsubscribed from their subscription. Will be set back to null if the customer later resubscribes.
CreativeStringThe $creative Attribute for the customer.
EmailStringThe $email Attribute for the customer.
First Purchase DateDateThe date of the customer's first transaction.
First Seen DateDateThe date the customer was first seen by RevenueCat.
GPS Ad IdStringThe $gpsAdId for the customer.
Granted RC PromotionalBoolWhether the customer has been granted a Promotional Subscription or not.
IDFAStringThe $idfa Attribute for the customer.
IDFVStringThe $idfv Attribute for the customer.
KeywordStringThe $keyword Attribute for the customer.
Last Seen CountryStringThe two-letter ISO 3166-1 alpha-2 code of the country where the user was last seen, determined by IP address.
Last Seen DateDateThe date the customer was last seen by RevenueCat.
Latest EntitlementStringThe latest Entitlement unlocked by the customer.
Latest Expiration DateDateThe latest expiration date of the customer's Entitlement.
Latest ProductStringThe customer's latest purchased product identifier.
Latest Purchase DateDateThe customer's latest transaction date.
Latest Renewal DateDateThe customer's latest renewal date. This could be the same as the Latest Purchase Date.
Latest StoreMulti SelectThe latest store the customer purchased from.
Media SourceStringThe $mediaSource Attribute for the customer.
Number of RenewalsIntegerThe total number of renewals the customer has had. A trial conversion is considered a renewal.
Phone NumberStringThe $phoneNumber Attribute for the customer.
Total SpentIntegerThe total revenue (in USD) spent by the customer.
Trial Cancellation DateDateThe date the customer unsubscribed from their free trial. Will be set back to null if the customer later resubscribes.
Trial End DateDateThe date the customer's free trial expires.
Trial Start DateDateThe date the customer started their free trial.
Made Non-subscription PurchaseBoolWhether the customer has made any non-subscription purchases or not.
Made Sandbox PurchaseBoolWhether the customer has made any sandbox purchases or not.
StatusMulti SelectThe latest status of the customer.
๐Ÿ“˜Date filters are start of day

Selecting any date filters will apply to the start of the day. For example, 2021-01-01 will be 2021-01-01T00:00:00 under the hood.

Exporting Dataโ€‹

The complete list of customers in a list can be exported as a .csv file. Exports are processed in the background, and you'll receive an email with a link to download the file. Emails are sent to the logged in account that requested the export. The download links are shareable and available for 30 days.

Below is a description of the .csv format for the exported data.

Column NameDescription
app_nameThe name of the app in RevenueCat.
app_uuidA unique identifier for the app in RevenueCat.
app_user_idThe customer's user identifier in RevenueCat.
first_seen_atEpoch timestamp in milliseconds when the customer was first seen by RevenueCat.
last_seen_atEpoch timestamp in milliseconds when the customer was last seen by RevenueCat.
ip_countryThe two-letter ISO 3166-1 alpha-2 code of the country where the user was last seen, determined by IP address of the customer API request.
has_made_sandbox_purchaseBoolean indicating whether the customer has made any sandbox purchases.
latest_entitlementThe most recently unlocked RevenueCat Entitlement identifier.
latest_productThe most recently purchased product identifier.
is_rc_promoWhether the most recent transaction was a RevenueCat Promotional.
first_purchase_atEpoch timestamp in milliseconds of the customer's first transaction.
most_recent_purchase_atEpoch timestamp in milliseconds of the customer's most recent transaction.
trial_start_atEpoch timestamp in milliseconds when the customer started a free trial.
trial_end_atEpoch timestamp in milliseconds of the customer's free trial expiration date.
most_recent_renewal_atEpoch timestamp in milliseconds of the customer's most recent renewal transaction.
latest_expiration_atEpoch timestamp in milliseconds of the customer's latest expiration date. If greater than now, then the customer has an active subscription.
subscription_opt_out_atEpoch timestamp in milliseconds when a subscription or trial cancellation was detected by RevenueCat.
trial_opt_out_atEpoch timestamp in milliseconds when the latest trial cancellation was detected by RevenueCat.
total_renewalsThe total number of subscription renewals for the customer.
total_spentThe total amount spent by the customer in USD.
latest_storeThe latest store that the customer purchased from.
latest_auto_renew_intentBoolean indicating whether the customer has chosen to have their subscription or trial auto-renew.
all_purchased_product_idsA comma separated list of all the product identifiers purchased by the customer.
most_recent_billing_issues_atEpoch timestamp in milliseconds when a subscription billing issue was detected by RevenueCat.
emailThe $email Attribute for the customer, if set.
phone_numberThe $phoneNumber Attribute for the customer, if set.
media_sourceThe $mediaSource Attribute for the customer, if set.
campaignThe $campaign Attribute for the customer, if set.
ad_groupThe$adGroup Attribute for the customer, if set.
adThe $ad Attribute for the customer, if set.
keywordThe $keyword Attribute for the customer, if set.
creativeThe $creative Attribute for the customer, if set.
idfaThe $idfa Attribute for the customer, if set.
idfvThe $idfv Attribute for the customer, if set.
gps_ad_idThe $gpsAdId Attribute for the customer, if set.
custom_attributesJSON representation of any custom Attributes set for the customer.
๐Ÿ“˜"The last successful export finished recently. Please, wait some minutes before submitting another export."

Note that there is a wait time of 30 minutes between each export.

Exported filesโ€‹

Customer List exports are CSV files compressed in a GZ file. A GZ file is a compressed file similar to a ZIP file, although it uses a different compression algorithm.

Note that the timestamps in the exports are measured in milliseconds since Unix epoch. To convert these timestamps into a readable date, the formula is (A1รท86400000)+(DATE(1970,1,1)) where A1 is the corresponding cell.

macOS Can be opened by Archive Utility, included in macOS by default.

Windows Can be opened with a third party utility like WinZip or 7-Zip.

๐Ÿ“˜Check for .csv file extension

If you're having trouble opening the exported/uncompressed file, you may need to manually add the .csv extension.

Next Stepsโ€‹