Is there a way to know when a customer is doing something on website out of multiple tabs?
How do we unify the experience/story/flow from all tabs ?
for example user does the below actions in order
visited tab 1
visited tab 2
visited tab 3
visited tab 1 and visited tab 3
How do I unify the analysis from all hits to make it seem like a single tab ?
Solved! Go to Solution.
Views
Replies
Total Likes
If a user is in browser using multiple tabs. The browser will in each tab case load a page. So in essence it will be 3 page views.
If the user then hops from one tab to another it will still count as pages they view in a session and still count as just one unique visitor. What you wont know is once a tab and page are loaded. if the user hops from tab 1 to tab 3 and doesn't reload or view a new page. As soon as they click a link that navigates to a new page in any of tabs then you will see new activity. Or if you tag custom links.
Basically all 3 tabs will appear as though it was one tab.
Views
Replies
Total Likes
If a user is in browser using multiple tabs. The browser will in each tab case load a page. So in essence it will be 3 page views.
If the user then hops from one tab to another it will still count as pages they view in a session and still count as just one unique visitor. What you wont know is once a tab and page are loaded. if the user hops from tab 1 to tab 3 and doesn't reload or view a new page. As soon as they click a link that navigates to a new page in any of tabs then you will see new activity. Or if you tag custom links.
Basically all 3 tabs will appear as though it was one tab.
Views
Replies
Total Likes
By default, Adobe really doesn't detect the use of multiple tabs (and it doesn't really take this into much consideration)....
For the most part, pathing is done by looking at the sequence of tracking calls made by the user.... (I don't believe that it uses the internal referrer as part of the pathing calculation.. but I could be wrong - I really can't find documentation to support either.... but I have been doing a lot of testing in multiple tabs today, across multiple sites, and if I build a flow diagram based on "server" dimension and segment to my user id, I can see my path flip-flopping back and forth between the sites, even though they have remained in multiple tabs throughout the day)
The pages loaded will be in sequence... based on the timestamp of the tracking call
So they should already be in sequence... regardless of being loaded via different tabs (the only thing that might not match up would be looking at your pathing together with your Activity Map data (since the pathing might say the user went Page C to Page D, but Activity Map would say the previous page to Page D is actually Page B - but that is expected.. that is where the link was that they actually clicked).
If you still feel like you want to know if there are multiple tabs in use, you may have to code something custom to detect that... I found this, which may be of help:
https://adnan-tech.com/detect-multiple-tabs-opened-at-same-time-javascript
However, I always encourage users to run their own tests (usually in a QA or Dev environment where it's easier to isolate their data) and to try out different scenarios to see what is happening in their data. This not only creates a stronger understanding, it gives you piece of mind that you better understand it (and can explain it to your upper management if called on to do so)
Views
Replies
Total Likes
If you want to, you can set a "tab ID" and track that to an eVar:
if (sessionStorage.getItem("tab id")) {
return sessionStorage.getItem("tab id");
}
else{
var tabID = Math.floor(Math.random() * 500000);
sessionStorage.setItem("tab id",tabID);
return tabID;
}
This works on the basis that sessionStorage is unique for every browser tab. As a result, setting a random ID to a sessionStorage key is sufficient to identify when the user is browsing in a new tab.
Credit to @FrederikWerner for this.
Thank you for the ping @yuhuisg, let me elaborate a bit.
One way to know if (and which) users use multiple tabs, we can give every tab an Id. While that Id should be unique per user, it does not need to be unique across all users, so we can stay within Low Traffic limits in Adobe Analytics. In Launch, we could create a Custom Code Data Element like this:
if (sessionStorage.getItem("tab id")) {
return sessionStorage.getItem("tab id");
}
else{
var tabID = Math.floor(Math.random() * 500000);
sessionStorage.setItem("tab id",tabID);
return tabID;
}
This Data Element takes advantage of the fact that modern browser's Session Storage is only valid for the specific tab. With this code, every tab will receive a random number between 0 and 500,000 as Id, which can then be put into a dimensions (like a prop or eVar). The actual value of that dimension is not of interest, we just need some form to identify the current tab.
In Analytics, we can then use Segments to work with the pseudo-random Id. For example, we can easily cover those use cases:
Views
Likes
Replies