Manage subscription data
You can view your aggregated subscription data in Datascape. To analyze your user-level data, you can set up raw data exports.
Here, you’ll learn how to manage your subscription events, and set up callbacks and cloud storage uploads.
Subscription events
In Adjust you can measure seven main subscription events. For each subscription event, you can use a subtype to get more insight into your user data.
Subscription event | Description |
---|---|
Activation | User activates the subscription product for the first time. |
First conversion | User does not cancel the subscription when the free trial or the free paid offer ends; converting them into a subscribed user. |
Entered billing retry | When a trial has expired and is not cancelled (user did not unsubscribe the product) and if no billing issue happens, the subscription event becomes one of the following: converted_trial, converted_offer, or renewed_subscription. |
Renewal | User successfully renews the subscription. |
Cancellation | Transaction is not renewed at the end of the subscription period, because the user unsubscribes or the billing retry renewal fails. |
Renewal from billing retry | User successfully renews the transaction after a billing issue is resolved. |
Reactivation | A user who subscribed through a trial, offer, or subscription, then cancelled it, then reactivated it. |
Subscription event subtypes
Set up subscription callbacks
Using callbacks, you can send user-level data directly to your servers—seconds after Adjust records the event.
Adjust automatically records the following subscription events.
- Subscription activation
- Subscription first conversion
- Subscription entered billing retry
- Subscription renewal
- Subscription cancellation
- Subscription renewal from billing retry
- Subscription reactivation
When you include the {subscription_event_subtype}
placeholder in your callbacks, you can receive subtypes for each subscription event. These offer greater insight into your user data.
Subscription placeholders
For a more granular look at your users’ behavior, you can add the following placeholders to your callbacks.
Global callbacks
Global callbacks provide a full list of data points from all activities that Adjust records.
If you already have global callbacks set up in AppView, add our subscription event placeholders to your existing callback URL.
For a full overview of how to create global callback URLs, follow our guide here. Or, edit your callback URL using our template and example below.
Example
http://callbackserver.com/adjust_global?app_id={app_id}&app_name={app_name}&app_name_dashboard={app_name_dashboard}&app_version={app_version}&app_version_raw={app_version_raw}&app_version_short={app_version_short}&store={store}&tracker={tracker_token}&tracker_name={tracker_name}&first_tracker={first_tracker}&last_tracker={last_tracker}&last_tracker_name={last_tracker_name}&outdated_tracker={outdated_tracker}&network_name={network_name}&campaign_name={campaign_name}&adgroup_name={adgroup_name}&creative_name={creative_name}&impression_based={impression_based}&is_organic={is_organic}&rejection_reason={rejection_reason}&click_referer={click_referer}&click_time={click_time}&click_time_hour={click_time_hour}&impression_time={impression_time}&impression_time_hour={impression_time_hour}&conversion_duration={conversion_duration}&engagement_time={engagement_time}&engagement_time_hour={engagement_time_hour}&installed_at={installed_at}&installed_at_hour={installed_at_hour}&install_finish_time={install_finish_time}&install_begin_time={install_begin_time}&referral_time={referral_time}&created_at={created_at}&created_at_milli={created_at_milli}&created_at_hour={created_at_hour}&reattributed_at={reattributed_at}&reattributed_at_hour={reattributed_at_hour}&attribution_updated_at={attribution_updated_at}&time_to_uninstall={time_to_uninstall}&idfa={idfa}&idfv={idfv}&gps_adid={gps_adid}&android_id={android_id}&adid={adid}&activity_kind={activity_kind}&revenue={revenue}¤cy={currency}&subscription_event={subscription_event_type}&subscription_event_subtype={subscription_event_subtype}&product_id={subscription_product_id}&sales_region={subscription_sales_region}&transaction_id={subscription_transaction_id}&expired_transaction_id={subscription_expired_transaction_id}&original_transaction_id={subscription_original_transaction_id}&subscription_store={subscription_store}&subscription_start={subscription_purchased_at}&subscription_end={subscription_expiration_time}&subscription_cancelled={subscription_cancelled_at}&environment={subscription_environment}&callback_parameter={publisher_parameters}
Subscription callback
Subscription callbacks send a single callback for all seven subscription-based events.
Example subscription callback URL
http://callbackserver.com/adjust_subscription?app_id={app_id}&app_name={app_name}&app_name_dashboard={app_name_dashboard}&app_version={app_version}&app_version_raw={app_version_raw}&app_version_short={app_version_short}&store={store}&tracker={tracker_token}&tracker_name={tracker_name}&first_tracker={first_tracker}&last_tracker={last_tracker}&last_tracker_name={last_tracker_name}&outdated_tracker={outdated_tracker}&network_name={network_name}&campaign_name={campaign_name}&adgroup_name={adgroup_name}&creative_name={creative_name}&impression_based={impression_based}&is_organic={is_organic}&rejection_reason={rejection_reason}&click_referer={click_referer}&click_time={click_time}&click_time_hour={click_time_hour}&impression_time={impression_time}&impression_time_hour={impression_time_hour}&conversion_duration={conversion_duration}&engagement_time={engagement_time}&engagement_time_hour={engagement_time_hour}&installed_at={installed_at}&installed_at_hour={installed_at_hour}&install_finish_time={install_finish_time}&install_begin_time={install_begin_time}&referral_time={referral_time}&created_at={created_at}&created_at_milli={created_at_milli}&created_at_hour={created_at_hour}&reattributed_at={reattributed_at}&reattributed_at_hour={reattributed_at_hour}&attribution_updated_at={attribution_updated_at}&time_to_uninstall={time_to_uninstall}&idfa={idfa}&idfv={idfv}&gps_adid={gps_adid}&android_id={android_id}&adid={adid}&revenue={revenue}¤cy={currency}&subscription_event={subscription_event_type}&subscription_event_subtype={subscription_event_subtype}&subscription_product_id={subscription_product_id}&subscription_sales_region={subscription_sales_region}&subscription_transaction_id={subscription_transaction_id}&subscription_original_transaction_id={subscription_original_transaction_id}&subscription_store={subscription_store}&subscription_purchased_at={subscription_purchased_at}&subscription_expiration_time={subscription_expiration_time}&subscription_environment={subscription_environment}&callback_parameter={publisher_parameters}
Set up cloud storage uploads
With cloud storage uploads, you can automatically export your subscription event raw user data to cloud storage on an hourly basis.
- View our full list of supported subscription event types here.
To get set up, add the subscription placeholders you want to include to your CSV definition. Read more about formatting your CSV definition.