In graph based stitching, you specify an event dataset as well as the persistent ID (cookie) and the namespace of the transient ID (person ID) for that dataset. Graph-based stitching creates a new column for the stitched ID in the new stitched dataset. And then uses the persistent ID to query the identity graph from the Experience Platform Identity Service, using the namespace specified, to update the stitched ID.
Stitching makes a minimum of two passes on data in a given dataset.
Live stitching: attempts to stitch each hit (event) as it comes in, using the persistent ID to look up the transient id for the selected namespace by querying the identity graph. If the transient id is available from the lookup, this transient id is immediately stitched.
Replay stitching: replays data based on updated identities from the identity graph. This stage is where hits from previously unknown devices (persistent IDs) become stitched as the identity graph has resolved the identity for a namespace. The replay is determined by two parameters: frequency and lookback window. Adobe offers the following combinations of these parameters:
Privacy: When privacy-related requests are received, in addition to removing the requested identity from the source dataset, any stitching of that identity across unauthenticated events must be undone. Also, the identity must be removed from the identity graph to prevent future graph-based stitching for that specific identity.
The unstitching process, as part of privacy requests, changes at the start of 2025. The current unstitching process restitches events using the latest version of known identities. This reassignment of events to another identity might have undesirable legal consequences. To remedy these concerns, from 2025 on, the new unstitching process updates events that are subject of the privacy request with the persistent ID.
Data beyond the lookback window is not replayed. A visitor must authenticate within a given lookback window for an unauthenticated visit and an authenticated visit to be identified together. Once a device is recognized, it is live stitched from that point forward.
Consider the following two identity graphs for persistent id 246
and 3579
, how these identity graphs are updated over time, and how these updates impact the steps in graph-based stitching.
You can view an identity graph over time for a specific profile using the Identity Graph Viewer. See also Identity Service linking logic to get a better understanding of the logic used when linking identities.
Live stitching attempts to stitch each event, upon collection, to known information at that time from the identity graph.
Time | Persistent IDECID |
NamespaceEmail |
Stitched ID (after live stitch) | |
---|---|---|---|---|
1 | 2023-05-12 11:00 | 246 |
246 |
246 |
2 | 2023-05-12 14:00 | 246 |
246 bob.a@gmail.com |
bob.a@gmail.com |
3 | 2023-05-12 15:00 | 246 |
246 bob.a@gmail.com |
bob.a@gmail.com |
4 | 2023-05-12 17:00 | 3579 |
3579 |
3579 |
5 | 2023-05-12 19:00 | 3579 |
3579 ted.w@gmail.com |
ted.w@gmail.com |
6 | 2023-05-13 15:00 | 246 |
246 bob.a@gmail.com |
bob.a@gmail.com |
7 | 2023-05-13 16:30 | 246 |
246 a.b@yahoo.co.uk 246 bob.ab@gmail.com |
a.b@yahoo.co.uk |
You can see how for each event the stitched id is resolved. Based on the time, the persistent id, and the lookup of the identity graph for the specified namespace (at that same time).
When the lookup resolves to more than one stitched id (like for event 7), the lexicographic first id returned by the identity graph is selected (a.b@yahoo.co.uk
in the example).
At regular intervals (depending on the chosen lookback window), replay stitching recalculates historical data based on the most recent version of the identity graph, at the time of the interval.
With a replay stitching happening at 2023-05-13 16:30, with a 24-hour lookback window configuration, some events from the sample are re-stitched (indicated by ).
Time | Persistent IDECID |
NamespaceEmail |
Stitched ID (after live stitch) |
Stitched ID (after replay 24 hours) |
|
---|---|---|---|---|---|
2 | 2023-05-12 14:00 | 246 |
246 bob.a@gmail.com |
bob.a@gmail.com |
bob.a@gmail.com |
3 | 2023-05-12 15:00 | 246 |
246 bob.a@gmail.com |
bob.a@gmail.com |
bob.a@gmail.com |
2023-05-12 17:00 | 3579 |
3579 ted.w@gmail.com |
3579 |
ted.w@gmail.com |
|
2023-05-12 19:00 | 3579 |
3579 ted.w@gmail.com |
ted.w@gmail.com |
ted.w@gmail.com |
|
2023-05-13 15:00 | 246 |
246 a.b@yahoo.co.uk |
bob.a@gmail.com |
a.b@yahoo.co.uk |
|
2023-05-13 16:30 | 246 |
246 a.b@yahoo.co.uk 246 bob.ab@gmail.com |
a.b@yahoo.co.uk |
a.b@yahoo.co.uk |
With replay stitching happening at 2023-05-13 16:30, with a 7-day lookback window configuration, all events from the sample are re-stitched.
Time | Persistent IDECID |
NamespaceEmail |
Stitched ID (after live stitch) |
Stitched ID (after replay 7 days) |
|
---|---|---|---|---|---|
2023-05-12 11:00 | 246 |
246 |
246 |
a.b@yahoo.co.uk |
|
2023-05-12 14:00 | 246 |
246 bob.a@gmail.com |
bob.a@gmail.com |
a.b@yahoo.co.uk |
|
2023-05-12 15:00 | 246 |
246 bob.a@gmail.com |
bob.a@gmail.com |
a.b@yahoo.co.uk |
|
2023-05-12 17:00 | 3579 |
3579 ted.w@gmail.com |
3579 |
ted.w@gmail.com |
|
2023-05-12 19:00 | 3579 |
3579 ted.w@gmail.com |
ted.w@gmail.com |
ted.w@gmail.com |
|
2023-05-13 15:00 | 246 |
246 a.b@yahoo.co.uk |
bob.a@gmail.com |
a.b@yahoo.co.uk |
|
2023-05-13 16:30 | 246 |
246 a.b@yahoo.co.uk 246 bob.ab@gmail.com |
a.b@yahoo.co.uk |
a.b@yahoo.co.uk |
When you receive a privacy request, the stitched id is deleted in all records for the user subject of the privacy request.
The following table represents the same data as above, but shows the effect that a privacy request (for example at 2023-05-13 18:00) has for the sample events.
Time | Persistent IDECID |
NamespaceEmail |
Stitched ID (after privacy request) | |
---|---|---|---|---|
2023-05-12 11:00 | 246 |
246 a.b@yahoo.co.uk |
246 |
|
2023-05-12 14:00 | 246 |
246 a.b@yahoo.co.uk |
246 |
|
2023-05-12 15:00 | 246 |
246 a.b@yahoo.co.uk |
246 |
|
2023-05-12 17:00 | 3579 |
3579 ted.w@gmail.com |
3579 |
|
2023-05-12 19:00 | 3579 |
3579 ted.w@gmail.com |
3579 |
|
2023-05-13 15:00 | 246 |
246 a.b@yahoo.co.uk |
246 |
|
2023-05-13 16:30 | 246 |
246 a.b@yahoo.co.uk 246 bob.ab@gmail.com |
246 |
The following prerequisites apply specifically to graph-based stitching:
Email
, or Phone
) you want to use during stitching to resolve the transient ID. See Experience Platform Identity Service for more information.You do not require a Real-time Customer Data Platform license for graph-based stitching. The Prime package or higher of Customer Journey Analytics includes the required Experience Platform Identity Service entitlements.
The following limitations apply specifically to graph-based stitching: