Capture client-side behavior with JavaScript SDK


With the Sitefinity Insight JavaScript SDK, you can easily track client-side interactions of your website visitors. You can also use the SDK to:

  • Personalize the experience of visitors
  • Check whether visitors are associated with a certain persona
  • Check whether visitors scored points as leads

To create and initialize a new instance of Sitefinity Insight SDK client, in the HTML of your page perform the following:

Register an initialization callback

In the <head> tag of your page, add a <script> tag containing the code to create an instance of the Insight SDK client using the following sample:

Optionally, you can provide a settings object that can contain the following properties:

Name Required Data type Description
apiKey Yes GUID The API key of the data center you want to report data to.
source Yes String The name of the data source to which to report data.

RECOMMENDATION: We recommend using a single data source for all data within a data center in most cases.

For more information, see Data sources.

authToken No String The authorization token that is used for authentication. You can use both bearer and authorized application tokens. For more information, see Work with the Sitefinity Insight API » Authorization.
apiServerUrl No String The URL of Sitefinity Insight API server, to which data is reported. The default is the US API server. To learn all available deployment options, see Sitefinity Insight deployment options » Sitefinity CMS and Sitefinity Insight deployments.
trackingCookieDomain No String The cookie domain. For more information, see Manage cookies.
autoTracking No Boolean A flag that can be used to stop the SDK's automatic tracking of visits, which is turned on by default. For more information, see Manage automatic tracking of visits.
instrument No Boolean Used for enabling the HTML5 instrumentation tracking. For more information, see Enable HTML5 attribute instrumentation.
trackPageVisits No Object Used for providing custom attributes to the default page tracker. For more information, see Track pages.
trackBrowserInformation No Boolean When you set this property to true, Sitefinity Insight adds the following information to the metadata of the visitor’s interaction (the subject):
  • Information about the current user agent
    This is the browser identifier
  • The browser-supported browser languages
enableTracking No Boolean

By default, the value of the property is set to true. If you disable this property, no requests are made to the Sitefinity Insight API and no tracking and personalization are executed by the SDK. In accordance with GDPR, the visitor provides consent to be tracked or rejects to be tracked. You set the property value to true or false, accordingly.

For more information, see Manage cookies » GDPR compliance.

NOTE: You can use this parameter only if you are working with JavaScript SDK version 3.0 and newer.

cookieMaxAgeInDays No Number

Default value: 365 (one year). This property specifies the number of days until the tracking cookie expires.

NOTE: You can use this parameter only if you are working with JavaScript SDK version 3.1.2 and newer.

cookieSlidingExpiration No Boolean

Default value: false. If enabled, cookie expiration resets every time a front-end page is visited. Unless you set the cookie expiration in the maxAgeForTrackingCookieInDays property, the default value of 365 is used.

NOTE: You can use this parameter only if you are working with JavaScript SDK version 3.1.2 and newer.

crossDomainTrackingEntries No Array of strings

List of domain names of sites for which cross-domain tracking of visitors is performed.

That is, a single physical user is tracked across all these domains and their visitor journeys are merged into one.
For more information, see Track interactions across multiple domains.

NOTE: You can use this parameter only if you are working with JavaScript SDK version 3.1.2 and newer.

sessionLengthInMinutes No Number The amount of time in minutes which defines a session - group of interactions that take place within a given time frame.
If the user is inactive for more than the specified number of minutes, next interactions become part of a new session. Otherwise, every time there is an interaction, the expiration time is extended by adding these additional minutes.
trackYouTubeVideos No Boolean Enable tracking of YouTube videos. For more information, see Track Interactions with YouTube videos.
trackVimeoVideos No Boolean Enable tracking of Vimeo videos. For more information, see Track Interactions with Vimeo videos.
 useSecureCookies No  Boolean Default: true. When set to false, the tracking cookie will be issued with parameter SameSite=Lax over https connections.
For more information, see Manage cookies » Additional cookie configuration.

Start the SDK

After you have registered the callback, download and execute the Insight SDK.

To do this, in the <head> tag, add the following <script> tag:

RECOMMENDATION: We recommend using the sample above to use the minified Insight SDK distribution in production.

However, you can choose to use a development build of the SDK. The following table contains the current versions of the SDK with the respective CDN links:

Minified Minified version 3.1.28
Development Development version 3.1.28

Was this article helpful?