User attributes

List of built-in attributes and how to create user attributes?

Kirupa avatar
Written by Kirupa
Updated over a week ago

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 Target Audience feature. Purchasely offers different types of user attributes and also lets you create custom attributes. They are:

Built-in Native attributes

The value of these attributes are received by Purchasely by default.

Name

Datatype

Explanation

App version

String

Your application version:

3.6.1

Device type

String

User device type:

Phone, Pad,

Language

String

App language:

en,fr,ja

This parameter is generally defined at the device level, but can be overriden at the app level in the phone settings.

iOS Store Country

String

User iOS store country:

JPN,USA,RUS

Store name

String

App store name:

Apple App Store, Google Play Store

OS version

String

User device OS version:

17.3.1

SDK version

String

Purchasely SDK version:

4.2.1

⚠️Please note that the built-in attributes can be neither deleted nor edited.

Built-in User attributes

This set of attributes are built-in (automatically gathered by the SDK) and concern the users themselves.

Name

Datatype

Explanation

Anonymous id

String

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.

Country(IP)

String

User location country determined from the IP address

Is logged in

Bool

If the user has already created an account in your app or not.

User id

String

User id assigned by the application. It's created when the user creates an account in your application

This attribute is meant to be used rather for testing purposes to target a specific anonymous user.

Built-in Engagement attributes (SDK requirement: 4.2.0 and above)

Name

Datatype

Explanation

Last app session date

Date

It is the latest date and time there was an activity in the application

Last paywall / screen dismissed

String

Its the latest paywall screen that was closed by the user

Last paywall / screen dismissed date

Date

Its the date and time latest paywall screen that was closed by the user

Last paywall / screen displayed

String

Its the latest paywall screen that was displayed to the user

Last paywall / screen displayed date

Date

Its the date and time latest paywall screen that was displayed to the user

Last paywall converted

String

It is the paywall from which user started their subscription or trial

Last placement converted

String

It is the placement from which user started their subscription or trial

Last placement displayed

String

It's the latest placement that was displayed to the user

Number of app sessions

Integer

Number of times the app was launched by the user. A new session is counted only when the app is initialized (restarted after being killed by the user or the operating system).

An app can remain active in the background without being killed by the system. In this case, it does not count a new app session.

Number of consecutive days opened

Integer

Total number of days the user visited consecutively, if they missed one day then the counter will restart

Number of paywalls / screens dismissed

Integer

Total number of paywalls or other screens (created in Purchasely paywall builder) was closed by the user

Number of paywalls / screens displayed

Integer

Total number of paywalls or other screens(created in Purchasely paywall builder) was displayed to the user

Built-in Subscription attributes

Name

Explanation

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

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

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

Has active subscription

If the user has an active subscription.

It can be either true or false.

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

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.

Next renewal date

The date and time of the next billing of the user subscription.

Start date

The date and time of the subscription billing started.

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.

Custom Attributes

You can collect and store custom user attributes in addition to built-in attributes. These attributes can be attached as user properties and offer you the opportunity to group user with common properties in the same Audience.

How to create Custom Attributes

You can create user attributes from the User attributes under Settings

Click on New User Attribute in the top right corner

Name: The name of your user attribute can be alphanumeric, and you can't give the same name to another attribute

Key: Key is the ID your developer can use to send the right value through the SDK

Data type: Data types can be either one of the following: string, bool, date, int (used for the whole number), and float(used for the decimal numbers)

⚠️You can neither edit nor delete the user attribute once an audience is created using them.

Refer to this article on how to create an audience.

Did this answer your question?