Internal Campaigns

SEARCH BLOG

By default, most Omniture SiteCatalyst clients are tracking their external Marketing Campaigns using Campaign Tracking. These reports allow you to see how many Success Events take place on your site for each type of Campaign you run (i.e. E-mail, Paid Search, etc…). However, I am surprised how rare it is that Omniture clients are tracking their Internal Campaigns (also referred to as Internal Promotions) to the same extent. Most websites promote products or content on their site through the use of display ads, buttons or links. These Internal Campaigns should be tracked in the same way as external campaigns. While I have touched upon this concept a bit in the past in the Conversion Variable post and the Products Variable post, in this post, I will provide the basics on Internal Campaign tracking.

Why Track Internal Campaigns?So why should you track Internal Campaigns? At most organizations, there is constant debate about which website promotions perform better than others. This is especially the case for high-profile pages like the Home Page. For example, the screen shot below shows four distinct Internal Campaign Promos:

While you can try to see how often visitors are clicking on each promotion item by looking at Pathing reports (look how many people went from Page A to Page B where you had a promotion on Page A), this takes a lot of time and won’t help you if you have multiple links to this same destination page on the same page. You can try to use the ClickMap feature of SiteCatalyst, but in my experience, ClickMap data is not wholly accurate. If you have a tool like Test&Target then you can easily test and promote content that is proven to be the best in each content area, but if you don’t, you can use Internal Campaign tracking to provide some basic information.

How to Track Internal Campaigns?Tracking Internal Campaigns is done through an eVar. As I have pointed out in the past, the s.campaigns variable in SiteCatalyst is really nothing more than a predefined eVar with Full Subrelations. Therefore, you can track Internal Campaigns in the same way. I tend to do this using the getQueryParameter plug-in which captures a code placed in the URL and passes it to the Internal Campaigns eVar. These codes can be whatever you like, but the parameter identifier should be different from what is used for external campaigns. In the fictitious example shown here, a user has clicked on a website banner and the destination URL has a “pid” parameter which passes the code “home_hero_112” to the Internal Campaigns eVar:

As you can imagine, the hardest part of Internal Campaign Tracking is adding tracking codes to each promotion link on your site. However, this can be built into the process of banner/promo creation and done on a going forward basis if needed. All you need to do is to come up with a logical naming convention or if you want, you can even just use numeric codes and use SAINT Classifications to add meta-data later. When using SAINT for Internal Campaigns I tend to use the following Classifications:

Page on which the promo banner was shown

Location on page of promo banner

Format (i.e. GIF vs. Flash)

Creative Copy (i.e. $50 off vs. 10% Discount)

Owner of the Promo

How to Use Internal Campaigns?Once you are passing Internal Campaign codes to an eVar, it is time to use the data for analysis. The most basic way to do this is to open the Internal Campaigns eVar report and look to see how many of your website Success Events take place after a visitor clicks on one of your Internal Campaign elements. You can see an example of this in the following report:

In this example, I have set an additional “Internal Campaign Clicks” Success Event to track each time a visitor clicks on an Internal Campaign promo item. You could rely on the “Instances” metric, but as I have stated in this post, I am not a big fan of this. This new “Internal Campaign Clicks” metric is an internal equivalent to the Clicks metric set by default for External Campaigns.

However, there is one difference between Internal and External Campaigns to keep in mind. Unlike External Campaigns that usually have one value per visit, visitors can click on multiple Internal Campaigns within one session. Therefore it is important that you understand the principles of eVar Allocation so you understand which Internal Campaign element will get credit for website Success Events. If you want to go really deep with Internal Campaigns, you can even set multiple eVars such that you have the following:

One eVar to store the first Internal Campaign clicked in a visit (First Value)

One eVar to store the last Internal Campaign clicked in a visit (Most Recent)

One eVar to store all Internal Campaigns clicked in a visit (Linear) [remember that Linear Allocation is only Visit-based!]

One of my favorite reports to run is one in which I look for synergistic effects between External and Internal Campaigns. Since the External Campaigns eVar comes with Full Subrelations, you can automatically break it down by the Internal Campaigns variable. Doing this allows you to see which combinations of External campaigns and Internal Campaigns lead to success. For example, it may be the case that a particular Paid Search Keyword, when combined with a specific Internal Campaign promo converts above the average for the site. These hidden gems can help you boost overall conversion and are found by simply opening a Subrelation report between the two variables as shown here:

Finally, another benefit of tracking Internal Campaigns is that it enables you to improve your building of DataWarehouse Segments to include visitors who have/haven’t seen a particular Internal Promo. This information can be valuable to re-marketing efforts in general.

5 Comments

I wish Omniture would simply include another campaign implementation for internal campaigns out of the box. Nice to have full sub-relations without having to pay extra and the automated campaign creation tool.

I’ve been working on something like this, but it was not to the level you proposed here. Would you recommend having campaign management being turned on for the main eVar? Or with this approach, would you gain anything by doing that?

So if I want to implement 3 evars for different allocation methods, should I stack them in the plugin e.g
s.eVar30=s.getQueryParam(‘s_pid’)
s.eVar31=s.getQueryParam(‘s_pid’)
s.eVar32=s.getQueryParam(‘s_pid’)
Or should I copy the values from eVar to eVar in the js script?

Adam Greco is a longstanding member of the web analytics community who has consulted with hundreds of clients across every industry vertical. Adam has managed the Adobe Analytics programs at the Chicago Mercantile Exchange and Salesforce.com. As one of the founders of the Omniture (now Adobe) Consulting group, Adam managed accounts large and small and helped clients maximize their use of Adobe Analytics technologies directly and indirectly through his extensive blogging. In 2012, in partnership with Adobe, Adam published the first-ever book on Adobe Analytics – The Adobe SiteCatalyst Handbook: An Insider’s Guide. In 2015, Adam was elected to the board of directors of the Digital Analytics Association (DAA) where he now serves as Treasurer.
As an employee of Analytics Demystified Adam is a member of the Digital Analytics Association (DAA), an Adobe Business Partner, and a Google Analytics Certified Partner. Adam is also a Board Advisor at the Digital Analytics Association (DAA), Snowplow Analytics, ISDI Digital University, Claravine, Beringer Capital and Decibel Insight.