Archive for the ‘Plug-Ins’ Category

Stop Using The File Downloads Report!

Posted on February 8th, 2010 by Adam Greco  |  10 Comments »

Those of you who have read my blogs for a while know that I am a big proponent of using as many SiteCatalyst features as possible.  However, in this post I am going to venture into uncharted territory by suggesting reasons to NOT use a SiteCatalyst feature – File Downloads.  While you may be skeptical about this, I ask that you hear me out on my reasons and alternative approach before passing judgment!

How Does the File Downloads Feature Work?
Before dismissing the File Downloads functionality, let’s take a minute to understand what it does.  Like most web analytics programs, SiteCatalyst provides out-of-the-box functionality for File Downloads such that when a website visitor clicks to download a file, it captures the file name in a special File Downloads report.  In reality, file downloads are treated a lot like Exit Links as far as SiteCatalyst is concerned.  The File Downloads report is very handy since you can open it and see which files are downloaded most like this:

Why I Don’t Like Using The File Downloads Report
As I have become more sophisticated in how I approach SiteCatalyst, I have found several flaws in the File Downloads report.  Here is a quick summary of my issues with it:

  • One of my pet peeves of the File Download report is that it stores the path of the file with both an http:// and a https:// so you often times have the same file represented twice in your reports.  This throws off your data and it can confuse users.  You can modify this by tweaking your JavaScript file, but I wish there were an out-of-the-box option to do this.
  • There is no easy way to see how each file download impacts website Success Events.
  • Often times, I want to see where the website visitor was when they downloaded a particular file, especially if the same file can be downloaded from different pages on my site.  In the past, I have worked around this by modifying my JavaScript file to pass the file name to a custom sProp and then enabling the Previous Value Plug-in to store the previous pagename and enabling a Traffic Data Correlation between file name and Previous Page.  This provides a way where I can choose any file name and then break it down by pagename to see the ranked order of pages it was downloaded from.  Net Result – Out of the box File Downloads report doesn’t get me what I want.
  • However, the real reason I don’t like the File Download report is that it ruins my Pathing reports.  I love pathing.  I like seeing where people go backwards and forwards through my site.  But when I look at the Next Page Flow report or the Next Page report, I am not getting an accurate picture if there are File Downloads on a page.  There are many cases where the most clicked element on a web page is a PDF that visitors download.  However, when I look at my pathing reports, this file is nowhere to be seen.  I can see it in the ClickMap report, but not in my SiteCatalyst pathing reports.  Therefore, when my users look at the next page report, they are looking at incorrect data due to the fact that 10% of visitors downloaded that PDF.

So What Should You Do…
I don’t like to complain without offering alternative solutions so the following outlines what I would do instead of using the File Downloads report.  Per my list above, at the end of the day, I have the following requirements for understanding File Download activity on my site:

  • Easily see which files have been downloaded the most (and only once per file regardless of http or https)
  • Understand from which pages visitors are downloading files
  • See how each file download impacts my KPI’s
  • Ability to see file downloads in my pathing reports so I can see what is really happening on each page

Seems reasonable enough right?  So here is how you accomplish all of these without using the File Download report:

  1. Work with your developer to treat every file download as if it were a web page on your site such that it is passed to the Pagename variable (s.pagename)
  2. Ensure that when passing the file name to the s.pagename variable, you strip out the http or https so you just get the raw file path (you can also strip out your domain to make the pagename shorter)
  3. When creating this pagename, be sure to insert the phrase “file|” or “file:” in the pagename (or something similar)
  4. Remove the File Download code from your JavaScript file (so you don’t get double-charged server calls)

So that doesn’t seem so hard does it?  But what does this actually get you?  Let me extol the countless benefits:

  • Passing the file download name to the s.pagename variable means SiteCatalyst sees file downloads the same way it sees any page on your website.  This means you can see file downloads in Pathing reports so your next page and previous page reports will be accurate.
  • If you remove the http or https you will only have one pagename for each file so you avoid the duplicate file issue I mentioned earlier.
  • If you insert a file identifier (“file:”) then you can recreate the current File Downloads report you have today by just opening the Pages report and doing an advanced filter on “file:” in the Search area area.
  • If you want to see which page visitors were on previous to downloading a specific file, you no longer need to use an extra sProp nor enable a correlation.  All you have to do is find the file in the Pages report and open the Previous Page pathing report.
  • If, by chance, people link directly to your file downloads, you can also calculate the Bounce Rate of each File Download since it is now part of the pagename variable which has pathing (and thereby Single Access & Entries) by default.
  • Anyone want to see Daily, Weekly and Monthly Unique Visitors for each File Download?  You just did it if you have those enabled on your Pagename variable (which most people have by default)!
  • As I mentioned above, it is not easy to see how often each file on your web site “participates” in your key success events?  This is because you cannot enable Participation on the File Downloads report.  However, now that File Downloads are part of the Pagename report, you can easily enable Participation on the s.pagename variable (which you should already be doing) to see how often each file download impacts your key KPI’s.
  • Last, but not least, if you have any correlations to the Pagename report (which is very common), you now have those correlations to every file on your website.  For example, if you have Pagename correlated to Visit Number or GeoSegmentation Country, you now have all file downloads correlated to these as well without having to pay for any extra correlations or variables!

All in all, you can get a lot of bang for your buck with this handy trick.  I think it can easily save you a few sProps, correlations and unique visitor CPM increases (I make no money on this blog so feel free to send contract savings my way ;-) )!

Final Thoughts…
Well there you have it.  These are the reasons why I have chosen to take an alternative approach to the File Download report and I think it makes a pretty compelling argument!  I will be curious to get your thoughts and see if you agree or disagree with me on this…

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.

Cross-Visit Traffic Source Attribution

Posted on February 1st, 2010 by Adam Greco  |  6 Comments »

Last week I shared a way to capture the various traffic sources (i.e. SEM, SEO, E-mail, etc…) so you could calculate the Bounce Rate for each of these Traffic Source types.  In this post I am going to build upon this and show you another cool way you can leverage this to have what I call Cross-Visit Traffic Source Attribution.

What is Cross-Visit Traffic Source Attribution?
As an online marketer, one of the things I want to see is how each traffic source leads to online success.  Within a visit, it is relatively easy to see which Traffic Source types lead to success.  Normally this is done by capturing the various campaign elements and using SAINT Classifications to roll these up into Traffic Source types.  However, what many marketers want to see is the overall mix of Traffic Source types that lead to success over several visits.  For example, maybe Paid Search is always the last thing your visitors are doing before placing an order, but maybe the first thing they did was to click on an SEO keyword.  I touched upon this a bit in an old blog post on Cross-Visit Participation which you can review here.  If your organization has a desire to see a high-level view of which combinations of Traffic Source types lead to success, then Cross-Visit Traffic Source Attribution may be your answer.

Implementing Cross-Visit Traffic Source Attribution
If you have followed the instructions I laid out in my last blog post, then you have already done much of the work required to enable this feature in your SiteCatalyst implementation.  Now that you have an sProp that contains the Traffic Source type set on the first click of each website visit, all you have to do is the following:

  1. Pass this value to an eVar (Most Recent Allocation)
  2. Implement the Cross-Visit Participation plug-in
  3. Have the eVar expire when your primary success event takes place (i.e. Orders)

As a refresher, the Cross-Visit Participation plug-in stores a list of elements, in this case Traffic Sources, with each visit so when a Success Event takes place, you can attribute the success to the current string of cross-visit values.  For example, if someone comes to your site three times, first from SEO, second from E-mail and third from SEM and then places an order, the current value in the eVar would be “SEO|E-mail|SEM.”  As time goes by, and you have more website visitors, the combinations that occur most frequently will rise to the top (web analytics darwinism?).  Usually the single Traffic Sources will be at the top (i.e. SEO by itself or SEM by itself), but what I look for are the combinations that are at the top of the list.  I sometimes even hide the individual items using the advanced search feature (Tip=Show if it Contains “|”) so I can see only multiple session Traffic Sources:

The only warning I will give about using this functionality is that it might burst the bubble of some of your co-workers who think that their Traffic Source type is the “end all, be all” of success.  In my experience, many people bounce around quite a bit and the results can surprise you!

First Touch, Last Touch
When it comes to attribution, many talk about First Touch, Last Touch and All Touch, meaning which Traffic Source was the first that visitors saw in a sequence leading to success, the that visitors saw last or a list of all of the Traffic Sources that influenced the success.  In SiteCatalyst, the easiest way to implement First Touch and Last Touch is to use two separate eVars.  Both capture Traffic Sources, but one has Original Allocation and a long expiration (never or say 6 months), while the other eVar is set to Most Recent Allocation and expires at the Visit.  However, you can also use the new Cross-Visit Traffic Sources eVar shown above to do this.  Simply download the above report to Excel and then isolate the first Traffic Source or the last Traffic Source and add up the Orders (or use a Pivot Table) to see the total for each Traffic Source.

Traffic Source Influence (All Touch)
For me however, I am most interested in seeing the total influence of a specific Traffic Source (All Touch).  While this is not readily available in SiteCatalyst (since Linear eVar Allocation only works within one visit), you can use the new eVar mentioned above to quantify the potential impact/influence of a specific Traffic Source Type.  Here is how you do it:

  1. Download the report above to Excel (you decide if you want to include the single Traffic Sources or only when multiple exist – as shown above)
  2. Use an Excel Formula to set the Traffic Source Type for a specific Traffic Source Type (i.e. SEO) in all rows where it is found (see green column below)
  3. Create a Pivot table off this new column (i.e. SEO) and look at the total Success Events (Orders in this example) that are associated with a row that contains the Traffic Source Type you chose in step two (in this case 754,328)
  4. Take that total (i.e. SEO Influenced Orders in this case) and divide it by the Total Orders (in this case 76.07%).  This will show you how much SEO influenced Orders such that SEO was involved in a visit that ultimately led to an Order.

Finally, if you want to see Cross-Visit Attribution of individual Campaign elements (Tracking Codes) instead of Traffic Sources, you can apply the same principles shown in this post and my last post.

Hopefully, between this post and my last post, you will be able to answer the nagging Traffic Source questions that come up from time to time and help your organization better understand where it should use its precious marketing dollars…

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.

Basic Brand Awareness Tracking

Posted on January 18th, 2010 by Adam Greco  |  1 Comment »

One of the holy grails of online marketing teams is to find a way to track and measure a company’s Brand Awareness.  There are many different approaches to do this including the use of products like comScore, Compete, Twitter, but more often than not, it takes place offline in research studies.  While this trend is not going to change anytime soon, as a web analyst, you may be looking for data that you can collect to provide an estimate of your Brand Awareness.  Therefore, in this post, I wanted to share a “quick and dirty” way to use online data to see and trend the popularity of your company brand.  While this will not be a comprehensive approach, it might provide a basic starting point into the larger “Brand Awareness” puzzle.

Why Track Brand Awareness?
There are many schools of thought on whether it is even worthwhile to try and track Brand Awareness.  While people like us try to track everything, sometimes, there are things that are just not meant to be tracked.  If you own a website that sells stuff, then there is so much you can do with Web Analytics that tracking Brand Awareness is probably way down on the list.  However, there are many companies (i.e. B2B) that don’t sell products directly and inevitably the question arises:

“What is the true purpose of my website?”

If you are part of one of these companies, the above question is often followed with a spirited debate about whether success should be judged by lead counts, unique visitors, visitor engagement, etc…  At some point one Marketer will say that the website should be used to build Brand Awareness so success should be judged by increasing Unique Visitors, only to be countered by another saying that Unique Visitors don’t mean anything if they aren’t the right types…After about an hour of this, there is rarely a consensus on how to judge the success.  Soon you can see why this is not a popular topic in Web Analytic circles!

Amid all of this confusion, I think that people sometimes forget the real reason that people care about Brand Awareness.  At the end of the day, you want to measure how often consumers that are interested in a product/service that you provide think of you when the time comes to research or buy that product/service.  If you are doing a really good job at branding your company such that you are top of mind when consumers are at this stage, then one way or another you have done something right.  This is why I think there is some value in trying to quantify this and trend it over time.

So What Can Be Tracked?
So building upon the previous section, let’s assume that you don’t sell a product directly on your website, but that there are consumers out there who need your product/service (and have a blank checkbook in hand!).  Do you think they would:

  1. Come to your office and ask to see your salespeople?
  2. Pick up the Yellow Pages and give you a call?
  3. Mail you a letter asking for information?

Maybe in the 1980’s, but not today!  Most are going to go to a Search Engine and a few savvy ones will go to Twitter.  So if the bulk of these will go to a Search Engine, and you are truly “top of mind” from a branding standpoint, they would probably search for your company name or the name of one of your products.  For example, if the consumer is looking for a “CRM” product they might search for “CRM.”  But if you are doing your job and have an awesome brand such that the first thing people think of when they think about “CRM” is your company brand (I don’t know…maybe something like “salesforce.com” ;-) ), then you would know that your brand is alive and kicking!

Following this logic, you can see that one interesting way to track your brand awareness is to quantify how often people are coming to your website from a list of “Branded” keywords of your choosing.  This list of keywords would include your company name, product names, key executive names, etc…  If you can aggregate these SEO keywords (I wouldn’t include Paid Search Keywords), then you have a number that you can trend over time.  Keep in mind that this is not an exact way to track brand awareness, but the logic behind it is that the more people [organically] search for your key brand phrases, the more pervasive your brand is out there.  In my consulting experience, I have often found that the number of SEO Brand Searches has a direct correlation with other key website success metrics.

So How Do I Implement SEO Branded Keyword Tracking?
In a perfect world, it would be great if there were an easy, reliable way to track how often your brand keywords were searched on all of the major search engines.  Companies like comScore try to estimate this, but it is not always accurate due to the panel-based methodology.  Another way I have tried to get at this data is through Google Trends, but I have not found ways to automatically export that data through API’s (if you know how please let me know!).

That being said, if you want to use SEO Branded Keywords to track your brand, take the following steps:

  1. Work with your Marketing team to identify the list of keywords that everyone agrees are “Brand Keywords.”  In order to not distort the trend, it is important that you not continually add to the list so try and get an exhaustive list and stick to it for an extended period of time (i.e. readjust yearly).
  2. The next step is to isolate these Branded Keywords in your SEO reports.  One way to do this is to add each one to the advanced search criteria for your SEO Keywords report (in the interface or ExcelClient), but if you have a lot this can be difficult.  My preferred approach is to pass SEO Keywords to a custom eVar.  Once you have done this, you can use SAINT to classify these keywords as “Branded Keywords” and then use the trended view of reports.  If you are using the Channel Manager plug-in or the Unified Sources Vista Rule, you should already have the data you need in a custom variable.
  3. Once you have these branded keywords isolated, you can create a report that looks like this:

In addition, if you have specific products that are brands of their own, you may want to apply the same technique to the SEO Keywords that represent those brands and chart the Brand Awareness of your different products amongst each other (maybe inspire some competitiveness?).  For example, at Salesforce.com, we group our products into “Clouds” so you might chart the SEO Keywords related to the various “Clouds” on a graph to see how each is doing (shown with sample data here):

Don’t Forget About Twitter!
As mentioned earlier, another way to look at how your brand is doing is to look at Twitter.  This can be done using the Omniture Twitter Integration I proposed last year.  Implementing this provides you with a way to see how often your brand is being talked about so you can see a chart like this:

If you want to get fancy, you can even measure how your brand compares to the brand of your competitors on Twitter.  The graph below shows what I call “Twitter Competitive Share” and is calculated by the following formula:

Branded Tweets / (Branded Tweets + Competitors Branded Tweets)

The result is a chart that looks like this:

Final Thoughts!
Well there you have it, definitely not world peace, but if you are looking for some different ways to leverage your web analytics data, hopefully these ideas give you some food for thought.  If there are other ways that you are using web analytics data to track Brand Awareness, please leave a comment here as I’d love to hear about it…

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.

Intranets – The Other Website

Posted on December 14th, 2009 by Adam Greco  |  1 Comment »

While most of you reading my posts are focused on your public website, in this post I am going to share how you can leverage your web analytics skills internally at your organization.  Company Intranets are often times larger than the public website and using the tips I will share here, you can get some big visibility internally and become the hero of your HR team!

Why You Should Care About Your Intranet
Companies often spend a LOT of $$$ on building Intranets.  Unfortunately, not everyone at the company uses the Intranet.  If you can help your internal team show what is working and what is not working on the Intranet, you can help them to save a lot of money.  In addition to the altruistic reasons to track what happens on the Intranet, there are the following selfish reasons:

  1. Tagging Intranets is a great way to try new things and get better at web analysis in a safe environment
  2. Intranets often have low traffic volume so it is a great way to help cost-justify increased budgets for web analytics (“Mr. CEO, not only does this money go towards tracking the website, it also allows us to track our entire Intranet!” – Just don’t tell them that tracking the Intranet costs all of $1,000 in server calls!)
  3. Showing people what is happening on the Intranet does wonders for people inside your organization understanding what the heck you do for the public website!

I have seen situations where a web analytics team has killed themselves trying to get senior executives to see what is taking place on the website and what improvements could be made based upon solid web analysis, only to see the same team get promoted or more budget after spending 2-3 weeks showing what takes place on the Intranet (something that they actually use)!  It sounds completely illogical, but I guess if you can’t beat them, join them!

Tracking Intranets
So what should you track on Intranets?  The following are my best practices learned working with a few large clients.  The one caveat to everything below is that you have to be sure to track all of this data in a different report suite than all of your other website data!

Employee ID
Depending upon the security policy of your company, ask if you are able to track down the the Employee ID level.  I tend to not do this since it can be a bit creepy, but it is technically possible and you can replace the Omniture Visitor ID with your own unique employee identifier.

Non-Personally Identifiable Employee Info
On each Intranet page, I recommend that you pass Department, Region, Business Unit, Office Location, Employee Band Level (i.e. VP, Manager), etc… to variables.  This will allow you to break down all Pages by these data points.  I generally pass these to an sProp and an eVar (save some time setting both through this post) and also recommend you put your top five of these into a 5-item Traffic Data Correlation.

Pages & Sections
Obviously, you want to pass in a unique page name for every Intranet page like you would any other website.  In addition, you should pass the Intranet section to the Site Sections (Channel) variable.  As always, I recommend that you enable Pathing on the Channel sProp so you can see how employees are navigating between Intranet sections.

Internal Search
Just like a public website, Internal Search is usually important on Intranets.  You should track Internal Search on the Intranet just as you would on a public website.  You can apply the same principles I mentioned in this Internal Search post.  This includes tracking what search terms people are looking for, but the beauty here is that you can see these by Department, Region, etc…

Timeparting
Many of my Intranet clients were keen to see when employees were accessing the Intranet, so I recommend you implement the Timeparting Plug-in.  This allows you to see what day of the week and time of the day employees access the Intranet.  Don’t forget to create a correlation between these sProps and your other ones so you can see when each page/section is accessed most often.

Internal Promotions
Much in the same way that I described Internal Campaigns in the past, Intranets may have promotional areas that try and entice employees to click.  You can track these the same way you would a public website.

Intranet KPI’s
The following are the types of KPI’s I have seen used for Intranets:

Page Views/Visit & Average Time Spent/Visit
Depending upon whether your goal is to get employees in and out or get them to spend more time reading Intranet content, you can use this calculated metric to see how you are doing.

Page Views (Event)
As I described in this post, I would recommend that you set a Success Event on each page.  Why?  Well let’s say you want to see how many pages on the Intranet a specific internal e-mail led to.  You can open the Campaigns report, find the e-mail and then see how many pages were viewed.  You can then use an eVar Subrelation to break this down by page name (as long as you pass Pagename to an eVar) to see the exact pages viewed.

Internal Searches
As you would on a website, you should track and trend the # of Internal Searches taking place on the Intranet.

Logins
If employees have to log into your Intranet, you can capture that as a KPI to see how you are doing at getting them to access the Intranet.  This can also be used for segmentation (i.e. show me all users who have not logged into the Intranet in the past 30 days…)

Custom KPI’s
Many times, Intranets are used to get employees to fill out forms, surveys, etc…  Each of these key actions should be captured with a Success Event and in the case of Forms, you should capture the Form Name in an eVar so you can break it down appropriately.

Employee Profile Views
As we march down the road of internal social media, it is fun to track how often each employee’s Intranet Profile is viewed.  Using new tools like my company’s upcoming “Chatter” product (see shameless plug video below!), we may be moving to a world where employees get “followers” so you can track how often people are looking at or following other employees.  This allows you to see who your employees think are important (which may not always align to the org chart!).

Final Thoughts
As you can see, if you know what you are doing for tracking a public website, tracking an Intranet uses many of the same principles.  If you are just getting started in web analytics, feel free to apply the above items on your Intranet as a testing ground before you tackle the public website.  If you have some other cool things you have done to track your Intranet, please feel free to leave a comment here…

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.

Internal Search Tips

Posted on November 16th, 2009 by Adam Greco  |  No Comments »

A few weeks ago, Ben Gaines (@OmnitureCare) wrote a great blog post about tracking Internal Search.  In this post, I am going to add a few additional tips I have learned over the years…

Correlate Internal Search Term & Page Searched From
Knowing what people searched for on your site is certainly valuable, but knowing the exact page they searched for each term from is even more valuable.  Having this allows you to see what content visitors think they should be able to find on each page.  This is like gold to your content folks who can look for terms that are consistently searched for on a specific page and make a case that they need to add or improve content.

Setting up SiteCatalyst to do this is very simple.  All you have to do is pass the Internal Search term to a Traffic Variable (sProp) (as Ben showed) and then set a second sProp with the previous page name value (use the Previous Value plug-in) and create a Traffic Data Correlation for these two sProps.  When you are done, you will be able to see two cool things:

1) What terms are searched for on a specific page:

intsearch_page

2) For any given term, what pages are visitors searching for that term:

intsearch_term

Group Internal Search Terms
In Ben’s post, he discussed how to eliminate duplicate terms by taking upper/lower case out of the equation.  In addition to this, there are times when you might want to group specific keywords together into buckets since they represent the same type of search.  For example, if you manage a travel site, you might want to group all City internal search terms by State and Region so you can supplement your analyses.  This is easily done by taking advantage of SAINT Classifications which allow you to bucket your internal Search Keywords however you would like.  Here is an example of a SAINT File you could use in the preceding example:

intsearch_saint

Use Compare Feature to find differences between Dates
Once you are tracking internal search terms, you can use the Date Comparison feature in SiteCatalyst to see how the same internal search terms perform in two different time periods.  You access this feature from within the SiteCatalyst Calendar window.  Below is an example of looking at how the top internal search terms for September perform in October:

intsearch_date

As you can see, by using the date comparison feature, SiteCatalyst will show you the difference between the two time periods so you can be aware of significant changes.  Simply click the difference column and you can see the search terms that changed the most/least (depending upon whether you sort ascending or descending).

Use Compare Feature to find differences between Report Suites
In a similar manner, if your implementation has multiple report suites (or ASI Segments), you can use the Compare feature to see how internal search terms vary by suite/segment.  For example, if you have a Customer Segment and a Non-Customer Segment, you can see what internal search terms each group is looking for:

intsearch_segment

In the above report, we can see that Non-Customers are more apt to search for careers, while Customers are more interested in detailed product information.

One cool thing you can do with this is to combine this data with Test&Target by FTP’ing the most popular search terms to a Word Cloud program and having Test&Target show the appropriate Word Cloud based upon a cookie value indicating customer status.  That is a great way to proactively use your web analytics data to create a better experience for your users!

Trend Search Page Exits
One way to see how good or bad your internal search results are is to look at how often visitors exit your sie on the search results page.  While this isn’t a guarantee that your search results are bad, most of my clients agree that search results page exits are not normally an indicator of success!  Therefore, I like to trend this and set alerts to monitor this.  Here are the steps to do this:

  1. Open your Pages report and find your Search Results page in the list
  2. Click on its name and in the sub-menu choose Paths – Next Page report
  3. Unfortunately, Exited Site might be one of your highest next pages, but in this case it is a good thing since you that makes trending it easier (I haven’t figured out how to trend it id it isn’t in the Top 5!).  Once you are looking at your list of Next Pages, click the “Trended” link to see the top five next pages trended.
  4. From here, I usually refine the report to only show the Exited Site and Home Page (for some reason SiteCatalyst won’t let you see just “Exited Site” so you need to have one other value – not sure why – so I normally choose Home Page)
  5. Finally, change your date range and View by (i.e. day, week, month) and you will see a report like the one below where I am trending Exits and clicks to the Home Page by percent over time.  You can now add this graph to a dashboard to monitor it over time…

intsearch_trend

Use Counter eVars!
There are two ways you can use Counter eVars with internal search.  First, per my last blog post, you can use the # of Pages Counter eVar concept to track how many pages visitors view prior to doing a search to see how your website design is functioning.  I showed this in my last post:

page_counter_2

Second, you can track the # of internal searches in a counter eVar so you can see how many internal searches each visitor has done prior to completing your desired success event.

Track Recommended/Filtered Search Results
Many companies provide internal website searchers with recommended search results or filtered results based upon the search term as shown here:

intsearch_cisco

You can use SiteCatalyst to track whether the visitor clicked on your organic links or the recommended/filtered links.  All you need to do is add a query string to links in each distinct area and capture that in an eVar when visitors click on these links.  For example, the eVar values may be “organic link click” or “filtered link click” which will show you the distribution.  You can take it further by passing this to an sProp and correlating it to the search term to see which internal search terms lead to visitors clicking each type of result.

These are just a few of the fun things you can do with internal search tracking…

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.

Page Name eVar

Posted on November 2nd, 2009 by Adam Greco  |  3 Comments »

In my last post, I described some of the benefits of using a Page View Success Event.  In this post I will continue along the same theme by describing the benefits/uses of a Page Name Conversion Variable (eVar).  I recommend you read my last post on the Page View Success Event prior to reading this post as the two go hand-in-hand.

Setting a Page Name eVar
Setting the Page Name in an eVar, while somewhat nontraditional,  can be used for many different purposes.  In this post I will cover just a few, but I am sure those reading this can come up with many more.  The implementation of this couldn’t be easier.  Simply pass the s.pagename value to an eVar and you are done!  The following sections will outline how I use this variable once it is set.

Campaign Pages
Let’s say that you are running a bunch of online marketing campaigns and you want to see how many pages on the website people coming from each Campaign Tracking Code view.  In SiteCatalyst, the main way to figure this out would be to use DataWarehouse, ASI or Discover unless you read my last post and had set a Page View Success Event.  But now let’s take it a step further.  What if you want to see the pages that visitors from each Campaign Tracking Code viewed on your website.  Easy right?  Not so fast.  There is really no easy way to see this in SiteCatalyst using out-of-the-box reports.  One way to do this would be to use the Get&Persist Plug-in to pass the Campaign Tracking Code to a Traffic Variable (sProp) on each page of the visit and then use a Traffic Data Correlation to correlate this new sProp with the Page Name variable, but that is a lot of work!  The other way is to use a Page Name eVar.  By default, your Campaign Tracking Code report will store and persist the Campaign Tracking Code for multiple page views (you choose your time frame in the Admin Console) so if you begin to store Page Names in another eVar, you will have an intersection between Page Name and Campaign Tracking Code on each page.  That allows you to use a Conversion Variable Subrelations report to see all Pages viewed by visitors coming from each Campaign Tracking Code  You can see this by opening up the Campaign Tracking Code report, selecting the Page View (Event) metric and clicking the icon next to a specific Tracking Code to break it down by the Page Name eVar.  Once you have done this, you should see a report like this:

page_evar_code

Channel Pages Tracking
If you role up your Campaigns to higher-level Marketing Channels using SAINT Classifications you can use the concept from the Page View Event post to see how many pages are viewed on your site after visitor arrive from each Marketing Channel.

page_evar_channel

You can then break this report down by the Page Name eVar to see the most popular pages for each Marketing Channel:

page_evar_channel2

While this is not as granular as viewing Pathing by Campaign (as I demonstrated in this post) , it can give you a high-level view of what pages are popular for each different marketing channel.  If you are using the Unified Sources DB VISTA Rule or Channel Manager plug-in, it gets even better as you can see what pages people coming from another website or SEO are viewing on your website by breaking down a particular SEO keyword or external website link by Page Name:

page_evar_channel3

Internal Search Follow-On Pages
If you are properly tracking Internal Search on your website, you should have Internal Search Terms stored in an eVar so you can use this concept to break down Internal Search Terms by this new Page Name eVar (while using the Page View Event) to see what pages visitors view after they search on each specific Internal Search Term:

page_evar_search

What Page Does Success Take Place?
Another side-benefit of setting a Page Name eVar is that you can see on which page a Success Event takes place.  For example, if you set a “File Download” Success Event and a file is available on several pages, you can subrelate each file name with the Page Name eVar to see which page is the most popular for downloading each file.

Conversion Variable QA
Finally, there is a completely different use for the Page Name eVar – Quality Assurance.  Often times, you will run into situations where you have eVars that have bad data or no data at all (the dreaded “None” row!).  Often times, these issues are hard to troubleshoot.  However, if you have a Page name eVar, your life is much easier.

Let’s say that you have forms on your website and when visitors complete a form, they are required to enter a “Company Size” field which is stored in an eVar.  However, there are many cases where you are seeing the Form Company Size eVar with no data.  This might mean that IT forgot to make the field required on some of the Forms (would never happen right?).  How do you figure out which forms are causing the issue?  All you have to do is the following:

  1. Open the eVar report that has data issues with a relevant Success Event metric (Form Company Size and Form Completes in this example)
  2. Find the row that has bad data or no data (“None” row)
  3. Click the breakdown icon to break the report down by the Page Name eVar
  4. The resulting report (see below) will show you a list of Page Names where SiteCatalyst set the Form Complete Success Event, but did not have a corresponding Form Company Size eVar value

page_evar_qa

You can then send this report to your IT team to help them find pages where there may be tagging issues.  You could even schedule this as a recurring report to you and IT so you are alerted when similar issues arise in the future, which helps with overall data quality.  Keep in mind that this will only work if the eVar you are looking at has Full Subrelations or you add Full Subrelations to the Page Name eVar (see below).

Final Thoughts
As you can see, there are many different uses of this functionality.  The following are some final pointers related to this topic:

  1. As previously noted, if you plan to use the Page Name eVar extensively for testing, I would recommend that it have Full Subrelations so you can QA all eVar reports, not just those that already have Full Subrelations.
  2. In one of the rare times I ever tell clients to do this, I would recommend that you set the Page Name eVar to expire at the Page View in the Admin Console.  Expiration beyond that will probably add little value and only slow down reporting.  There are some special things you need to do here if you use Custom Links so I would advice you speak to Omniture  Consulting about this.
  3. Consider Classifying the Page Name eVar by Page Type, Page Product Category, etc… to increase the value you get from this eVar.

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  To be alerted to new blog posts, I recommend subscribing to this blog via e-mail using the tool provided on the top-right of this page.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.

Internal Campaigns

Posted on October 19th, 2009 by Adam Greco  |  5 Comments »

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:

internalcamp_1

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:

internalcamp_2

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:

  1. Page on which the promo banner was shown
  2. Location on page of promo banner
  3. Format (i.e. GIF vs. Flash)
  4. Creative Copy (i.e. $50 off vs. 10% Discount)
  5. 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:

internalcamp_3

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:

  1. One eVar to store the first Internal Campaign clicked in a visit (First Value)
  2. One eVar to store the last Internal Campaign clicked in a visit (Most Recent)
  3. One eVar to store all Internal Campaigns clicked in a visit (Linear) [remember that Linear Allocation is only Visit-based!]
  4. One eVar to store all Internal Campaigns clicked across multiple visits using Cross-Visit Participation

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:

internalcamp_4

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.

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  To be alerted to new blog posts, I recommend subscribing to this blog via e-mail using the tool provided on the top-right of this page.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.

Custom Search Success Events

Posted on August 13th, 2009 by Adam Greco  |  2 Comments »

I know many Omniture clients that spend much of their time using SiteCatalyst for SEO and SEM tracking.  If you are one of these clients, the following will show you a fun little trick that you can use to improve your Search reporting by setting custom Search Success Events.

That Darn Instances Metric!
As a Search marketer, you tend to spend a lot of your time in the various Paid and Natural Search Engine reports within SiteCatalyst.  While in those reports, you would normally use the out-of-the-box “Searches” metric for most of your reporting.  If you stay in the Search reports, life is good, as you can use the Searches metric and any other Success Event to see what success takes place after visitors arrive from a particular Search Engine or Search Keyword.  For example, here is a report that shows Searches and Form Completions coming from various Search Engines:

customsearch_1

However, as I blogged about a while back in my Instances post, the Searches metric is really a really a renaming of the dreaded SiteCatalyst “Instances” metric.  Why is that bad?  It means that if you need to see Searches in any other Conversion Variable (eVars) report, you are out of luck.  For example, let’s say that your boss wants to see a report that shows Searches and Form Completes (and possibly a Calculated Metric that divides the two) by Site Locale (each country in which you do business).  To do this, you would open the Site Locale eVar report and add Form Completes, but guess what…there is no “Searches” metric to add to the report since it only exists in the Search Engine reports!  Rats!

Let’s say you are an eternal optimist and you say, darn it, I can solve this!  I’ve read all of Omni Man’s blogs and there has to be a way to do this.  After pouring over past blogs, you finally arrive at the perfect answer!  I can use Conversion Subrelations to break the Search Engine report down by Site Locale while the Searches metric is in the report!  So you go back to the Searches report shown above and realize that all you have to do is use the green magnifying glass icon to and break the report down by the Site Locale eVar (which BTW will only work if Site Locale has Full Subrelations enabled).  I’m a genius, you think to yourself!  Then you wait for the report to load…brimming with anticipation only to see this…

customsearch_2

Yuck!  What’s up with all of the “n/a” values?  Foiled again by the darn Instances metric!

Don’t Panic!
Don’t be so hard on yourself since if you got that far, you are ok in my book!  Just consider this a well earned lesson on why you have to be careful around any Instances metric (don’t fall for the same thing with Product Views!).  As always, I don’t like to just present problems since the Omni Man is all about solutions!  To solve this enigma, we have to find a way to get around the Instances metric.  At a high level, the solution is to set custom Success Events when visitors arrive at your site from a Search Engine.  I usually set a Natural Search, Paid Search and Paid + Natural Search metrics.  This can be done in several ways, but the easiest way is through the Unified Sources Vista Rule or the JavaScript equivalent known as the Channel Manager Plug-in (I recommend talking to Omniture Consulting about implementation details).  Regardless of how you implement it, once you have true custom success events set when visitors arrive from a search engine, you can use these success event anywhere within Omniture SiteCatalyst which means that you can now create the report you were looking for above like shown here:

customsearch_3

The following are some other advantages of using a custom success events for Searches:

  1. You can use these metrics in Calculated Metrics (i.e. Shopping Cart Additions/External Natural Search) without having to rely upon the ExcelClient
  2. You can create Alerts on Paid or Natural Search metrics
  3. You can add some cool SiteCatalyst Plug-ins or advanced features to the new Custom Search success events that make them even better than the out-of-the-box Searches metric (i.e. Avoid back button duplicate counting by using the getValOnce plug-in or Event Serialization).
  4. You have an easy way to create a metric report for Searches (see below) and add it to a SiteCatalyst Dashboard

customsearch_4

The only caveat I will give you is that the new custom Search metrics will probably never tie exactly with the out-of-the-box metrics, but in many cases you can make them more accurate and useful.  If SEO/SEM is something that is important to your organization, I suggest you talk to Omniture Consulting and give it a whirl…  Let me know if you come up with any other cool uses for this functionality…

Adam Greco is the Director of Web Analytics at Salesforce.com.  You can read his previous Inside Omniture SiteCatalyst blog at http://blogs.omniture.com/author/agreco/ and can follow him on Twitter at http://twitter.com/adamgreco.  To be alerted to new blog posts, I recommend subscribing to this blog via e-mail using the tool provided on the top-right of this page.  Please send questions and comments to adam@the-omni-man.com.

Please note: I am no longer an employee of Omniture and the content/views expressed here are my own and not those of Omniture.