User goes from Google to an iFramed page, resulting in a self-referral.

Do you see your own website shows up in your referrals in Google Analytics?  In the analytics biz, we call these “self-referrals.”

Screenshot showing a self-referral in Google Analytics

There are legitimate reasons for self-referrals. But most of the time, self-referrals are a sign of errors in implementation.

Issue 1: Cross Domain Tracking set up

If your website spans two domains, there is a good chance you’re getting self-referrals. A common reason you may have two domains is you have an online store. The organization has a website (www.myWebsite.com) and a separate store website (www.myWebsiteStore.com).

Without cross domain tracking set up, one site will always be the referral of the other, and vice versa.

Solution: Set up Cross Domain Tracking

Bounteous has great instructions on cross domain tracking: Do I Need Cross Domain Tracking, Cross Domain Tracking with Google Tag Manager.

Issue 2: Missing Tags

Pages without Google Analytics code will wreak havoc on your referral tracking.

A user goes from Google to a webpage. The second webpage does not have analytics. The third page does. The third page starts a new session with a self-referral.
The third page will start a new session with a self-referral.

The result – Mywebsite.com/Page2 becomes the referral for Mywebsite.com/Page3. Not only do you have a self referral, but you have a split session.

There is only one solution to this problem: Add the code on the missing page. If you have many pages you need to find, run a tool like Screaming Frog to find these pages. Seer Interactive has an old, but still very useful, tutorial on the topic.

Issue 3: iFrames

By themselves, iFrames are not a problem. But when you implement them, a bunch of things may go wrong if you haven’t been careful with your analytics. If the iFrame loads first, and doesn’t have analytics on it, it can become a page’s referral.

By themselves, iFrames are not a problem. But when you implement them, a bunch of things may go wrong if you haven’t been careful with your analytics. If the iFrame loads first, and doesn’t have analytics on it, it can become a page’s referral.

A user goes from Google to a page with an iFrame. The frame doesn't have analytics, and so shows up as the referrer.

Solution: Put GA on your iFrames, and suppress the pageviews. If they send pageviews, you’ll artificially deflate your bounce rate and increase your pages per session. If it is on a different domain, you will need to set up Cross Domain Tracking in iFrames. Simo Avaha has found a solution for it, but warning – it’s not simple.

If you cannot put Google Analytics on the iFrame, at least add the domain of the iFrame into your referral exclusion list.

You cannot track what happens inside of an iFrame if your analytics code is not on the iFrame.

Issue 4: Timeouts

So this is not a bug – it’s a feature. It is a legitimate reason to have a self-referral. When you walk away from a website for 30 minutes, the GA session times out. If you come back and then comes back and , a new GA session starts. The site they were on previously (your site), becomes the referral.

You can change your Google Analytics timeout settings. It defaults to 30 minutes. Go to Property > Tracking Info > Session Settings and change the default.

Screenshot of Google Analytics settings to change the session timeout.

Issues 5 through 3,738

These are the issues I typically encounter when I do an analytics audit with a self-referral problem. But Google Analytics is complex. People surf the Internet in ways you’ve never imagined. Sometimes, the unexpected happens, and can result in a self-referral.

Identify the Problem

So you have self-referrals. But where are they coming from?

Look to the referral path. In Google Analytics go to Acquisition > All Traffic > Referrals. Click on your domain. You will be taken to the referral path report. So take a look at those page and see if they have the code, or if they are part of an iFrame problem.

But Wait! Can’t I just add the site to the referral exclusion list?

A good Google Analytics implementation puts your domain on the referral exclusion list.  You can find this setting under Property > Tracking Info > Referral Exclusion List.

Screenshot of referral exclusion listing in Gogole Analytics
In most cases, marissagoldsmith.com will not show up in referrals anymore. But it may mask a problem!

BUT, this doesn’t solve the above problems. It masks them. Sure, the visits won’t show up as self-referrals. But they won’t show an accurate referral. They may show up as “Direct”. Or, for return users, their previous non-direct channel. And once you mask the problem, you won’t know it exists.