Merging
There are two types of merging processes.
- Automatic Profile Merging: Automatic profile merging in Tracardi is a process designed to unify multiple profiles that represent the same user. Merging is a background process that looks for the profiles wth the same merging key, e.g. email.
- Identification Points: This a realtime process that merges profiles when
a defined event was sent e.g.
Identification
and it contains data that can be used for mering.
Example of Profile Merging
-
Initial Interaction:
- A user visits a website and signs up with the email address
user@example.com
. Tracardi createsprofile-id-123
for this user.
- A user visits a website and signs up with the email address
-
Subsequent Interaction on a Different Device:
- The same user visits the website on a different device and signs up again with the same email
address
user@example.com
. Tracardi creates a newprofile-id-456
.
- The same user visits the website on a different device and signs up again with the same email
address
-
Identification Point Match:
- If the Identification point is created for a
sign up
event then Tracardi detects that both profiles have the same email address. It identifies this as a match and proceeds to mergeprofile-id-456
intoprofile-id-123
. - If there is no identification point for this event, two profiles with the same email will be detected with the Automatic Profile Merging (APM) and the profile will be merged.
- If the Identification point is created for a
-
Data Merging:
- The system combines the data from both profiles, updating
profile-id-123
with any new information fromprofile-id-456
and retaining all historical data.Is updates events and sessions to link to the new merged profile.
- The system combines the data from both profiles, updating
-
- Conflicting data inf profiles is resolved using predefined set of merging strategies. For example there are 3 different lastnames in the profile.
-
Unified Profile:
- The final unified profile under
profile-id-123
now contains data from both interactions, providing a complete view of the user's behavior and attributes across both devices.
- The final unified profile under
Why my profile ID in the response from Tracardi is different from the one I have sent?
The profile ID you send in the tracker payload might be different in the response from Tracardi due to several reasons related to identity resolution, merging profiles, or system updates. Here are the key reasons why this might happen:
-
- Tracardi performs identity resolution to merge profiles with matching identifiers (like email or phone number). If the system detects that the profile you sent should be merged with an existing profile, it will return the ID of the merged profile.
-
- When Tracardi background processed identifies that two profile should be combined with an existing one, it creates a unified profile. As a result, the returned profile ID will reflect the consolidated profile rather than the one originally sent.
-
Session-Based Profile Retrieval:
- If the session information provided in the payload is linked to a different profile, Tracardi might return the profile ID associated with that session. This ensures continuity in tracking user activities across sessions. This usually happens when the Profile ID is corrupted.
-
New Profile Creation:
- In some cases, if the profile information sent in the payload does not match any existing profiles or the system is configured to automatically create new profile for not existing ones then a new profile will be created, and the response will include a newly generated profile ID.
-
Data Consistency and Updates:
- Tracardi continuously updates and maintains profiles based on the latest interactions and data. If there have been changes or updates to the profile since the payload was sent, the response might reflect the most current profile ID.
Example Scenarios
-
Scenario 1: Identity Resolution
- You send a payload with
profile-id-abc123
and an email. Tracardi identifies that this email already exists underprofile-id-def456
. The system merges the profiles and returnsprofile-id-def456
.
- You send a payload with
-
Scenario 2: Session Linking
- You send a payload with a session ID
session-id-1
that was originally associated withprofile-id-xyz789
. The system returnsprofile-id-xyz789
to maintain session continuity.
- You send a payload with a session ID
-
Scenario 3: New Profile Creation
- You send a payload with an unknown profile ID. Tracardi creates a new profile and returns the new profile ID generated for this interaction.
Profile ID maintenance
The above scenarios show that your client software should always save the newest returned profile ID. If the Profile ID changes it is a sign that the client should update the local Profile ID.