--- title: "Personalization Builder: Create and Edit" slug: "personalization-builder-create-and-edit" description: "Reference for the Personalization Builder in Mapp Engage: settings, Edit Mode with Condition Builder, Structure Mode with block menu and content, and actions." status: "update" updated: 2026-11-04T10:52:33Z published: 2026-11-04T10:52:33Z canonical: "docs.mapp.com/personalization-builder-create-and-edit" --- > ## 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. # Personalization Builder: Create and Edit ## Overview Use the **Personalization Builder** window to create and edit personalization rules. The window has two views. In **Edit Mode**, you define the conditions of a block. In **Structure Mode**, you manage the blocks of the rule and their content. For when to use which view, see [Personalization Builder](/v1/docs/personalization-builder). --- ## Navigation Path 1. Navigate to *Audience > Segmentation > Personalization*. 2. Click **Create**, or click **Edit** in the context menu of an existing personalization. You can also open the Builder during message creation: Click **Personalization** and then **New**. ![Personalisation Builder interface showing options for inserting conditions and blocks.](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/personalization builder create(1).png) --- ## Settings | Setting | Description | | --- | --- | | **Description** | Describes the purpose of the rule. Recommended, because personalization names are not unique. | | **Advanced Options** | Expands the **Group** drop-down list, where you select a group. | | **Graphical** | Shows the rule in the graphical interface. | | **Code** | Shows the code that the Builder generates. This code is inserted into the message when you use the rule. You can also enter the rule manually. You can switch between the views as long as the rule remains compatible. Some expressions are only possible in code. | --- ## Edit Mode In Edit Mode, you define the conditions of the selected `InsertIf` or `InsertElse` block. When you create a personalization, the Builder opens in this view with the initial `InsertIf` block selected. | Element | Description | | --- | --- | | **Structure - InsertIf Block** | Shows the block you are editing. Click **Structure** to switch to [Structure Mode](/docs/personalization-builder-create-and-edit#structure-mode). | | **InsertIf Block Name** | Shows the name of the block. You set the name with **Edit Block Name** in Structure Mode. | | ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/b9f2f157-51e7-4e84-aff3-c6ac5a0fd15c.png) | Adds a condition at the same structural level and opens the [Condition Builder](/docs/personalization-builder-create-and-edit#condition-builder). | | ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/7b8f1127-e1e1-484f-94d7-764442ac3591.png) | Opens the context menu for a condition. Here you add or modify conditions and grouping. | | ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image-FQZQA3XR.png) | Opens the context menu for the condition with these options: - **Add condition**: Adds another condition. - **Add grouped condition**: Wraps a condition in brackets to create a grouped expression, for example `A AND (B OR C)`. - **Ungroup**: Removes the brackets around the selected grouped condition. - **Remove group**: Deletes all rules within the selected brackets. | | **Conditions to be matched** | - **All**: Every condition in the group must be true. If one condition is false, the content is not inserted. - **One**: At least one condition must be true for the content to be inserted. | | **Checkbox** at the end of a condition | Selects the condition, for example to combine several conditions with **Group**. Grouped conditions are shown in parentheses. Click a parenthesis to expand or collapse the group. | ### Condition Builder The **Condition Builder** opens when you add a condition. You select an attribute, define how it relates to a value, and add the condition to the block. ![Personalisation builder interface showing conditions for inserting blocks and options.](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/condition builder.png) | Setting | Description | | --- | --- | | **First input field** | Shows all available standard and custom attributes. Select the attribute that the condition evaluates. | | **Center drop-down menu** | Defines the relationship between the attribute value and the value in the second field. The available relationships depend on the data type of the selected attribute (String, Number, Date, or Boolean): - Equals - Does Not Equal - less than - greater than - less than or equal - greater than or equal - empty - not empty - Starts With - Ends With - Contains - Contains case insensitive - Regex | | **Second input field** | Specifies the value that the attribute value is compared with. With **Equals** and **Does Not Equal**, the values must match exactly. For less strict matching, use **Starts With**, **Ends With**, **Contains**, or **Regex**. Wildcards are not supported. For enumerated attributes, you select the value from a list. | | **Compare two attributes** | Lets you select another attribute instead of a fixed value, so that you compare two attributes with each other, for example to find contacts whose latest spend is greater than their average spend. | | **Add** | Adds the condition to the block. | --- ## Structure Mode In Structure Mode, you see all blocks of the rule and manage their order, nesting, and content. Each row shows the block type and the block name, for example **InsertIf Block: Platinum** or **Default Block: Default**. A rule always starts with an `InsertIf` block. The following blocks determine which parts of the rule apply to the recipient. | Element | Description | | --- | --- | | **Brackets** `(` `)` and `(..)` | Enclose the nested content of a block. Click the bracket to show or hide the nested content. A collapsed block shows `(..)`. | | ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image-NDLS4VDD.png) | Adds an `InsertElse` block at the same level as the current block. | | ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image-MHP2P2DY.png) | Opens the menu of the block. The available options depend on the block type. A default block, for example, only offers **Edit Block Name**, **Add Content**, and **Add Nested InsertIf**. - **Add InsertElse**: Adds an `InsertElse` block at the same level. - **Edit**: Opens the block in [Edit Mode](/docs/personalization-builder-create-and-edit#edit-mode), where you modify its conditions. - **Edit Block Name**: Renames the block. The name becomes the ID of the block in the code and appears in the email message statistics, where you compare the success of different personalizations. - **Add Content**: Adds a content block to the selected `InsertIf` or `InsertElse` block. See [Add Content](/docs/personalization-builder-create-and-edit#add-content). - **Add Default**: Creates a fallback block that applies when no other condition is met. - **Add Nested InsertIf**: Creates a nested `InsertIf`/`InsertElse` structure within the selected block, for example to segment by one attribute and then refine by another. | | **Pencil icon** and **▼** on content blocks | Open the content of the block for editing in the [Add Content](/docs/personalization-builder-create-and-edit#add-content) dialog. Content blocks have no further menu options. | ### Add Content The **Add Content** dialog inserts a content block into the selected `InsertIf` or `InsertElse` block. Content can include fixed text, HTML formatting, and placeholders. To edit existing content, click the pencil icon of the content block. You can also save a personalization without content. ![Personalisation Builder interface showing content block and attributes section for customization.](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/add content.png) | Setting | Description | | --- | --- | | ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image-DBAWAFBP.png) | Inserts the attribute selected in the **Attributes** field into your content as a placeholder. | | **Input field** | Defines the fixed content of the block. HTML tags are supported. Nested blocks can contain their own content. Example for a greeting based on gender: - Add a nested `InsertIf` block that checks the recipient's gender. - For male recipients, add `Dear Mr. <%${user['LastName']}%>`. - For female recipients, add `Dear Ms. <%${user['LastName']}%>`. | --- ## Actions | Action | Description | | --- | --- | | **Group** | Groups all selected rules at the same structural level. If nested grouping exists, remove the brackets before you create a new group. | | **Delete All** | Removes all rules in the structure. | | **Preview** | Opens the preview in a new window, where you test the rule. See [Personalization Builder: Preview](/v1/docs/preview-personalization). | | **Save** | Saves the personalization rule to your library so that you can reuse it. | | **Use** | Takes the rule into the message without saving it for future use. You then insert it at the desired position in the message. Only available when you open the Builder from a message. | --- ## Examples For worked examples of `InsertIf`/`InsertElse` conditions and content blocks (personalized salutations, loyalty program tiers, subject line capitalization), see [Personalization Rule Examples](/v1/docs/personalization-builder-examples). ## Related - [Create a Personalization Rule](/create-a-personalization-rule.md) - [Personalization Builder: Preview](/preview-personalization.md)