Sitecore CDP Audience Export
Sitecore CDP Audience Export : Data Challenges and Strategy
As organizations transition from Sitecore Experience Platform 10.1 to modern solutions like Sitecore CDP (part of the Sitecore AI ecosystem), data migration and continuity become critical concerns.
This blog outlines a real-world use case, key challenges, and the strategy used to ensure a seamless transition—especially when maintaining compatibility with existing downstream systems.
Use Case Overview
The current implementation is built on Sitecore Experience Platform 10.1, where:
- All contact data and user interactions are captured
- Data is sent to a third-party system
- The external system processes the data and generates analytical reports
During migration to Sitecore CDP, a critical requirement is:
👉 The third-party system must continue receiving data in the exact same JSON format
This ensures:
- No disruption in reporting
- No changes required in downstream systems
Migration Challenges
1. Incomplete Data Availability
Not all constructs from XP exist in CDP:
-
No direct equivalents for:
- Goals
- Events (as defined in XP)
- Page Event Definition items
-
Data model differences:
- XP → Contact
- CDP → Guest
👉 Result: Gaps in behavioral and historical data representation
2. Maintaining Data Format Consistency
The third-party system expects a strict JSON schema based on XP.
Any deviation can:
- Break integrations
- Require costly refactoring
Solution Approach
The implementation is divided into two parts:
Part 1: Data Creation Using Audience Export (This Blog)
Goals:
- Recreate missing data constructs
- Map CDP Guest data to XP Contact structure
- Output data in the legacy JSON format
Recreating Missing Data
In XP, the Interaction object contains Goals and Events.
To replicate this in CDP:
Step 1: Create Custom Templates
In Sitecore AI CMS:
-
Create templates for:
- Goals
- Events
-
Organize them in dedicated folders:
-
/Goals -
/Events
-
Step 2: Capture Custom Data via Events
Using the Cloud SDK (Headstarter Kit):
You can send custom data through:
- Page View Events
- Custom Events (e.g., Goal events)
Each event includes a data extension object.
Example: Fetch the goal and event data crated using the custom event and goal template and populate as you need as shown in the above diagram.
Step 3: Access Data in Guest Profile
Once events are triggered:
-
Data is stored under:
-
Guest →Session→ Events →
arbitraryData.ext
-
Guest →Session→ Events →
This enables:
- Reconstruction of Goals
- Event tracking per session
The data which we send from the this above event is available in event object of the session.
"arbitraryData": {
"ext": {
"Data": "User Logged in Successfully",
"DateTime": "2026-04-08T07:36:06.512Z",
"DefinitionId": "88f351c3-be40-45ea-864a-54c2b830d62f"
}
}
👉 Key Point:
This allows you to inject missing XP-like data into CDP events.
⚠️ Limitation:
- Session extension objects cannot be modified
- Only event-level data is flexible
Exporting Data via Audience Export
There are multiple export options:
- Custom API implementation
- REST API extraction
- Audience Export (chosen approach)
Step-by-Step: Audience Export
1. Create a Segment
Define a segment to filter relevant Guests.
2. Create Full Audience Export
Navigate to Audience Export and configure:
- Select Full Export
- Choose your segment
3. Define Output Format
This is the most critical step.
Two modes are available:
Basic Mode
- Flat key-value JSON
- Limited flexibility
Advanced Mode (Recommended)
- Supports nested JSON
- Allows reconstruction of XP-style structure
👉 Use this to:
- Map Guest data
- Include custom event data
- Rebuild legacy JSON schema
4. Run Test
Validate the structure before full execution.
5. Execute Export
Click Run Now to generate the export.
6. Download Data
- Go to Activity Tab
- Enable download option (disabled by default)-Go to CDP settings as mentioned below
- Download the file
7. Extract the Data
The export is in .gz format:
- Default unzip may show empty data
- Use tools like:
After extraction:
- You’ll get a single JSON file
- Contains all Guest records for the segment
Key Insight
Even though CDP lacks native XP constructs:
👉 You can reconstruct them using custom event data + advanced export formatting
Part 2: Data Delivery via Sitecore Connect (Coming Next)
In the next blog, we will cover:
- Accessing exported data using Sitecore Connect
- Sending transformed data to the third-party system
- Ensuring reliability and compatibility
Conclusion
Migrating from Sitecore Experience Platform 10.1 to Sitecore AI is more than a platform upgrade—it’s a data transformation challenge.
By leveraging:
- Custom event extensions
- Audience Export (Advanced Mode)
- Structured JSON mapping
👉 You can successfully maintain backward compatibility with existing systems.
Comments
Post a Comment