Behavior Tracking > What Does OneSpot's Script Do?

What Does OneSpot's Script Do?

Details what happens behind the scenes with the OneSpot Javascript on the page. For instructions on how to install the javascript on your site, see The OneSpot Tag.

Using metrics reported by the browser through the Navigation Timing API – we collect network and page load timing metrics for each page view. This allows us to correlate page performance (load time, etc) to our product performance or user content consumption.

See What Behavior is Tracked? for more information on which behaviors are tracked.

  • Tracks who viewed the page (anonymous first and third party cookie ID)
  • Associates the page view with a session (A new session starts if the user has been inactive for over 30 minutes)
  • Tracks how long the page was open (wall clock time)
  • Tracks how long the user spent actively engaged with the page (a timer fires every 5 seconds during which a user has the browser tab open/active and has some indication that they are actively engaged with the page – such as moving the mouse or scrolling)
  • Tracks any Custom Actions that you would like to track, such as certain button clicks or form submissions
  • Tracks clicks on hyperlinks

This pageview and engagement data are used for several purposes: (1) as training data/signal for our personalization models, (2) for performance reporting as part of our quarterly business reviews, (3) its visualized in our Insights product so you can explore how your users are interacting with your content, and (4) its used as a signal of new pages to scrape and analyze. For more information on what we scrape from pages, see Scraping Pages.

If you are using a network console or browser developer tools you will see these page-view, page-ping, and other in-page engagement events as calls to http://sp.os-data.com/. These calls are very lightweight and return zero-byte response payloads.

For customers using our OnSite content recommendation product, if there is a current AB test experiment running, the script will randomly assign users into test and control groups, handle setting the proper experience for each user group, and reporting results by user group.

For customers using our OnSite content recommendation product, the script will handle making all API calls to get recommendations for each unit on the page, handle generating the HTML markup to display the recommendations, and inject the HTML recommendation units on the page. The script will also handle reporting on the viewability of the units (i.e. whether the user scrolled the unit into view).

In addition if our API call times out after 4 seconds (due to network latency or any other issues) or if there is an error returned from the recommendation API, the script will fetch a set of static recommendations – these are a set of popular content items which get displayed when we are unable to retrieve dynamic recommendations. These will contain, for every possible filter (business rules) on the page, 50 static recommendation. These static recommendations are selected from the most popular site content that matches the filter. When static recs are employed, they are randomly selected from this set of 50 static recs.

If you are using a network console or browser developer tools you will see recommendation API requests to https://api.rec-engine.com/ images that we serve for OnSite recommendations come from https://cdn.rec-engine.com. Images are dynamically optimized for the users browser (image format) as well as display properties (image size, compression settings) and when the image has to be scrolled into view, we will delay loading the image until the visitor is reasonably close to the image to avoid unnecessary page weight cost. If static recommendations are needed you will see them downloaded from https://dv6fagunx2sva.cloudfront.net

See OnSite Javascript SDK for more details on the Javascript SDK functionality.

With DMP systems such as Adobe Audience Manager and with Ad-Networks such as Appnexus. This lets us sync your user segment information with us if you choose to, and builds a retargeting cookie pool to content through ads in our ReAct product.

Cookie syncs are typically implemented as redirects. If you are using a network console or browser developer tools you will see cookie sync requests to http://sync.os-data.com/. The cookie syncs operate as redirects so you will see the redirects to demdex.net (for AAM) and adnxs.com for Appnexus.

For matching email identifiers to our cookie IDs so that a users behavioral history can be associates when personalizing email content through our InBox product. For more information see InBox User Mapping.

OneSpot has our own end-to-end tracking, processing and reporting pipeline. However, as a double-check and second verifiable count, by default we load an Google Analytics (GA) instance with our script. This lets us double verify any of our page view counts or do reporting that requires GA integration.