5

Let's say "Page Views" is a very important metric on your website (KPI) but you want to introduce the nice looking infinity scrolling on certain heavily used pages.

What are the possibilities in order to introduce infinite scroll without losing page views, e.g. is there a legal way of resubmitting a page view to Google Analytics?

8

Yes, you can create virtual pageviews in Google Analytics. When the user goes over a certain point in the page, a pageview is recorded.

You can find information on how to set up virtual pageviews here:

https://developers.google.com/analytics/devguides/collection/gajs/asyncMigrationExamples#VirtualPageviews

This should be done with JavaScript. jQuery Waypoints is a good library to help:

http://imakewebthings.com/jquery-waypoints/

You should select the virtual URL to put in the code carefully. For example you can set them as subpages of the main page.

_gaq.push(['_trackPageview', '/example-page/point-1']);

_gaq.push(['_trackPageview', '/example-page/point-2']);

_gaq.push(['_trackPageview', '/example-page/point-3']);
  • Thanks a lot. I don't find any explanation about whether these virtual pageviews are counted as normal "Page View" in Google Analytics or whether these statistics are counted elsewhere... Do you have a link? – basZero Jan 21 '14 at 13:57
  • 1
    It's in the 1st link above: "This is because virtual pageviews will add to your total pageview count. – Osvaldo Jan 21 '14 at 17:52
  • This answer was great at the time that it was submitted. Google seems to have changed the way that they recommend doing this sort of thing now. You can read their current recommendations here: developers.google.com/analytics/devguides/collection/… – TheRealMikeD Mar 16 at 20:00
4

If you use jquery infinitescroll plugin to do paging, just try as below:

$('.selector').infinitescroll({
  // other options
  dataType: 'json',
  appendCallback: false,
  nextSelector: '.page-nav:last a',
}, function(json, opts) {
   ga('send', 'pageview', $('.page-nav:last a').attr('href'));
  // Do something with JSON data, create DOM elements, etc ..
});
1

Easier way to do it, would be setting up a Tag that fires when the URL changes from /page-1 to /p2...n This way it will capture the pageview when the url changes while scrolling. However, if the URL is static (which I highly doubt), you can use the above mentioned JS methods.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for?Browse other questions tagged or ask your own question.