Understanding the different types of User Attributes
This section provides details on user attributes
User attributes are user-specific information that you can pass through your mobile application and it can be used to segment your user base, thanks to the Audience feature. Purchasely offers different types of Built-in User Attributes and also lets you create Custom User Attributes.
The different types of attributes are:
- Built-in User Attributes
- Custom User Attributes
Built-in Native attributes
This set of attributes are built-in (automatically gathered by the SDK) and concern the device, the app or the users.
Name | Explanation | SDK requirement |
---|---|---|
App version | Your application version the user currently using. Eg: 3.6.1. | |
Device type | The user device type. It will be one of the following: Phone, Pad, TV, Computer, Car and unknown. | |
Language | This parameter is generally defined at the device level, but can be overriden at the app level in the phone settings. App language: en,fr,ja. | |
Store Country | User iOS store country: JPN,USA,RUS. | Only for iOS for SDK versions < 4.4.0. iOS & Android for SDK versions ≥ 4.4.0 |
Store name | App store name: Apple App Store, Google Play Store. | |
OS version | User device OS version Eg: 17.3.1. | |
SDK version | Purchasely SDK version Eg: 4.2.1. | |
Anonymous id | If the user didn't create an account, Purchasely creates anonymous id. This attribute is meant to be used rather for testing purposes to target a specific anonymous user. | |
User id | User id assigned by the application. It's created when the user creates an account in your application. | |
Is logged in | If the user has already created an account in your app or not. | |
Country(IP) | User location country determined from the IP address. | |
Cumulated revenue in USD | The cumulated revenue for expired and active subscription. The currency is in dollars only. | 4.4.0 |
Built-in Engagement Attributes
SDK requirement: 4.2.0 and above
These attributes correspond to data about the user engagement in your application. The elements we take into account are app sessions, interaction with paywalls and placements.
You can leverage them to determine how engaged is a user how they've been exposed to paywalls and screens managed by the Purchasely SDK.
Name | Explanation | SDK requirement |
---|---|---|
App sessions | Number of times the app was launched by the user. A new session is counted: - When the SDK is initialized (restarted after being killed by the user or the operating system). - When the application has been in background for more than 30 minutes | 4.2.0 |
Consecutive days opened | Total number of days the user visited consecutively, if they missed one day then the counter will restart. | 4.2.0 |
Number of paywalls / screens dismissed | Total number of paywalls or other screens (created in Purchasely paywall builder) was closed by the user. | 4.2.0 |
Number of paywalls / screens displayed | Total number of paywalls or other screens(created in Purchasely paywall builder) was displayed to the user. | 4.2.0 |
Last app session date | It is the latest date and time there was an activity in the application. | 4.2.0 |
Last paywall / screen dismissed | Its the latest paywall screen that was closed by the user. | 4.2.0 |
Last paywall / screen dismissed date | Its the date and time latest paywall screen that was closed by the user. | 4.2.0 |
Last paywall / screen displayed | Its the latest paywall screen that was displayed to the user. | 4.2.0 |
Last paywall / screen displayed date | Its the date and time latest paywall screen that was displayed to the user. | 4.2.0 |
Last paywall converted | It is the paywall from which user started their subscription or trial. | 4.2.0 |
Last placement converted | It is the placement from which user started their subscription or trial. | 4.2.0 |
Last placement displayed | It's the latest placement that was displayed to the user. | 4.2.0 |
Built-in Active Subscription Attributes
SDK requirement: 4.2.0 and above
OS Version requirement: iOS 15 and above
These attributes allow you to target any subscribers that are active at the given moment.
Name | Explanation | SDK requirement |
---|---|---|
Active offer type | The type of special offer the user is enjoying right now. It can be either one of the following: Free trial: User is in free trial Promotional Offer: User is benefitting from a promotional offer. Intro Offer: User is benefitting from a discounted introductory price (not free). Promo code: User has redeemed a Promo code and the associated promotion is still valid. None: User is paying the full price (regular price) for the subscription. | 4.2.0 |
Active plan | The name of the plan the user is currently in and actively renewing. It is either one of the plans you have created in products and plans in the Purchasely console. | 4.2.0 |
Active promotional offer | The name of the promotional offer (if any) the user is currently benefitting. If the value is set, the attribute Active offer type will be set to Promotional offer. It is either one of the promotional offers created in the products and plans in the Purchasely console. | 4.2.0 |
Has active subscription | If the user has an active subscription. It can be either true or false. | 4.2.0 |
Has expired subscription | If the user had a subscription in the past. It can be either true or false. To target lapsed users, you will need to build an audience combining Has active subscription = false. and Has expired subscription = true. | 4.2.0 |
Has non consumable (or lifetime sub) | If the user has purchased non consumable. This type of plan is also used to model Lifetime subscriptions. It can be either true or false. | 4.2.0 |
Start date | The start date and time of the subscription (= time of the initial purchase) | 4.2.0 |
Next renewal date | The date and time of the next billing of the user subscription. If the user is in Free trial or Intro offer, the next renewal date will be filled in with the end date of the Free trial or Intro offer. | 4.2.0 |
Subscription status | The status of the subscription. It can be either one of the below: Auto Renewing: Subscribers with an active auto-renewing subscription. Auto Renewing canceled: Subscribers who have canceled the auto-renewing of their subscription. Grace period: Subscribers who are past their billing date but still enjoying their premium features. | 4.2.0 |
Built-in Expired Subscription Attributes
SDK requirement: 4.4.0 and above
OS Version requirement: iOS 15 and above
These attributes allow you to target users that have expired at the given moment.
Expired subscription attributes limitations
The expired subscription attributes will not be set in the following cases:
- Subscriptions that expired before the integration of Purchasely into your app.
- Subscriptions that expired after the integration of Purchasely into your app but haven't been imported.
In these cases, only the attribute Has expired subscription will be set to true, as it is computed from the local receipt. The other attributes will not be set.
To summarize, these attributes can be leveraged to win back subscribers who churned recently, rather than to win back any lapsed subscribers in the history of your app.
Expired subscriptions
These attributes can be set and filled-in even for users who still have an active subscription. If the user has terminated their subscription, then resubscribed later, the first subscription will be considered as an expired subscription. Even if the user resubscribed to the same plan.
If a user has several expired subscription, only the last one will be reflected in the attributes.
However, the Expired Sub. Cumulated Revenue corresponds the sum of all the revenue generated by each expired subscription into consideration.
Name | Explanation | SDK requirement |
---|---|---|
Has expired subscription | If the user had a subscription in the past. It can be either true or false. To target lapsed subscribers, you will need to build an audience combining Has active subscription = false. and Has expired subscription = true. | 4.2.0 |
Expired sub. Status | The lapsed subscription status. It will be either one of the following: Onhold: The user is in the billing retry state. Deactivated: The user voluntarily terminated their subscription. Revoked: The user requested for the refund and revoked their subscription. Paused: The user has paused the subscription instead of terminated it. It is available only for Android users. Unpaid: The billing retry has ended. | 4.4.0 |
Expired subscription offer type | The offer type of the expired subscription when it got terminated. It can have one of the following values: Free Trial: User was in Free Trial. Promotional Offer: User was benefitting from a promotional offer. Intro Offer: User was benefitting from a discounted introductory price (not free) Promo Code: User was benifiting from a Promo Code. None: User was paying the full price (regular price) for the subscription | 4.4.0 |
Expired subscription plan | The name of the plan for which the user's subscription expired or its the last subscription the user had. The value is one of the plans you have created in Products and Plans in the Purchasely console. | 4.4.0 |
Expired subscription promotional offer | The name of the promotional offer the user had before their subscription expired. If the value is set, the attribute Expired subscription offer type will be set to Promotional offer. The value is the promotional offers you have created in the products and plans in the Purchasely console. | 4.4.0 |
Expired subscription Start date | The start date of the last subscription the user had. | 4.4.0 |
Expired subscription Expiry date | The exact date of the user subscription expired. | 4.4.0 |
Expired subscription duration (days) | The duration of the subscription, from the start date to the end date, in days. | 4.4.0 |
Expired subscription duration (weeks) | The duration of the subscription, from the start date to the end date, in weeks. | 4.4.0 |
Expired subscription duration (months) | The duration of the subscription, from the start date to the end date, in months. | 4.4.0 |
Custom Attributes
Custom User Attributes are additional user properties that can be injected by the app into the Purchasely Platform through an API of the SDK. These custom user properties can be collected by the app during the onboarding or when users interact with the app.
Eg: gender, sign-up date, age, intent, current location, contents read, favorite team
More details on how to manage Custom User Attributes and manipulate them in the app code
Updated 3 months ago