Customer merging is an important feature that allows you to identify a single customer across multiple devices and browsers. When a customer visits your website using their phone and later through a PC for example, Exponea sees this as two separate customers with 2 different cookies. However, once he or she gets identified (after making a purchase or logging in) on both devices, these two customers will then be automatically merged into one, together with all their historic events and customer properties, where the properties will be compared and the newer customer property will override the older one in the resulting profile. After the merging, an event merge will be tracked. As the record is merged to one profile, duplicate profiles are avoided, and instead, you achieve a coherent and reliable tracking of your customers.

Merging rules

  • No two customers can exist with the same hard or soft ID at the same time in the same project
  • It is NOT possible to merge customer profiles with different hard IDs of the same type.
  • If there is a “clash” of identical soft IDs of the same type in two customer profiles with different hard IDs of the same type, then the soft ID is transferred (or “stolen”) from the “older” profile and will remain only in the “newer” profile. However, historic events are NOT moved from the “older” into the “newer” profile. This ensures the maintenance of your previous customer’s data.
  • Events are moved from source customers to destination customer (who's ID has a lower number and therefore higher priority)
  • Properties from source customers are added to destination customer
  • If destination customer already have a property with a given name it is replaced
  • The same rule that applies to properties applies also to assigned HTML campaigns
  • Latest communication overwrites the older one
  • Assigned ab tests are merged in reversed order (the ab test from a customer with newer (larger) internal ID wins over the older (smaller) one)
  • add_first_session flag is set only if any of the customers has it set to True

'Merge' event

When the customer's IDs from multiple devices finally merge into one customer profile an event 'merge' is tracked with the following properties:





Internal IDs of merged customers

["58244a8dfb6009d9d3213198", "5820734f83043485f66795eb"]


Internal ID of final customer



External IDs (registered, cookie) of merged customers

{"5820734f83043485f66795eb":{"registered":["[email protected]"]},"58244a8dfb6009d9d3213198":{"cookie":["c50961e7-9086-4169-8066-1ee47615108b"]}}


List of all external IDs (registered, cookie) from two initial profiles

{"cookie":["c50961e7-9086-4169-8066-1ee47615108b"],"registered":["[email protected]"]}


List of external IDs (registered, cookie) in the request which merged the clients

{"cookie":"c50961e7-9086-4169-8066-1ee47615108b","registered":"[email protected]"}

Merging problem

There is a case when wrong people might be merged together. This could happen in the following situation: customers in your project do not have hard IDs. When a Customer 1 comes on to your website on the device of a Customer 2, the system does not recognize Customer 1 as a unique customer. Instead, it sees them as an additional soft ID that will be added to the soft ID of Customer 2. Only one customer profile remains then even though they are, in fact, two unique customers.

You can prevent this problem from happening by setting an email as a hard ID. If for some reason you want to keep email as a soft ID you must set some other hard ID. Thanks to this when Customer 1 comes on the device of Customer 2 the system recognizes that a unique customer (with a unique hard ID) comes on the device of another unique customer (with another hard ID) and so the merging does not happen.

New soft IDs can be defined when creating a new project. If you want to add new soft IDs to an already existing project or just adjust the settings of your IDs, please contact your CSM.

Updated 27 days ago


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.

We rely on cookies

to optimize our communication and to enhance your customer experience. By clicking on the Accept and Close button, you agree to the collection of cookies. You can also adjust your preferences by clicking on Manage Preferences. For more information please see our Privacy policy.

Manage cookies
Accept & close

Cookies preferences

Accept & close