Skip to main content

Tracking site visitor information


Describes visitor tracking in Sitecore Discover, including information about user IDs and how tracking information is used.

In order to power automated personalization, Sitecore Discover tracks visitor information. To track this information, we recommend that you assign every visitor on your website an anonymous ID. You can create your own anonymous ID or use the UUID provided by Discover. We use this anonymous ID to track user behavior across your site.

The information collected from visitor tracking is essential for everything that Discover does, such as personalization, rules targeting, dataset generation, and analytics.

Depending on the integration method you choose, there are different methods for dealing with this ID:

If you have chosen to integrate using runtime JS, you must use the Discover beacon to track visitors and pageviews on your website. If you integrate using REST APIs, you can also choose to use the Discover beacon for these purposes. When the beacon is set up as a first-party to your site, it generates an anonymous, unique user ID (UUID) and assigns it to visitors. This UUID is then stored in a first-party cookie in the visitor's browser.

Discover keeps track of visitor actions on your site by using the UUID to create user profiles containing prior interaction history and the associated product affinity scores. Events are streamed into Discover, then affinities are gleaned from the event data. Finally, Discover uses the visitor profile and machine-learned scores to personalize the next set of products displayed in search, recommendations, or product listing pages.

The beacon automatically handles many scenarios in which correct analytics might be difficult to obtain, such as the following:

  • The user moves away from a page quickly.

  • Network delays require you to retry.

  • You send events in batches for optimization purposes.

  • A user has your website open in multiple browser windows, requiring tracking of their activity as separate threads.

If you integrate using REST APIs and do not use the beacon to track visitors, you are responsible for generating and tracking your own user ID .