Do you analyze your traffic channels by source/medium or via channel groupings? You have to carefully read this article if you evaluate referral traffic by medium. There is simply so much wrong in this report!
The funny thing is, when I started my outline for this article, I thought:
“Three things wrong, no four, no five, wow even six!“
And probably there are even more things that need to be optimized.
On default, Google Analytics measures direct traffic, referrals, organic traffic and AdWords (if AdWords is connected to Google Analytics).
The difficulty is that the default settings are in most cases not good enough.
In this blogpost I am going to reveal six things you need to take care of before analyzing your referrals in Google Analytics.
Table of Contents
1. Social Referrals
Google Analytics doesn’t come up with a “social” medium on default.
Social traffic is put into the same bucket as the rest of traffic in the referrals report.
We will take a look at the Google Analytics Demo Account:
Navigate to Acquisition >> All Traffic >> Referrals.
Let’s keep it easy here and assume that we just have two referrals that should be grouped under “social”:
- youtube.com (45,8% of total referral traffic)
- facebook.com (0,7% of total referral traffic)
Now, let’s apply some Google Analytics filter magic:
This would results in grouping Facebook and Youtube traffic under “social” instead of “referral” within the source/medium section.
And the great thing is that referral path and full referrer remain available to you!
Full List of Social Referrals
Here is one additional tip to quickly gather all Social referrals for the filter above:
Step 1: Navigate to Acquistion >> All Traffic >> Channels
Step 2: Export all sources and aggregate them via a regular expression.
Here is an example of how the “Campaign Source” field could look like:
youtube|wikipedia|stumbleupon|netvibes|groups\.google|weebly\.com|groups\.yahoo|linkedin|
lnkd\.in|facebook|del\.icio\.us|digg|feedburner|twitter|blog|faves\.com|wordpress|t\.co|
plus\..*google|disqus|instagram|reddit|buzzfeed\.com|answers\.yahoo\.com
One thing to keep in mind that the number of characters in a single filter field is limited to 255 characters.
Feel free to set up multiple advanced filters if needed to! Most often there are just a few sources (e.g. Facebook, LinkedIn and Twitter) that sent the most referral traffic.
And after you have done everything correctly, it should look like this:
Medium = social
Default Channel Grouping = Social
As you can see, in both cases the numbers are the same!
2. Email Referrals
You have not tagged your emails correctly if you see a huge percentage of email referral traffic coming in.
Here is what I suggest you to check:
- Are all links that point back to your site tagged with campaign tagging, including links in templated areas, such as the footer? These are commonly overlooked, which will cause email to under-report.
- Also, check to see if you’re tagging all emails as utm_medium=email. This is a must as this tagging is in line with Google’s default channel groupings definitions.
If you haven’t tagged all your emails, these referral numbers might not look like a significant amount of traffic. However, keep in mind that it only includes traffic from webmail providers that don’t use a secure server.So if you would log in to your webmail and see http instead of https, those referrals get into Google Analytics. On the other hand all traffic from webmail providers that default to a secure server (e.g. Gmail) show up as direct, as do visits from desktop apps, such as Outlook and Apple’s Mail, and most mobile devices because no referral data gets passed through them.
Direct traffic is in many cases the junk drawer of your traffic and should typically not exceed 15 – 20%. If it is like 25% or even a lot more, you know something is wrong!
3. Spam/Bot Referrals
There has already been a lot been said and written about spam referrals.
Read this in-depth guide on filtering bot and spam traffic in Google Analytics to learn more about this topic.
For now, I will give you two tips to get rid of most of your spam traffic and referrals:
1. Select the Bot Filter Option in View Settings.
2. Add a Hostname Filter to only Include Your Domain(s).You can always use a custom filter and regular expression if you wish:
Review your traffic reports in Google Analytics and change the primary dimension to “hostname” to learn more about the hostnames in your case.
I have explained about filters and best practices many times before, but keep this in mind:
- Always keep a raw data view where you don’t modify the setting that affect traffic measurements.
- Always test your filters and new settings first in a test view before applying them to your main view.
4. Paid Referrals
All too often I see a lot of paid traffic showing up in the Google Analytics referrals report. Again, this has a huge negative impact on the usefulness of your numbers.
Here is a very simple rule:
- Tag every link on external domains that link to your domain unless:
- You have earned this link without doing/paying anything (e.g. a deeplink to one of your blogposts).
- This website is automatically covered with autmated utm links (e.g. display network Google).
- This is earned social traffic which you’ll rewrite with the filter shown before.
- You can’t control the link for some reason.
You are not there yet if you just follow these rules.
For each unique paid traffic source you should use:
- A source/medium utm tag that is in line with one of the default channel groupings.
OR
- Modify you default channel grouping dimensions to match your newly created traffic source.
Getting this wrong can lead to numbers as shown below:
Whoops, over 3/4 of all traffic is grouped under (Other) in this case. You should try to keep this bucket as low as possible. 5% is already too high!
5. Payment Processors
A common use for the referral exclusion feature is to prevent third-party shopping carts from starting second sessions on your website.
When the third-party shopping cart URL is in the exclusion list, a user will no longer initiate a new session, and won’t be counted as a referral when they return to your order-confirmation page after checking out on the third-party site.
Here is an example of a Paypal integration:
And this is how to solve it:
Review your current list of referrals and pay special attention to referrals with high ecommerce conversion rates. Keep in mind that you don’t have to include subdomains here; all subdomains associated with that domain will be automatically included.
6. Self-Referrals
I have written an in-depth article on self-referrals quite a while ago.
This might be another problem occuring in your account, so I highly recommend to review this article about self-referrals in Google Analytics.
One additional remark: you need to account for cross-domain tracking as well:
According to Google, you still need to set up your Referral Exclusion list, and they recommend doing it before setting up cross-domain tracking.
By now you will understand that correctly setting up Google Analytics isn’t easy at all. That’s why my Google Analytics audits are so popular!
It takes a ton of knowledge and experience to get your setup right. And I hope this article helps you in that directon.
Make sure to leave a comment and share your thoughts or ask questions!
One last thing... Make sure to get my automated Google Analytics 4 Audit Tool. It contains 30 key health checks on the GA4 Setup.
Vlad says
Very helpful article, however you forgot to mention encrypted Yahoo search. It’s coming into Google Analytics as referral traffic so we need to rewrite medium as organic with custom filter. I tried to add search.yahoo.com to the default list of Organic Search Sources but it didn’t work well.
Paul Koks says
Thank you Vlad, I appreciate your comment. I checked those numbers as well, but thought the percentage of this traffic is very low (below 0,1% usually), but good point!
Swapnil says
Thanks for the above information. It will help to get the precise data from GA.
Paul Koks says
Thanks Swapnil, I am glad this article is useful for you!
sara hoffman says
I’m concerned that rewriting all “social” under the medium of “social” isn’t valuing the differences between an organizations “owned social presence” and links shared via other human beings.
I’m all for lumping it under social for the Default or MCF Channels but for many organizations there is a striking difference between what and when things are shared by the “organic social” audience vs being pushed by an organization’s “social media manager” or press folks.
Paul Koks says
Good point Sara and I understand your concern. In most cases companies choose to set up specified utm tags for “paid links”, e.g. Facebook or Twitter campaigns. You could set up unique utm tags and let them correspond with a different Channel Group, e.g. “Social Post” or “Social Paid”. This in addition to “owned social presence” which resides under “Social” as a channel grouping.
Or a different approach could be to use “social post” or “social paid” as utm_medium and group these with your medium “social” (created by yourself) altogether under Channel Grouping “Social”. It all depends on how/where you want to store your channel data and the overview you want to create.
I prefer to go for option 2 as you can drilldown in your channel group to review the underlying mediums and sources.
Hope this makes sense!
James says
Hello, thanks for the insightful article. I have outlook.live and mail.google appearing as Referral. Just to make sure, after adding them into the exclusion referral list, these transactions will appear in Direct? Thanks a lot.
Paul Koks says
Hi James,
These are two different things. The referral exclusion list should not be used here.
First of all, the best thing to do is to properly tag all your email links and to test them.
All traffic from webmail providers that default to a secure server (e.g. Gmail) show up as direct. This includes transactions.
Best,
Paul
Stavroula Kakkava says
Hello,
I have tried to separate referrals as shown in the example
my campaign source is the following
facebook.com|l.facebook.com|facebook|m.facebook.com| business.facebook.com|lm.facebook.com|instagram.com|clopyandpaste.blogspot.gr|7spymania.blogspot.com| linkedin.com|web.facebook.com|plus.url.google.com|
But the result was to have all channels disappear and instead i could only see one channel :Social
Can you please let me know what might went wrong
best regards
Stavroula
Paul Koks says
Hi Stavroula,
I am not sure what went wrong, but if you use the exact same filter, it should only modify the “medium” dimension from “referral” to “social” for a few of your sources. Do you mean you only see the medium “social” now? It doesn’t influence your Channel Grouping setup. Further, you really want to test this in a test view first before applying it to your master view.
Best,
Paul
Stavroula Kakkava says
Hello Paul,
i tried it once more in a Test view and i get the same result. All mediums are gone and i receive everything in social
i.e for source/ medium
google/social
(direct)/social
m.facebook.com/social
Do you maybe know what might went wrong?
Thank you
Stavroula
Paul Koks says
Hi Stavroula,
Now I see the issue in your RegEx; the string ends with “|” and nothing behind it. It means it will convert all mediums to Social. You need to remove the “|” at the end of the string and then it should work.
Not: plus.url.google.com|
But: plus.url.google.com
And does it work?
Best,
Paul
Kultida says
Hi Paul,
Great article! One problem though, I applied “Rewrite medium to social for social referrals” filter and it rewrites the medium of every traffic that is coming from social even though that traffics didn’t have referral as the medium, for example, my custom mediums. Thoughts?
Paul Koks says
Hi Kultida,
Two thoughts on this:
– Did you end your RegEx with a “|”? You shouldn’t do that as it will take every source in that case. You should have something like facebook|twitter, but not facebook|twitter|.
– Is there another filter that might interfere?
I suspect reason one to cause you troubles.
Cheers,
Paul
Eagan Heath says
Re: #1 and changing social referrals to a medium of “social” based on source, doesn’t that cause problems if you’ve created a channel grouping for “paid social” based on medium? It seems like paid social would be overwritten social because they both share the same source. My understanding is that you need the channel groupings for Multi-Channel Funnel reports.
Paul Koks says
Great comment Eagan!
– First of all, always use a Test View when setting up this filter (any filter).
– True, you can use your channel grouping in the multi-channel funnels (custom or default channel grouping). And based on medium (and/or source) you can set up new channel groups.
– Your “Paid Social” links shouldn’t interfere if you set up “utm tracking” wisely. This is since the rewrite only takes place for medium equals “Referral”. And you don’t want “Paid Social” to measure as medium “Referral”.
– Solution: set up unique utm tracking for your “Paid Social” links and you are good to go!
Hope this helps!
Best,
Paul
Vassilis says
Hello Paul,
I think that the problem that GA alters utm_medium to social is because at Default Channel Grouping Settings, Social channel setting is still “System Defined” and NOT as you Paul wrote at your instructions. To work good we must modify the “Social” at Default Channel Grouping as you instructed.
Regards,
Vassilis.
Paul Koks says
Hi Vassilis,
I am not sure whether I understand your correctly. GA is actually not modifying utm_medium to social within DCG unless you instruct them to do so (via a filter). In order to get the “right” data in your source/medium reports, you need to modify it there.
Best,
Paul
Thomas Wiuff says
Regarding payment processors i see a lot of referals from 3d secure sites after implementing 3d secure in our payment gateway. Is there a work around excluding these referals in the GTM?
Paul Koks says
Hi Thomas,
Great question – haven’t set this up myself, but you might want to check out this post of Simo Ahava.
Let me know if it works for you!
Best,
Paul
Mehul Shah says
Hey Paul,
The article is awesome but i need to ask something off the topic. When i am trying to add a domain to referral exclusion list from my GA. It’s showing me:
These settings only work with the analytics.js version of the tracking code. If you’re using the ga.js version, configure these settings in your code. If you’re transitioning to analytics.js from ga.js, customize these settings to match your previous configuration for data continuity.
I am using gtag.js, So how can i add a particular domain to the exclusion list.
Paul Koks says
Hi Mehul,
Thanks for the heads up!
The wording is a bit odd there. This Universal Analytics feature is only available for websites using gtag.js or analytics.js. Using ga.js (Classic Analytics) will stop Referral Exclusions from working. It should work if you add the domain to the exclusion list in the property settings.
Best,
Paul
Shira says
Hi Paul,
Great post, thank you.
I’m getting a lot of referrals from an external social network, StockTwits. I don’t control this link-users post a link to charts from our site as a reference.
Thus far, I’ve changed the channel of StockTwits traffic from referral to social (using your method); however, I also want to see StockTwits as a social network (under the social channel). Now it’s grouped under (not set) as a source under the social channel. How would I change the social network field of this traffic so it appears under its own social network in the social channel? Thanks.
Paul Koks says
Hi Shira,
Thanks for the heads up! I believe this is hard to change, unless you can control the UTM tagging behind this link.
– You can modify Social Network dimension values with a “Search & Replace” filter.
– You could maybe try to rewrite the (not set) Social Network value, but it will apply to all (not set) traffic in this bucket.
I hardly use these Social Network reports in GA. Couldn’t you get away to get the information you need without using this report?
Humayun Ch says
Hi Paul,
In my analytics account, i have been shown a ‘source’ as ‘facebook.com’, whereas i have accessed the site directly. Kindly assist me with this issue.
Thanking you
Paul Koks says
Hi, this is probably because you have an “active” cookie from a previous session. Say you have visited the site yesterday via “facebook.com” and you go back there directly today -> your session will still be attributed to facebook.com. This is because “direct traffic” doesn’t overwrite campaign parameters (on default). I would suggest deleting your website cookies and try it again. In that case you should show up as “direct traffic”.
Fred says
Hi Paul.
Am I right if I say that Google in fact is adding a social referral category?
Regards,
Fred
Paul Koks says
Hi Fred,
I would say, Google treats Social untagged traffic as a referral in the Medium reports although it is allocated differently (imo correctly) in the Default Channel Grouping (DCG) setup. That’s why I recommend using a filter and the information from DCG to modify Social referrals and transform them in a separate medium (Social).
Best,
Paul
Radar Hill says
As a time saver, the “Social Source Referral” dimension seems fairly accurate to the point where you shouldn’t need all the additional source targeting to pinpoint social traffic. The only source we’ve noticed it not catching is Reddit’s AMP server, and tacking on a “contains” “amp-reddit” takes care of that no problem.
Paul Koks says
Thanks for your comment and great to hear that. It depends a bit on your situation (sources driving traffic), but for many it is highly accurate indeed.
Jonathan says
Great info. The problem I’m running into is deciphering some referrals from other domains. I have a landing page that is only known by one of my customers, yet I have 4 referrals from 2 sources that cannot possibly know about this page. What could cause this? I’m reporting out on it and I have no answer. Thanks!
Paul Koks says
Hi Jonathan,
Two ideas come to mind.
1) Have you looked up the full referral path and if so, can you locate a link to your domain?
2) Do you exclude bot/spam traffic on your website? Please check this article to learn more:
https://online-metrics.com/bot-traffic/
Alicia says
Hey Paul,
First up, thanks for the above info!
So I followed the steps as mentioned in 1. Social Referrals. But there aren’t any changes? Any thoughts on why this might be so?
Paul Koks says
Hi Alicia,
I am not sure what is causing this not to work. Is there maybe a conflicting filter or anything else that might interfere?
And make sure to test this new filter in a Test View first.
Mre says
Hi Paul, thank you for this great article, very helpfull. I still have a problem with the order-confirmation page after checking out, considered sometimes as a landing from google / organic (very strange as it’s 404 if you are not logged in AND do not just come from check out).
Can also be bing, ecosia or direct/none sometimes.
Most of these make zero revenue but still, some make.
Do you have any ideas on how can i manage this ?
Thank you for your help in advance.
Paul Koks says
Hi there,
I would need a lot more information in order to debug the potential issue.
From a data reporting point of view, I recommend creating a segment to exclude all entries on the order confirmation page.
Then you will get more reliable conversion and revenue stats.
Best,
Paul
Angela says
Hi, thanks for this great article. I really like the Rewrite Medium to Social for Social Referrals Filter. I implemented it in my analytics but it doesn’t work like it should. I also have another filter to combine the Facebook referrals which says if campaign source is ^.*facebook.com$ put facebook instead. Could that be the problem? Which filter do I need to put first? Thanks for your help.
Paul Koks says
Hi Angela,
It could have an impact, but based on what you describe above, it should be ok to have that filter FIRST.
Could you otherwise try the suggested filter without the other one (combine Facebook referrals) in a different Test View?
Best,
Paul