How to Track Internal vs External Traffic in Adobe Analytics

July 16, 2020
How to Track Internal vs External Traffic in Adobe Analytics blog image

Adobe makes it easy to filter internal traffic out of the data that comes into Analytics. You can simply navigate to Exclude by IP in the Admin menu. But, what if you want to be able to analyze internal traffic, keeping that data intact, but having the ability to separate it from external traffic when desired? If you have a full list of internal IP addresses, you will likely be able to achieve this.

Adobe Analytics tracks IP addresses, and these are available within the Data Warehouse. But tracking internal vs. external traffic, utilizing Data Warehouse exports is manual, time-consuming, and clunky. 

You might consider collecting the IP value of every visit in a custom eVar to be viewed in the Analysis Workspace. With this data, you could build internal and external segments. This method is not recommended, however, because collecting IP in an eVar can be viewed as PII (Personally Identifiable Information).

Here we find Processing Rules, the heroes of our story. Processing Rules process and update the raw data before it enters the Adobe Analytics interface. You won’t find any trace of Processing Rules within the analytics beacon, but you will see the collected data in Adobe Analytics. 

Caution: Data updated using processing rules cannot be undone. If you select to override a value with another value, for example, the original value will not be tracked. Additionally, note that processing rules do not affect historical data. You can update processing rules, but only future data will be affected.

To set a Processing Rule, navigate to Admin > Report Suites > select a report suite > Edit Settings > General > Processing Rules.

The Adobe Analytics Report Suite Checklist
By Kevin Haag,
VP, Customer Data Platforms
· April 23, 2019

Note that your processing rule can be copied to other report suites later. 

From here, select “Add Rule.” Name your rule and select to add a condition. This is where you can list internal IP addresses. Below you’ll see an example.

Make sure you understand the full range of your internal IP addresses. Utilize an IP Subnet Calculator to break down any IP masking. Be very careful with using tools like “starts with” or “contains.” You’ll want to be 100 percent positive that your rules capture all of the internal IPs and nothing more.

Next, make a rule. Make sure you already have an eVar created to collect the custom value of “internal” or “external” (or whatever words you decide to use).

Configuring eVars: Choosing Allocation and Persistence
· August 07, 2019

Once you’ve carefully proofed your processing rule, hit save. As noted earlier:

It’s important to get your processing rule correct the first time. Updating your processing rule later will not affect any data that has already been collected.

And there you have it! Be sure to check the data that’s coming in a few hours (or days, depending on your traffic patterns) from the time you set your rule. Make sure the percentage of internal vs. external traffic looks correct.

From here, you can create a segment for internal visits and a segment for external visits. These can serve as helpful segments to pull into Workspace projects to filter your data.

You can also create an entire workspace project dedicated to internal vs. external visitor behavior, if that’s something you’re interested in comparing. But remember, if the date range of your dashboard starts prior to the creation of your processing rule, the internal/external variable will be “Unspecified” during that time.

A Few More Things to Note

The order of your processing rules matters. If you have multiple processing rules, they will fire in the order you have set out. Be careful with the order if there’s a chance any of your rules overlap/affect the same data set.

Processing rules can only be set up for a single report suite. You can then copy the rule(s) by selecting the “Copy Processing Rules” tab at the top.

Depending on the length and complexity of your internal IP list, you may run into processing rule value limitations. If this happens, consider utilizing “Starts With” or “Contains” rather than “Equals.” Be extremely careful with these values though. They’re very powerful. Ensure that your rule will bring back all of the values you expect and nothing more.