Internal URLs

Every program, every tool has this one thing that causes head-scratching all over. For Adobe Analytics, one little head-scratcher has to do with the specification of “internal URLs”.

“Internal URLs?” you ask, “what on Earth are ‘internal URLs’?”

Your site has two interfaces to the rest of the Internet:

  1. Incoming traffic via links from other sites
  2. Outgoing traffic via links to other sites

An example journey on this blog might be: visitor might see article on LinkedIn, then she clicks through and lands on the blog. From here (and hopefully after reading) she then exits via a link to an article by – say – Adam Greco.

I want to track where people come from and where they go. For the tracking to be able to give me that, Adobe Analytics has to know “where my site starts and ends”, so to speak. It needs to know the URLs that I consider to be my site.

And that is what I configure as “Internal URLs”.

Easy.

But…

I know, I know.

Let me show you where to set this up. Then we’ll get to your question.

Setup

Let’s log into Adobe Analytics and go to the Admin section. Find “Admin” in the menu on the left, then “Report Suites”. Select the report suite in question.

Now hover over “Edit Settings”, move the mouse to “General” and then click on “Internal URL Filters”.

[Screenshot]
Internal URL Filter Menu
You get to the following page (apologies for the huge screenshot) where you can add and modify URLs.

[Screenshot]
Internal URL Filter Setup
Right, that’s one down, one to go.

Remember the s_code.js file? It has a configuration section. In there, you’ll find a variable called s.linkInternalFilters, which you should set to a list of URLs, separated by comma. Like so:

	s.linkInternalFilters="javascript:,jan-exner.de,fototimer.net,exner.com";

You can see that the list contains the same URLs as the list in the UI. But before we get to the obvious question (“WHY?”), let me say one more thing about those “URLs” you configure in those two places.

URL Fragments

Thing is, they’re not URLs.

Instead, they are fragments of URLs, substrings, to be exact.

So “jan-exner.de” would match “http://www.jan-exner.de/astro”, but also “http://we.like.com/jan-exner.de” (checking… nope, 404. *phew*).

Some people like to put just their brand, some are more specific. I guess it depends how popular your brand is and whether there are likely any sites that include your brand name in their URLs.

The Answer

And now, finally, the answer to your question: why are we configuring the internal URLs twice?

Well, it’s because they matter in two completely separate situations.

Situation 1 — when someone comes to your site, we want to see referrers. That’s something handled completely in the back-end, on the Adobe servers during processing.

To allow the back-end to distinguish (interesting) external URLs in the referrers from (boring) internal ones, you have to tell it what those internal URLs are, and because it is for the back-end, you configure it in the UI, as we saw above.

Situation 2 — when a visitor clicks a link on one of your pages, the tracking code has to make a decision: do I track this as an Exit Link or not?

The core Javascript code makes that decision, and we therefore have to let it know those URLs as well. That’s where the s.linkInternalFilters variable comes in.

So because there are two separate situations, there are also two places to configure them. It is rare for people to configure them differently, but I have seen the odd case where it made sense.

I hope that takes away some of the head-scratching.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s