Hi folks!
I am writing because this is the first time I have seen this behaviour in one of my applications. I am using the Page variable as it comes straight from Adobe to track most visited pages and page views on each.
After speaking with some users about a particular page where I was not seeing many views, I found out that this Dimension is not tracking all URLs users are visiting. I know the easiest solution would be to create an evar with a custom Page Name, but don't have the resources for doing so momentarily.
Is there any other alternative I could use for this?
Thanks a lot!
Topics help categorize Community content and increase your ability to discover relevant content.
Views
Replies
Total Likes
Unlike Google Analytics, Adobe Analytics actually requires you to set a value with the Page dimension, e.g. via s.pageName if your implementation uses AppMeasurement. But if you don't set a value, then Adobe Analytics would normally fall back to using the page URL instead.
So, given this fallback, if you're still not seeing your expected page URLs being reported with the Page dimension, then the simplest reason is usually because those pages don't even have Adobe Analytics tracking in them. So that would be the first thing to check: open those pages in the browser, then check if Adobe Experience Platform Debugger reports anything with them.
Hi @yuhuisg!
I am using (and would like to use) the URLs alone, as I am creating a segment with these. The plan is that, according to how our URLs are structured, we know what page they are in. In this case, these all end with /qa, so I can quickly go and create the segment with this in mind.
Going back to the issue, as this fallback still happens, I can tell that it happens on some URLs not all, but all contained in the same application and domain. Going back to my example, I can see 5 visits to some of these pages, but having done the testing myself, it does not really show the whole list that I or some other users have visited:
I have used the debugger and can see that at least everytime I have looked at it, I have been able to see Adobe Analytics tracking on it.
Furthermore, and just to be sure I was doing everything alright, I even created an evar and prop with this data and I can see that it is sometimes populated and others empty.
Views
Replies
Total Likes
Keep in mind that the default "Pages" (or pageName) dimension, only pertains to "page views" and not to your clicks / actions. It's also limited to 100 characters... if your URLs exceed that, then they will be truncated.
There is nothing wrong with tracking the URL, it's just that most implementations would set up a "hit expiry eVar" for tracking this, since you can get up to 255 characters... then you can use your page name as an actual name...
You don't have to of course, every implementation is different...
I agree with @yuhuisg that it sounds like the pages you are missing are likely not tracking at all... that would be the best place to start.
As for using URL as your pageName, if this is what you wish, I would explicitly pass the URL to the dimension myself, rather than relying on the fallback solution...
Views
Replies
Total Likes
The only time I have really seen anything like this is when there was a timing issue on the site or a page redirect and the page changed to quickly that we were missing data. I don't know if there is functionality like that in your space but may be worth looking into.
I agree with the earlier post to check URL to see if you can get what you need from that. Otherwise, you could look at interactions that could only happen on that page to get a directional count of engaged visits.
Hi @Nick_Walter !
I think it could be the case. URL is changed when user clicks on specific tabs of a page. Maybe setting up a click on that tab as the event/trigger of the collection of the URL could fix this?
Views
Replies
Total Likes
Is your site an SPA, or is this portion of it an SPA? You mention tabs... if those tabs change the content and URL of the page using SPA techniques, and your triggers are based on something like Window Loaded or DOM Ready, that could explain a lot....
You might even want to create a "History Change" rule (with conditions to only trigger in certain scenarios... ) You will have to test thoroughly to be sure you don't create double tracking, which can be worse than missing traffic....
Views
Replies
Total Likes
Hi @Jennifer_Dungan! Thanks for your comment and help
Yes, this page kinda behaves like a portion of an SPA, so when passing the URL to an evar or prop, it takes the value of the previous page in the SPA and not the one I want.
I am not sure how to setup the conditions of this, in a way that could help me obtain the right URL.
My first thought was to use the click on the specific tab as a trigger plus the history change, but in the conditions should I use "Landing Page" or what?
Views
Replies
Total Likes
Yeah, I've had to deal with stuff like this... they all act a little differently...
because the URL changes upon clicking the tab, if you add your tracking on the click event, you will get the previous tab's URL (where the click occurred)...
If you create a new rule for History Change, that should be after the new URL, but you need to add conditions to restrict to just the tabs (so other pages don't trigger it) and to make sure that if the user refreshes you don't get double tracking....
You could also try adding a second trigger onto your normal page view for "History Change"... but you also need to add a Max Frequency condition to make sure that your regular "DOM Ready" or "Window Loaded" doesn't double trigger... but History Change may happen before these others and if you are pulling data, it might break something on your normal pages...
Or if you developers can create a custom JS event for you, that triggers when the tab is loaded from someone interacting with a tab (but not on the initial load), you could then create a rule looking for that event.... this one is the easiest to control, but requires effort from your developers.....
Or you could try doing a click, but adding a delaying to the tracking (so that you can get the new URL instead of the old one)... this can be done, but if you aren't a coder this can be complex....
Views
Replies
Total Likes
@germanroncelli wrote:
Yes, this page kinda behaves like a portion of an SPA, so when passing the URL to an evar or prop, it takes the value of the previous page in the SPA and not the one I want.
This is a known problem with SPAs. From those who use Google Tag Manager, the general consensus is to have your developers program what you need for you. That is, send a _satellite.track() Direct Call in their code when a new SPA page is rendered, and include the fake URL in the "detail" parameter, e.g.
// e.g. the SPA page's URL is https://www.spa.site/fake/page/foo
_satellite.track('page view', detail: { url: 'https://www.spa.site/fake/page/foo' });
Then use that URL in your page tracking.
If your site has a data layer, then you can do the same with your data layer, instead of using a Direct Call. E.g. if your data layer is called "dataLayer", then something like this should work:
// e.g. the SPA page's URL is https://www.spa.site/fake/page/foo
dataLayer.push({event: 'page view', url: 'https://www.spa.site/fake/page/foo'});
Then use that URL in your page tracking.
Views
Replies
Total Likes