Real-time enrichment
Combine live event data with profile and warehouse fields in real-time journeys.
Real-time journeys can combine the event that triggered the journey with customer data from your warehouse. GrowthLoop retrieves only the fields required by the current node and makes them available for criteria, destination personalization, and destination match fields.
Field sources
| Source | Description | Typical use |
|---|---|---|
| Event payload | Fields from the message that triggered the journey. | Evaluate the current action, such as a product ID or order value. |
| Personalization profile | Fields previously synced from your warehouse to the Personalization API. | Reuse profile attributes such as opt-in status, loyalty tier, or first name across real-time paths. |
| Primary warehouse fields | Fields from the primary dataset that GrowthLoop fetches when a required value is not already in the event or profile data. | Use current warehouse values for a criterion or personalization field without adding the field to the event schema. |
| Custom attributes | Custom attributes created earlier in the journey, including Trigger response fields. | Pass calculated values or an external service response to a later node. |
How enrichment works
When a user reaches a node that needs an enriched field, GrowthLoop:
- Identifies the fields required by the node.
- Reuses values already present in the event or the journey's enrichment data.
- Fetches missing primary warehouse fields for the current users from the configured source.
- Resolves any flexible query values required by the node.
- Makes the enriched values available before evaluating the criteria or processing the destination.
GrowthLoop batches enrichment requests for users being processed together. A warehouse lookup adds query time, so do not assume that a path using warehouse enrichment has the same latency as a path that uses only event fields.
Choose a profile sync or warehouse enrichment
Use a Personalization API sync when a profile field is reused across many real-time journeys or must be available with the lowest possible lookup latency. Use automatic warehouse enrichment when a node needs a primary-dataset field that you do not want to sync.
Both approaches keep your warehouse as the source of truth. A synced profile uses the last successful Sync run; warehouse enrichment queries the source when the journey needs the value.
Flexible query values
Criteria can require values produced by a flexible query. GrowthLoop derives the required fields from the criteria, fetches them with the other warehouse enrichment values, and makes the results available to the criteria evaluation.
Match-field behavior
When you configure a destination match field in a real-time journey, the field picker can include:
- Real-time event fields from the triggering event.
- Personalization profile fields that are cached from a Personalization API Sync.
- Warehouse fields from the primary dataset.
- Custom attributes created by an upstream node, including Trigger response fields.
The picker preserves the source selected for each mapping so GrowthLoop can request the field from the correct system. At runtime, GrowthLoop resolves a destination match field from enriched data first, then the triggering event, and finally upstream custom attributes. This means a synced or warehouse-enriched identifier can be used even when the triggering event does not contain it.
For example, you can map a destination's email match field to a cached profile email while the event contains only an account ID. If the profile field is not available, configure the event or a journey custom attribute as a fallback source.
See Destination node for destination types and field mapping, and Syncing warehouse fields for Personalization API setup.
Troubleshooting
- If a field is missing from the picker, confirm that it belongs to the journey's Dataset Group and has a supported type.
- If a profile field is missing, create or update the Personalization API Sync and wait for a successful run.
- If a path is no longer real time, check for a batch-only node such as a standard batch destination, CRM action, windowed criteria evaluation, or Related Field custom attribute.
- If a match field is empty, verify that the selected source contains the user's value and that the event is mapped to the Dataset Group primary key.
Updated about 8 hours ago
