We are currently migrating from Adobe Analytics to Customer Journey Analytics (CJA) and would like to request support in enabling identity stitching for our setup.
Our Setup:
We operate a B2B lead-generation website.
AEP Web SDK is implemented, and ECID is generated for all page views.
Email is captured only at the time of lead form submission.
We will soon be integrating Marketo and Salesforce data into Adobe Experience Platform using the RTCDP B2B schema, which will also feed into CJA.
Our Objective:
Stitch anonymous ECID-based behavior with the email identity once it becomes available via lead form submission.
Enable reporting in CJA that shows a complete view of the customer journey — from anonymous engagement to form submission.
Avoid increasing profile counts in RTCDP based solely on ECID-based anonymous traffic (we do not want ECID-only visitors to create full profiles).
Ensure that profile qualification only happens when a user submits their email.
Can someone help me out how can I achieve this without burning the b2b profile count.
Note : We are going to bring the marketo and Salesforce data later to rtcdp and enable it to profiling using rtcdp b2b schema.
Topics help categorize Community content and increase your ability to discover relevant content.
Views
Replies
Total Likes
Hi @MohitVashist
I think you are on the right track, yes, identity stitching between ECID (anonymous web behavior) and email (authenticated identity) is absolutely achievable in AEP/CJA, without unnecessarily inflating your profile count in RTCDP.
CJA supports identity stitching at reporting level, based on the identityMap in the Web SDK. You don't need to create full RTCDP profiles just to get stitched reporting in CJA.
As long as both ECID and email are passed into the identityMap, CJA can stitch the journey once the same email appears in another dataset (like Marketo or CRM).
So when a user submits a form, push email alongside ECID in the identityMap.
identityMap: {
ECID: [{ id: 'ecid-value-here', authenticatedState: 'ambiguous' }],
email: [{ id: 'user@email.com', authenticatedState: 'authenticated' }]
}
To avoid burning B2B profile count on anonymous visitors -
Configure Profile Merge Policies in RTCDP to only qualify profiles when an authenticated ID (like email) is present.
Do not set ECID as a primary identity in your schema unless absolutely needed.
Only ingest lead records into RTCDP once email (or another primary ID like CRM ID) is available from form fills or your Marketo/CRM feeds.
Those systems will send known user data (like email, lead IDs, account details).
AEP will use the identityMap to stitch the previously anonymous ECID behavior to the known user, enabling end-to-end journey reports in CJA.
Hope that helps!
@pradnya_balvir , @KumarRishii , @Vinay_Chauhan how does this non-profile enabled dataset work with consent data? Don't I need to track the anonymous user's consent choices in a profile-enabled dataset? Would this profile fragment not have to be created anyway?
Views
Replies
Total Likes
I hope the above steps helps clarify your queries.
Views
Replies
Total Likes
Hi @KumarRishii @Vinay_Chauhan What is drawback of this approach. As far i know below are some
1. No Audience Activation for anonymous users.
2. Delayed Personalization for AJO Journey anonymous web activity cannot trigger real time journeys untill the user become unknown.
3. Delayed identity resolution until authentication occurs.
Please let me know how to avoid this are is there any other drawback ?
Thanks,
Views
Replies
Total Likes
Hi @MohitVashist ,
Below approach will ensure you get end-to-end journey visibility in CJA without burning your RTCDP profile budget.
1: Use Identity Stitching via Identity Graph in AEP
Ingest all your data (web, Marketo, SFDC) with proper identity mapping:
Use identityMap.ecid for all events
"identityMap": {
"ECID": [
{
"id": "your-ecid-value",
"authenticatedState": "ambiguous"
}
]
}
B. Form Submit with Email
On lead form submission, pass the email using identityMap.email
"identityMap": {
"email": [
{
"id": "john@example.com",
"authenticatedState": "authenticated",
"primary": true
}
]
}
This stitches ECID to email and qualifies it as a known identity in AEP, enabling identity resolution only when email is present.
2: Avoid Profile Count for Anonymous ECID
When setting up your CJA Connection, make sure:
You include both ECID and Email ID as identity namespaces.
You enable Identity Graph Lookup:
This allows CJA to stitch behavior from ECID to email-based actions post-submission.
When you ingest these:
Use the same Email ID namespace used in Web SDK identityMap.
Ensure both sources (Marketo, Salesforce) use the same identity.
Once stitched, you'll see:
Pre-lead behavior (ECID)
Form submit (email)
CRM/marketing engagement (via joined email)
Thanks.
Pradnya
Views
Likes
Replies