---
title: "Categorize VIP Customers Using Profile-Based Automation"
slug: "vip-customer-mapping"
updated: 2024-03-07T13:04:45Z
published: 2024-03-07T13:04:45Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mapp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Categorize VIP Customers Using Profile-Based Automation

## Scenario

This topic describes how to identify your VIP customers depending on the number of purchases they have completed and how long they have been a member of the group.

| When | Then |
| --- | --- |
| Contact has been a group member for 1 year and made 5 purchases. | Store the value ​True​ in the user attribute ​VIPShoppers​. |
| Contact has been a group member for 2 years and made 10 purchases. | Store the value ​True​ in the user attribute ​VIPShoppers​. |
| Contact has been a group member for 3 years and made 15 purchases. | Store the value ​True​ in the user attribute ​VIPShoppers​. |
| Default | Store the value ​False​ in the user attribute ​VIPShoppers​. |

## Benefits

- Identify your most loyal customers.
- Send your VIP customers special offers, invite them to interact with you on social media and ask them to leave feedback about their experiences with your brand.

## Prerequisites

1. In the ​*Administration​ > Attributes​*area, create the following new custom user attributes.

| Data Type | Contents | Name |
| --- | --- | --- |
| **Boolean** | Stores whether the contact is a VIP customer (yes/no). | ​VIPShoppers​ |
| **Number** | Stores the number of total purchases. | ​TotalPurchases​ |
| **Date** | Stores the date when the contact joined the group. | ​GroupMembershipDate​ |
2. In ​Automation​, create a new whiteboard. Create two new event-based automations. The first stores the total number of purchases in your shop. The second stores the date of subscription to group. For more information, see [​Profile Enrichment​](/v1/docs/profile-enrichment). **Tab. : Automation 1**

| Event | Job |
| --- | --- |
| [Conversion Registered (C)​](/v1/docs/conversion-registered-c)​​ | [Increase or Decrease Profile Value (C)​](/v1/docs/increase-or-decrease-profile-value-c) |

**Tab. : Automation 2**

| Event | Job |
| --- | --- |
| [​Subscribed to Group (C)​](/v1/docs/subscribed-to-group-c) | [Store Data in Profile Attribute (C)​](/v1/docs/store-data-in-profile-attribute-c) |

## Procedure

1. In ​Automation​, create a new **profile-based automation** with the type ​**Mapping**​.
2. From the ​Target Attribute​ drop-down list, select the attribute ​**VIPShoppers**​.
3. The mapping has three conditions.

| Explanation | When | Then |
| --- | --- | --- |
| Contact has been a group member for 1 year and made 5 purchases. | ${user.CustomAttribute['TotalPurchases'] >= 5 && ecm:greater(user.CustomAttribute['GroupMembershipDate'], ecm:addInterval(date['Today'], '-12M'))} | True |
| Contact has been a group member for 2 years and made 10 purchases. | ${user.CustomAttribute['TotalPurchases'] >= 10 && ecm:between(user.CustomAttribute['GroupMembershipDate'], ecm:addInterval(date['Today'], '-24M'), ecm:addInterval(date['Today'], '-12M'))} | True |
| Contact has been a group member for 3 years and made 15 purchases. | ${user.CustomAttribute['TotalPurchases'] >= 15 && ecm:between(user.CustomAttribute['GroupMembershipDate'], ecm:addInterval(date['Today'], '-36M'), ecm:addInterval(date['Today'], '-24M'))} | True |
4. From the ​Default​ drop-down list, select ​**False**​.
5. Click the ​**Save**​ button.
6. Select the profile-based automation and click the ​**Activate**​ button. ⇒ The profile-based automation is now active.
7. Click the ​**Apply Automations**​ button. ⇒ Engage applies the automation to all contacts in the system. This can take a long time. An email notifies you when the automation is finished.
