Populate executionMetadata in Tracking Datasets for Complete CJA Funnel Reporting
Description
The executionMetadata helper function in AJO is extremely valuable for dynamically capturing and storing custom key-value pairs in the message execution context.
In our organization, the primary use case is tracking user exposure to specific fragments and enabling downstream personalization logic without the need to create additional journey branches or duplicated nodes.
However, currently the execution metadata is only populated in the Feedback dataset (Sent, Delivered, Bounce, Error, Exclusion). It is not populated in the Tracking dataset for interactionType events (Opens, Clicks, Spam, and Unsubscribe).
Why is this feature important to you
This limitation significantly reduces the analytical value of execution metadata.
Today, if organizations want complete reporting across both delivery and engagement metrics, the only viable option is to create separate journey nodes for each variation or fragment exposure scenario. This increases journey complexity, maintenance effort, and operational overhead.
If execution metadata were also propagated to the Tracking dataset, organizations could:
- Build full-funnel CJA reports using metadata dimensions
- Analyze opens, clicks, unsubscribes, and spam events by fragment exposure
- Reduce the need for duplicated nodes and branching logic
- Enable more scalable personalization and experimentation strategies
This would make execution metadata far more powerful as both an orchestration and analytics capability.
How would you like the feature to work?
Ideally, any key-value pair defined through executionMetadata should automatically persist across both the Feedback and Tracking datasets.
Current behavior
CJA reports based on execution metadata return zero values for engagement metrics, making it impossible to build complete funnel analyses using metadata-driven logic. As a result, organizations are forced to create additional journey nodes to enable proper reporting.