---
title: "Profile-based Automations"
slug: "profile-based-automations"
updated: 2026-01-29T13:20:49Z
published: 2026-01-29T13:20:49Z
---

> ## 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.

# Profile-based Automations

Profile-based automations in Mapp Engage are used to **modify or enrich contact profiles** based on the data already stored in profile attributes.

They are ideal for tasks like scoring, categorizing, or transforming data – for example, after a file import or a form submission.

> [!NOTE]
> Note
> 
> This type of automation is not triggered by time or events, but by profile data itself. For an overview of different automation types, see: [Automation Basics](/v1/docs/automation)

---

## 1. Key Concepts

Profile-based automations always write a value to a target attribute, based on an expression or condition applied to one or more source attributes.

There are two types:

| **Type** | **Description** |
| --- | --- |
| **Operation** | Applies an expression to an attribute (e.g. calculate age, transform text). The result is computed dynamically. |
| **Mapping** | Assigns values based on defined conditions (e.g. categorize contacts into tiers or segments). Each condition has a separate result. |

> [!NOTE]
> Operations are ideal for calculations or transformations.
> 
> Mappings are best suited for categorization based on defined rules.

Both types use expression language – a flexible syntax that allows you to reference profile attributes, apply functions, and calculate results.

For a list of supported functions, see: [Mapp Engage Functions](/v1/docs/mapp-engage-functions)

---

## 2. Use Cases

You can use profile-based automations for a variety of backend and data management tasks, such as:

- Calculating lead scores or lifetime purchase value
- Assigning product interest or activity levels
- Capitalizing first names for better personalization
- Categorizing contacts into “Hot”, “Warm”, “Cold”
- Creating VIP segments based on purchase frequency and membership duration

You can find detailed instructions for common use cases in the dedicated [How-To Section](/v1/docs/automation-scenarios-for-customer-lifecycle-marketing).

---

## 3. Limitations and Data Sources

- Profile-based automations work only with profile attributes (string, number, date, boolean).
- They cannot directly use:
  - Group membership data
  - Message activity (opens, clicks)
  - Related Data records
- However, you can use event-based automations to copy such data into profile attributes (e.g. store “last open date” or “group join date” as attributes) – and then use those in profile-based automations.

For details, see: [Event-Based Automations](/v1/docs/event-based-automation)

---

## 4. Activation and Application

Profile-based automations require two steps:

1. **Activate**

The automation is saved and enabled. It runs when a relevant profile attribute is updated (via API or in the UI).
2. **Apply**

Click *Apply Automations* to apply the logic to all existing contacts. This is useful after creating a new automation or after a file import.

Changes made via import do not automatically trigger profile-based automations. To apply them after an import, create an event-based automation:

- Event: Contact Import Finished
- Job: Execute Profile-Based Automations

You can also schedule this job using a [time-based automation](/v1/docs/engage-automation-time-based-available-time-based-jobs).
