How (im)precise is Google Analytics actually? I've been using Google Analytics for years now on a pretty well visited web site (800k+ visits per month).
Now I decided to log every page request in a database table, and I'm tracking the user-agent of the request. I have also eliminated bot requests (googlebot, bingbot and many more...)
What I found out is that I have almost more than double requests to a page than Google Analytics pageviews is willing to admit.
E.g. GA shows 137 pageviews to a specific URL, but I tracked even 255!
Google Analytics is VERY precise. It's not very accurate though. And that's the difference you're seeing since you're not looking into trends but instead at absolute numbers.
Start by reading this post by Avinash:
Reflections: Accuracy, Precision & Predictive Analytics
Bots are everywhere these days and a lot of times disguised as real user agents. You should come up with a testing to make sure client have both javascript and cookies enabled. In that case he'll be tracked by Google Analytics.
Besides that that some users might have adBlocks extensions that block Google Analytics. This is fairly uncommon but depending on the public can be more common. Tech savvy users have a higher chance to use a plugin that blocks GA, thus IT blogs might be hit by this harder than an average site.
The best way to test the real accuracy of Google Analytics ignoring user agents without javascript, cookies and that block GA tracking is to track the users on your site using GA as well. You can do that in Google Analytics using the LocalRemoteServerMode.
Add the following line at the end of your GATC (GA Tracking Code):
_gaq.push(['_setLocalGifPath', 'http://mysite.com/__utm.gif']);
_gaq.push(['_setLocalRemoteServerMode']);
Make sure to replace http://mysite.com/__utm.gif with a path on the same domain as your website and that respond a gif. Use a lightweight gif, like the one GA uses.
Then you can get the logs of access to this gif and see in their parameters the urls visited. You'll need to do some extra processing but you'll be using the same framework GA uses to collect data and thus will measure more efficiently GA precision.
More Info:
https://developers.google.com/analytics/devguides/collection/gajs/methods/gaJSApiUrchin#_gat.GA_Tracker_._setLocalGifPath
Related
I've been looking at my statistics and lately, I found a difference between the number of sessions in Google Analytics and Shopify.
Google Analytics reports 20% fewer sessions than Shopify...The implementation between Analytics and Shopify seems to be ok, as there isn't any duplicate code or tag.
Do you know how I can solve this?
I've read some similar questions but I haven't found an answer yet.
There are many possible reasons for differences in tracking results:
Differences in how page reloads and unique visitors are counted. Google counts every page reload, but a browser doesn't count reloads of cached pages.
Differences in how sessions are defined. For example, some analytics software counts search bots as visitors, while other software doesn’t.
Google can only count visitors with JavaScript and cookies enabled. Some visitors might not allow cookies or JavaScript.
Customers can use browser extensions to block Google Analytics from tracking their sessions and purchases.
Discrepancies might be introduced because of different reporting time zones. Read about changing your Google time zone here.
It’s unlikely that identical tracking mechanisms are being used by each of the services, so your visitors aren't recorded equally. Details of recording mechanisms are proprietary information and are never shared.
I started to notice that my Google Ads clicks wasnt 100% counting by google analytics (For exemple, during a certain period I had 300 clicks and only 100 sessions were counted as Paid Search on analytics). So I contacted Google Ads Support, they investigated and came to me with this:
Actually, your site is losing the attribution of Google Ads because of an automatic redirection of the structure in which it was developed.
When we have Google Ads linked with Google Analytics, they are talked through a parameter called GCLID. To verify this loss, follow the path I made (in several products, here is an example):
1- I accessed the link https://mywebsite.com/products/running-shoes?variant=15320930779194
2- After full site loading, I added the & gclid = Tester123 parameter to the URL (in the browser, so the final URL was https://mywebsite.com/products/running-shoes?variant=15320930779194&gclid=Tester123) and hit Enter
3- To understand if there is a redirect, the normal behavior would be for the URL to remain the same (with & gclid = Tester123 at the end), but in this case, the parameter some (and hence the assignment)
So, the campaign actually appeared (not set) in Analytics, and could be assigned to any of the other channels (Direct, Organic, ...) For this to be resolved, the site structure must stop causing this automatic redirection in the final URL of each product. With this, the results will be effectively assigned to Google Ads.
They also said that if even if I want to use manual tracking (UTMs) I would still have that problem, since the redirections would keep spoiling it.
As I use Shopify as my website platform, I checked with them and I have no redirections that are causing this problem, at least not created by me nor that their support know.
So I am lost over all this. I dont know where to start solving this problem. Google doesnt tell me what kind of redirections may cause this, I dont use any kind of redirections, and Shopify cant tell me if their code causes this problem (what I dont believe, because other shopify websites would also been suffering from this).
So can anyone give me any direction about this? What redirections may be causing this lost of data?
Thanks for your time!
One thing to note, Google Ads might have a different way of counting, there is the possibility of multiple clicks per session.
That said, you can try Google Tag Assistant, start your recording, click on one of your ads, follow that through and see the parameters being passed.
Unfortunately, it is hard to debug with limited information. The more details you can provide the better.
Check where your GA code is placed in the page code. If GA script is at the bottom of page or there are some heavy scripts above GA tracker, losses of bounced sessions can be large. I.e. user enters the page and immediately closes it. GA script doesn't have time to download.
Why user closes the page immediately?
Сlick by mistake
Slow site
And check that all your landing pages are OK and have 200 server response.
I have started using GMP on an eCommerce website as I am concerned about transactions not being tracked correctly due to ad blockers and subsequently the conversion data in Adwords being incorrect.
However, I've started using it and I've found it to be a nightmare to get to work as you'd expect. I found this question still unanswered which is worrying!!
Measurement protocol transactions from Google Analytics to Google AdWords
However, my question is similar. But not the same. I'd like to know if I'm supposed to set the referrer, source & medium only once? For the first request?
i.e. Lets say someone clicks an eCommerce shopping ad (So it has a glid). Comes onto the site. And I set the medium to cpc and the source to google.
Then they start to browse around the site before making a purchase. The referrer will then be registered as the current domain and the source and medium will not be recorded.
Is this correct? As currently it's attributing all conversions to the site itself and not to google even though I am passing in the glid on the first request.
We are implementing a native analytics system and want to apply the same tracking principles Google Analytics uses. We've figured everything out but one thing:
Every time I refresh a page with an url that has utm-parameters attached to it, Google Analytics somehow figures out that it's not actually a visit but the same page that gets refreshed and shows only one visit in its dashboard from that particular source.
Is anybody aware how GA specifically does that so I can replicate it in our system?
I know that I can use
performance.navigation.type
in my JS script, but it doesn't give me desired results.
Any help would be much appreciated.
Attribution in GA happens on the Google servers, so JavaScript will be of limited use. Basically since a reload means that the user has the same client id and no change in the channel (source, medium and campaign are the same as in the previous visit) the existing session will be continued (a change of campaign/source information would trigger a new Google Analytics session).
Google has a very nice chart that explains how campaign information and traffic source information is processed.
I'm using both on a site and getting very different numbers from each. Why is this?
The discrepancy is also mentioned in a Quora answer (Which is better, Facebook Insights or Google Analytics?)
Footnote: if you decide to use both, do not report them side-by-side,
and never expect them to match. Trying to explain the differences will
drive you mad.
Could someone explain?
This problem is quite common, and very hard to explain to clients why numbers do not reconcile amongst different analytics platforms.
Firstly, I believe that because there are remote connections to google or facebook some user sessions will get lost (What happens when they hit stop on the Browser page before the .js downloads for instance).
Secondly I believe ad blocking software may stop the file from being downloaded therefore the session is not captured.
Most hosting providers will have their own analytics platform with your hosting package. This is what I rely on as a true indicator for actual page views etc. These are usually generated directly from your web server logs so they are more accurate. Sadly I've never seen one of these packages have as many features as google or facebook.
There are tons of possible reasons. They might identify returning visitors in a different way or users might block scripts from a specific domain (e.g. *.facebook.com but not *.google.com). In general, ignore the discrepancy. Just pick one solution and use it. You'll always have visitors blocking all such scripts or just one or two specific trackers. The only (almost) 100% accurate way to do it, would be using local scripts, but even those could be blocked. You could as well look at open source solutions such as Piwik
Different web analytics products use diferent methods to track data on the site.
These differences between them is the reason why is hard do do a side-by-side comparison.
On the two links bellow you can find more info about that:
Why does Google Analytics report different values than some other web analytics solutions?
Using Google Analytics & Facebook Domain Insights to Track Social Actions on Your Website
In addition to the notes above, I also wanted to mention Google samples data when there are large volumes & dimensions. This may be a contributing factor.
Facebook reports on clicks and Analytics reports on pageviews.
The amount of pageviews might be less than the amount of clicks for a number of reasons:
There are filters on your Analytics that are blocking the pageviews from being recorded
The user left the page before the Analytics code could be recorded
Or the ads being clicked by bots and the Analytics isnt recording them
This seems to be a big problem with Facebook ads. I run a number of campaigns with facebook and I only see 30-50% of the reported traffic actually make it to the site. I cant believe this is due to only the first two reasons.
I have gone into more details on my blog http://www.bradtollefsen.com/facebook-ads-adding/