Users and sessions are defined differently in different analytics platforms (such as Google Analytics). This article describes how Dynamic Yield defines users and sessions.
Users
A visitor who enters a site that contains the Dynamic Yield script is given a unique DYID. The DYID is stored in cookies, session storage, and local storage of the browser.
The DYID is not a 1:1 identifier for users, who are assigned a new DYID if any of the following occur:
- The user uses a different browser or a different device.
- The user deletes the cookies, cache, and local storage of the browser. Clearing the cookies and cache alone is insufficient because they are restored by the local storage as soon as the user visits another site with the Dynamic Yield script.
- The user enters the site using incognito mode. If multiple incognito windows are opened at the same time, the user will get the same DYID in each of the windows.
- The user returns to the site after the expiration of the cookie storing the DYID.
Users are considered identified users when they are identified with a unique ID (CUID), for example, through an event (say, login or subscribe to newsletter) that includes the user ID (say, an email address). In the audience explorer and in audience reports, identified users are considered once, even if they were assigned multiple DYIDs.
Counting users in reports: When an experience is sticky for the user (multi-session), each DYID exposed to it is counted only once, on the day of its first interaction with the variation. If a DYID is exposed to a variation multiple times, it isn't counted again.
Note: Reports for experiments with only a single variation (no control group) that are sticky for the user are normalized by session count rather than user count. This is because the experience is served to all users (as there is nothing else to serve).
Sessions
A session begins when a user enters a domain with the Dynamic Yield script and ends after 30 minutes of inactivity on your site, or if the user deletes their browser’s cookies and cache.
For purposes of attributing conversions to a particular session, however, the session is no longer in play only after 2 hours of inactivity on your site, or if the user deletes their browser’s cookies and cache. That is, if the user opens a new session within 2 hours of the first one, any purchases are attributed to the original session.
The same 2-hour window is also applied to measuring session stickiness and frequency settings. Sessions are counted from when a user enters a site with the Dynamic Yield script until the browser is closed or 2 hours have elapsed.
Counting sessions in reports: Reports in Dynamic Yield are calculated at midnight every day for the previous day, taking into account all the interactions users had with the running tests on your website. For tests that are sticky for the session, Dynamic Yield counts the number of unique session IDs for that day. If a session is ongoing at midnight, it's counted twice: Once for the previous day and once for the following day. Any event your user triggered during the session is counted only on the day it happened.
Impressions
Impressions are the serving of a variation (or the control group). That is, when a variation is served, an "impression" is fired. It doesn't necessarily mean that the user actually viewed it (for example, if the variation is in the footer, below the fold, and the user didn't scroll down).
This metric is also used to calculate CTR, which is the total number of clicks divided by the total number of impressions. Note that CTR is not Unique CTR (if a user is served with the variation 3 times and clicks it twice, the CTR is 66.7%).