Cross-Channel Journey Analysis and Identity
Nothing joins without identity
Cross-channel analysis only works if CJA can resolve events to one person. AEP's Identity Service maintains an identity graph linking ECIDs, CRM IDs, hashed emails, and other namespaces; CJA uses that graph or its own stitching to connect datasets collected by different systems. Field-based stitching requires a persistent ID such as CRM ID and a transient ID such as ECID in the same dataset, plus a replay window that determines how long a transient ID is remembered while waiting for the persistent one to arrive. Graph-based stitching uses the AEP identity graph directly, including a private graph.
The connection's person ID is the anchor. Events lacking that identity become effectively unattributable to a person and can distort person metrics.
Traps the exam favors: stitching applies only to datasets configured for it, so a partially stitched connection mixes stitched and event-level people and inflates person counts. Time zones and clock skew across channels reorder events, which corrupts sequence analysis in Journey Canvas, Fallout, and Flow. A unique-person count that differs from the source system usually reflects identity coverage rather than a bug. Stitching cannot repair a namespace that exists in neither dataset.
Rule of thumb: reconcile person counts against a trusted source before trusting any cross-channel journey output, and treat a gap as a data-architecture finding. Worked example: web sessions and call-center records are stitched on CRM ID with a seven-day replay window; contacts who call more than a week after browsing may appear as two people, so journey metrics are reported with that caveat.