Skip to main content

Incentivizing users to provide profile information

Customer profiles contain valuable zero-party data that can be used to personalize the brand experience for customers. This tutorial shows how to use achievements to incentivize new and existing customers to share optional profile information.

We will set up a one-time achievement that awards customers 100 loyalty points for providing optional profile details, such as their date of birth and phone number.

Setting up the achievement and rules

1

Prepare your environment

  1. Create a standard campaign named Profile Details Bonus with the Achievements and Loyalty features enabled. We will define the rules for this campaign later in this tutorial.
  2. Create a profile-based loyalty program named Coffee Club and connect it to your Application.
  3. Create custom attributes named Date of birth and Phone number with Customer Profile as the associated entity for both. Ensure to connect each attribute to the Application that contains the Profile Details Bonus campaign.
2

Create the achievement

Create a one-time user-action achievement named Enter Profile Details:

  • Set the Target to 1. The customer's progress gets updated to 1 as soon as they provide the optional profile details.
  • Select the End progress on achieving target option.
  • Set any achievement period. In this example, the achievement period does not matter because the achievement target is 1, meaning the achievement is completed when the user makes their first progress.

To complete the achievement, the customer must provide their date of birth and phone number. Let's set up a rule to track this.

3

Create a rule to update customer progress

Let's create a rule in the campaign to update a customer's progress when they provide optional profile details. We will name this rule Update Achievement Progress.

Customers receive points only after they provide their date of birth and phone number. In this first rule, we check if the Rule Engine has triggered the Customer Profile Update event and the Date of birth and Phone number attributes contain a value.

Rule 1: Conditions

When all of these are true:

  • Check customer progress in an achievement:

    • Achievement Enter Profile Details is not Completed
  • Check for event types and custom event values:

    • Event type: Customer Profile Update
  • Check if attribute exists:

    • Date of birth (Customer Profile) exists
  • Check if attribute exists:

    • Phone number (Customer Profile) exists

Rule 1: Effects

  • Update customer progress:
    • Achievement name: Enter Profile Details
    • Update progress by: 1
note

The rule only checks whether the Date of birth and Phone number attributes contain a value. You can add validation checks for these attributes in your implementation.

4

Create a rule to award loyalty points

Let's create a second rule that checks if the achievement has been completed and immediately awards the customer with 100 loyalty points. We can name the rule Profile Details Award.

Rule 2: Conditions

  • Has completed an achievement:
    • Achievement name: Enter Profile Details.

Rule 2: Effects

  • Add loyalty points:
    • Loyalty program: Coffee Club
    • Recipient: Current Customer
    • Reason: Optional profile details provided
    • Amount of points: 100