Scope
What types of data does Chargebee Retention recommend passing and why?
What is the list of relevant fields that can be passed to Chargebee Retention?
Summary
Pass data into Chargebee Retention automatically to enrich subscriber profiles, personalize your page content, define audiences for targeting, improve your in-app reporting and insights, and/or augment Chargebee Retention's machine learning-based routing models (if used).
You can pass data to Chargebee Retention by:
- Adding custom fields into the Chargebee Retention.js snippet (permitted formats specified)
- Importing data from a connected billing system or Salesforce CRM (field names and data types defined automatically)
- Importing attributes from the Segment.com session
- Making a precancel request to the Chargebee Retention server and including properties along with your Chargebee Retention app_id.
Solution
List of recommended custom fields in Chargebee Retention
This article describes passing data into Chargebee Retention via custom fields in the code snippet. To help justify the effort of adding custom fields into the snippet, here are example data fields that Chargebee Retention customers send, along with the use cases to illustrate their value.
Field | Description | Value | Example Use Cases |
First purchase date | First date of purchase | Tenure-based targeting | Target early, mid, late lifecycle customers w/ different offer types (e.g. late customers = pause, early = discount) |
Revenue value | Amount paid per billing interval | Value-based targeting Revenue Insights | Targeting based on current subscription revenue, for example:
|
Billing term | Current billing frequency (e.g. weekly, monthly, quarterly, annual, etc.) | Term-based targeting and eligibility | Offer plan duration changes (monthly to annual, weekly to bi-weekly, etc.), or include as targeting criteria (e.g. only offer plan extensions to monthly customers) |
Plan Name | Plan the customer is on (e.g. by plan, by meals/week, by tier) | Value-based targeting Revenue Insights | Offer customers the option to switch to a different plan, or to a lower plan (downgrade) instead of canceling |
Number of purchases | All-time purchase made | Enables targeting based on total payments | More loyal customers are more likely to purchase again, so offer pauses to your highest volume of customers who just need a short break. Optimize experiences by targeting audience profiles who are more likely to repurchase x number of times. |
LTV | All time revenue paid | Enables targeting based on LTV tranche | Make stronger offers to the most loyal and valuable customers who are more likely to repurchase in the future. Or, target high LTV customers with bonus loyalty incentives. |
Product Engagement (frequency) | E.g. logins last 30 days, x event last 30 days | Personalized loss aversion on the page Engagement-based targeting | Show engaged users what they will lose with your software vs. showing inactive users resources to help them get re-engaged. Present alternative offers (e.g. pauses, extensions, switches, discounts, support/training) based on engagement |
Product Engagement (lifetime) | E.g. all-time logins, all-time x events | Personalized loss aversion Engagement-based targeting | Personalize the cancel experience based on the maturity of your users in ways that manual segmentation could not by leveraging Chargebee Retention AI. |
Allowed date formats
Chargebee Retention validates that data passed via the snippet meet the below date formats:
datetime = time | date-opt-time
time = 'T' time-element [offset]
date-opt-time = date-element ['T' [time-element] [offset]]
date-element = std-date-element | ord-date-element | week-date-element
std-date-element = yyyy ['-' MM ['-' dd]]
ord-date-element = yyyy ['-' DDD]
week-date-element = xxxx '-W' ww ['-' e]
time-element = HH [minute-element] | [fraction]
minute-element = ':' mm [second-element] | [fraction]
second-element = ':' ss [fraction]
fraction = ('.' | ',') digit+
offset = 'Z' | (('+' | '-') HH [':' mm [':' ss [('.' | ',') SSS]]])
Example snippet with various property types:
Note: Arrays are not a supported field type. Please break up arrays into single element key/value pairs in order to access them in the Experience and Audience Manager
window.Brightback.handleDataPromise({
app_id: '123456', // String (example)
email: 'jane@Chargebee Retention.com', // String (example)
account: {
internal_id: '123abc', // String (example)
value: 49.99, // Decimal (example)
created_at: '2020-02-22T06:55:59.000Z' // Timestamp (example)
},
custom: { // Use to add additional parameters
additional_fields: { // Nested fields are okay,
anything_else: ' ' // Arrays are not supported
},
offer_url: 'https://example.com/pause', // String
offer_eligible: true // Boolean (example)
}
});
To find out how your account Admin can utilize variables by mapping fields check out our help document here.
The Experience and Audience manager supports the following property types
strings integers or decimal numbers boolean dates as numeric strings or literals
Related Articles
How to set up Chargebee Billing with Chargebee Retention for the Live site?
How to test the Chargebee retention cancellation process?