User Experience Analytics client-side storage cookies
Summarize
Summary of User Experience Analytics client-side storage cookies
User Experience Analytics leverages the SNAnalytics JavaScript SDK embedded within Platform Analytics, Core UI, and the Service Portal to track client-side user activity. This SDK uses both session storage and local storage on the client browser to facilitate analytics tracking and maintain necessary data throughout user interactions.
Show less
Key Features
- Storage Key Structure: All stored keys follow the pattern
sn:{APIKEY}:{KEY NAME}, where each tracked portal has a unique API key. - Session Storage: Temporarily holds data such as server response time, analytics data queue, current page name, and a unique tab identifier. This data persists only during the lifespan of the browser tab and is cleared once the tab is closed.
- Local Storage: Stores persistent data including browser identifiers, server-assigned client IDs, hashed user IDs, and user consent status for tracking. These values remain until the user clears their browser data.
- Data Deletion: Local storage data can be removed by users clearing their browsing data (cookies and site data) via browser settings.
- Data Storage and Security: Collected data is encrypted at rest and stored in a central ServiceNow multitenant repository located regionally (AMS in Canada, EMEA in Germany, or APAC in Japan). Data is anonymized before storage and retained for two years, with backup copies maintained according to release architecture.
Practical Implications for ServiceNow Customers
Understanding the client-side storage mechanisms of User Experience Analytics helps you manage user privacy and data persistence effectively. You can control and comply with tracking consent via local storage settings. The session storage ensures smooth analytics data flow during user navigation, while local storage maintains longer-term tracking identifiers. Data security and retention policies assure compliance with regional data governance standards.
To track client-side user activity, User Experience Analytics uses the SNAnalytics JavaScript SDK that is embedded in Platform Analytics, Core UI, and the Service Portal.
The SNAnalytics SDK uses a combination of session storage and local storage variables to keep track of the information required to facilitate the analytics tracking.
For more information on session storage and local storage, refer to the JavaScript.Info documentation.
For more information on SNAnalytics SDK, see SNAnalytics - Client and SNAnalytics – in the Developer community.
Key structure
All locally stored keys are stored using the following structure: sn:{API_KEY}:{KEY NAME}
Each tracked portal has a unique API_KEY that is stored on the instance. For example, for the portal with an API key abcd and a key name tab, the local key value would be:
sn:abc:tab
Session storage
Session storage is used to maintain the flow of information between web page refreshes and user navigations. Information in session storage is transient and kept available only during the lifespan of the current tab. When a tab is closed, the session storage information is removed.
| Key | Description |
|---|---|
| srt | Server Response Time. The last time SNAnalytics successfully communicated with the User Experience Analytics server. |
| data | Queue of temporary stored analytics data points, which is periodically flushed to the backend. |
| page | The name of the current page, automatically captured by the User Experience Analytics server. |
| tab | Randomly generated unique identifier for the current tab. |
Local storage
Local storage is used to maintain tracking consent information, hashed identification of the user (which is cleared when consent is revoked), and randomly generated identifiers for the browser. Local storage variables are persistent locally and are deleted when the user clears their browsing data.
| Key | Description |
|---|---|
| browser | Randomly generated unique identifier for the current browser. |
| client | The server assigned ID mapped to the browser key value. |
| user | Hashed user id, supplied by the customer. |
| consent | A boolean (yes/no) value that indicates whether the user consents to be tracked. |
Deleting local storage
Data storage
Data is encrypted at rest. It’s stored in a central ServiceNow® multitenant repository closest to you, in either AMS (Canada), EMEA (Germany), or APAC (Japan).Data is anonymized before it’s sent to storage, and deleted at the database level after a retention period of two years.
For the Yokohama release, an additional backup copy is stored in a central repository in Canada using the pre-Yokohama architecture.