# Incremental Activation Mappings

Incremental Activation is a Beta release. For more information, contact your Customer Success Representative.

Activation mappings define how delta records are sent to your destination platform. Each mapping connects a delta status (new, updated, deleted, or unchanged) to a specific connector configuration, allowing you to control how different types of changes are handled during activation.

## Understanding Activation Mappings

After each workflow run, your source table data may have:

- **New rows**: Profiles added to the segment
- **Updated rows**: Profiles whose attributes changed
- **Deleted rows**: Profiles removed from the segment
- **Unchanged rows**: Profiles that remain the same


The Incremental Activation workflow identifies these changes automatically. Your activation mappings determine what action to take for each type of change.

## Mapping Structure

The `activation_mappings` parameter accepts an array of mapping objects. Each mapping object contains three fields:

| Field | Required | Description |
|  --- | --- | --- |
| `delta_status` | Yes | The calculated delta record status: `new`, `updated`, `deleted`, or `unchanged` |
| `connector_field` | Yes | The connector configuration field name (e.g., `mode` for Snowflake, `operation` for Klaviyo) |
| `connector_field_value` | Yes | The value to set for the connector field (e.g., `append`, `replace`, `delete`) |


**Example**:


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "deleted",
    "connector_field": "mode",
    "connector_field_value": "delete"
  }
]
```

## Processing Order

The order of mappings in the array determines the processing order for the result export. The workflow processes mappings sequentially in the order they appear.

**Example - Process new profiles first, then deletions**:


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "deleted",
    "connector_field": "mode",
    "connector_field_value": "delete"
  }
]
```

## Common Mapping Patterns

### Add New Profiles Only

Send only new profiles to the destination. Previously activated profiles that no longer qualify remain in the platform.


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  }
]
```

**Use cases**:

- Braze campaigns where you want to build cumulative audiences
- Google Ads customer lists where removed profiles should stay for historical tracking
- Meta Custom Audiences where you're only adding new prospects


### Add Updated Profiles

Send new or changed profiles to the destination.


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "updated",
    "connector_field": "mode",
    "connector_field_value": "append"
  }
]
```

**Use cases**:

- Updating profile attributes in marketing platforms
- Refreshing contact information in CRM systems
- Syncing preference changes to email marketing platforms


### Replace with Updated Profiles

Clear the destination list and replace it with currently qualified profiles.


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "replace"
  },
  {
    "delta_status": "updated",
    "connector_field": "mode",
    "connector_field_value": "replace"
  }
]
```

This mode requires your connector to support the `replace` operation. Verify compatibility with your destination platform.

**Use cases**:

- Salesforce Marketing Cloud where precision targeting is required
- Platforms that don't support incremental updates
- Scenarios where you need exact synchronization


### Add Updated & Remove Missing

Add new profiles and explicitly remove profiles that no longer qualify.


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "updated",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "deleted",
    "connector_field": "mode",
    "connector_field_value": "delete"
  }
]
```

This mode requires your connector to support both add/append and delete/remove operations. Verify compatibility with your destination platform.

**Use cases**:

- Meta Custom Audiences where list accuracy is critical
- GDPR/CCPA compliance scenarios requiring profile removal
- Platforms where abandoned cart audiences must be precisely maintained


## Connector-Specific Field Names

Different connectors use different field names for controlling upload behavior. Always consult your connector's documentation for the correct field name.

### Common Connector Fields

| Connector | Field Name | Supported Values |
|  --- | --- | --- |
| Snowflake | `mode` | `insert`, `truncate_insert`, `merge` |
| MySQL | `mode` | `append`, `replace`, `truncate` |
| PostgreSQL | `mode` | `append`, `replace`, `truncate` |
| Google Sheets | `mode` | `append`, `replace` |
| Klaviyo | `operation` | `add`, `remove` |
| Salesforce Marketing Cloud | `mode` | `append`, `replace` |
| Salesforce B2C Commerce Cloud | `mode` | `append`, `replace` |
| Meta Custom Audiences | `action` | `add`, `remove` |


**Example for Klaviyo**:


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "operation",
    "connector_field_value": "add"
  },
  {
    "delta_status": "deleted",
    "connector_field": "operation",
    "connector_field_value": "remove"
  }
]
```

## Connector Compatibility

Not all result export connectors support dynamic mode configuration. Before configuring your mappings:

1. **Check connector documentation**: Verify your connector supports the required operations (add, update, remove, replace).
2. **Test with small datasets**: Validate that your mappings work as expected before production use.
3. **Contact support**: If unsure about connector capabilities, contact your Customer Success Representative.


### Connectors with Limited Support

- **TikTok Custom Audiences**: Limited support for removing users; updates processed asynchronously (up to 48 hours)
- **Some email marketing platforms**: May only support append operations


## Maximum Mappings

You can define up to **4 mapping elements** in one workflow, corresponding to the four delta status types: `new`, `updated`, `deleted`, and `unchanged`.

## Validation Rules

- Each `delta_status` value should appear only once in the mappings array
- The `connector_field` must be a valid field for your destination connector
- The `connector_field_value` must be supported by your connector
- At least one mapping must be defined


## Examples by Use Case

### E-commerce: Cart Abandonment Campaign

Send new cart abandoners to Braze, remove those who completed purchase:


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "deleted",
    "connector_field": "mode",
    "connector_field_value": "delete"
  }
]
```

### B2B: Lead Scoring Updates

Update Google Ads with new high-value leads and their score changes:


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "updated",
    "connector_field": "mode",
    "connector_field_value": "append"
  }
]
```

### Retail: Loyalty Tier Changes

Sync loyalty tier changes to Salesforce Marketing Cloud, ensuring precise list accuracy:


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "replace"
  },
  {
    "delta_status": "updated",
    "connector_field": "mode",
    "connector_field_value": "replace"
  }
]
```

### E-commerce: Full Sync to Salesforce B2C Commerce Cloud

Maintain complete customer synchronization with Salesforce B2C Commerce Cloud, using full sync for accurate customer data:


```yaml
activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "updated",
    "connector_field": "mode",
    "connector_field_value": "replace"
  }
]
```

## Next Steps

- [Configure Incremental Activation](/products/customer-data-platform/audience-studio/activation/configure-incremental-activation)
- [Incremental Activation Parameters](/products/customer-data-platform/audience-studio/activation/incremental-activation-parameters)
- [Troubleshooting Incremental Activation](/products/customer-data-platform/audience-studio/activation/troubleshooting-incremental-activation)


## Related Topics

- [Incremental Activation Overview](/products/customer-data-platform/audience-studio/activation/incremental-activation-overview)