Archive for December, 2009

Embedding SiteCatalyst Reports

Posted on December 21st, 2009 by Adam Greco  |  1 Comment »

One of the old adages in business is location, location, location.  In this post, I will share a way that you can ease end-users into the data you want them to see by embedding key reports in to places they are already are frequenting.

Why Embed Reports?
In my experience, most users don’t log into tools (check the SiteCatalyst usage logs) and many ignore e-mailed reports.  But if you can provide relevant information in a context that is meaningful to them, you have a better chance of adoption.

Another barrier to web analytics adoption is that SiteCatalyst reports don’t provide a lot of context.  What I have longed for is a place where I could share more than a few sentences of information about the report an end-user is viewing.  However, for all of its virtues, SiteCatalyst does not provide a lot of tools to provide context to reports.  The ones I have seen are as follows:

  1. Adding a text reportlet to a SiteCatalyst Dashboard.  This is ok, but it is hard to share a lot of information or graphics here.
  2. Adding notes to reports.  Again, you are limited to basic HTML and it is difficult to replicate report notes to many report suites.
  3. There is no real way to associate notes to reports that are e-mailed out other than a short description.
  4. Adding notes to an Excel Dashboard.  This is what I have used the most, but Excel Dashboards can be harder to share and have issues for Mac users.

In addition to the above limitations, as stated earlier, I like to get reports closer to my end-users.  For these reasons, I choose to embed reports into Intranets and web pages.  For example, recently, our development team launched a cool new sidebar helper tool on the website affectionately known as “Super-Sassy.”  Instead of sending a report to my users telling them how the new tool has performed, why not show all recipients what the tool is with the associated data:

embed_1

In the example above, I might show data related to our “Super-Sassy” tool along with explanations of all of the metrics on an Intranet page used by the people who designed and developed the tool.  This provides context for people who would not normally be using web analytics data and (hopefully) gets them excited about learning how the tool they have developed is being used.  I even included a button at the top that allows them to launch the full report in SiteCatalyst should they want to change the date range, country data set or dig into more detail.  Finally, in the embedded SiteCatalyst report, I can pre-filter the data using a search and pre-select the appropriate report suite and date ranges, which all goes a long way to simplifying things for people who are not web analysts.

Which do you think will be used more, the above report or the same report buried in an eVar report somewhere within the SiteCatalyst interface?

How’d He Do That?
So how do I do this?  Obviously embedding depends upon the environment you are trying to embed into so I will share the general principles and hoepfully you can apply them to your own envirnment.

One approach is to use SiteCatalyst Widgets.  About a year ago I showed how to use SiteCatalyst Widgets to embed reports into tools like iGoogle so I recommend you check out that post to see if that will work in your environment.

For today’s example, I am going to show what I did above, which is embedding SiteCatalyst reports into Google Sites.  If you are not familiar with Google Sites, it is a free template-based tool you can use to build team group pages, Intranets or any other site you’d like.  I like to use secure Google Sites to build Web Analytics portals or embed reports in existing Google Sites being used by teams at my organization.

Let’s imagine that your social media team has a Google Site that they use to track information about the company’s social media program.  This site has a page for the social media team, social media policies, articles related to social media, etc… Now let’s say that you have implemented some cool Omniture SiteCatalyst Twitter Integration which allows you to see how often your company’s branded keywords are mentioned on Twitter.  Wouldn’t it be cool if you could embed the report showing Twitter mentions directly into the social media team’s existing Google Site?  Here’s how to do it:

  • Work with your social media team to add a page to their Google Site that describes the business question that your report aims to solve.  In this case it might be something like “How often is Salesforce.com mentioned on Twitter?”  On this page, you should provide some context, such as what keyword phrases you would characterize as a “Salesforce.com mention” so users know what makes up the metric.
  • Next, in a new browser window/tab, create the SiteCatalyst report that you want to show your audience on the page.  You do this as you would normally create a report, by selecting the variable (eVar, sProp or Success Event) and the desired date range.
  • Next is the tricky part, in the Google Site menu, insert a Google iFrame Gadget as shown here:

embed_2

  • Once this gadget is embedded, click the Properties link which will show the window below.  In your SiteCatalyst tab/window, use the new shortcut link feature (if you need a refresher on how to do this, see this post) to create a shortcut link to the report you created above.  Enter this shortcut link in the “URL to content” box.  Choose the sizing and border settings as you wish and when you are done, save the gadget.  The only bummer in this technique is that Omniture only keeps these shortcut links for one year which means that you would have to repeat this step with a new link once per year (please join me in lobbying Omniture to make these links indefinite!)

embed_3

  • Finally, save the new Google Site Page and you are finished.  You can go to the Google site and search on a phrase you included in your page (i.e. “Twitter”) and see the new page in the results list:

embed_4

  • When your users click on the page you created, they will see a page like the following:

embed_5

Presto!  You now have a SiteCatalyst report embedded into a Google Site already used by your stakeholder that provides useful information and as much free text/graphic context as you would like to add!

How Much of a Web Analytics Geek Are You?
So the above example is specific to Google Sites, but there are many ways to create iFrames of the shortcut links or the Widgets discussed earlier.  However, if you do use Google Sites and are truly a Web Analytics geek, there is a checkbox in the Google Site setup that allows you to track how Google Site pages are used (using a tool that shall remain nameless here!).  Said tool would allow you to see how often people are accessing your wonderful new page and might look something like this:

embed_6

Final Thoughts
Since most of you out there are more technical than I am, I expect that you can apply these concepts in ways I never imagined to do amazing things.  The goal of this post was simply to get you to “think outside of the box” and realize that there are many more ways to share your SiteCatalyst data other than e-mailed reports and SiteCatalyst Dashboards.  Enjoy!

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.

Data Quality – The Silent Killer…

Posted on December 7th, 2009 by Adam Greco  |  4 Comments »

In this post, I am going to talk about how Data Quality can kill an Omniture (or other Web Analytics) implementation.  I will share some of the problems I have seen and show some ways that you can help improve Data Quality…

Sound Familiar?
So you have been managing an Omniture implementation for a while.  You have your KPI’s lined up.  You have been sharing some dashboards and reports with people throughout your company.  People are starting to realize that they should talk to you before making website business decisions.  Suddenly, you find yourself in the executive suite to answer some key website questions.  Then, just as you are wrapping up your web traffic overview, an executive starts to calculate some numbers on a notepad and determines that the increase you show in Paid Search traffic doesn’t look right given other data they have seen from the SEM team.  She also questions the rise in traffic data for EMEA, knowing that his VP in the region told you traffic has been down over the last few months.  Suddenly, you are in a web analytics death spiral.  In a split second, you have to decide, do you defend your Omniture data and risk your reputation or do you back-pedal saying you will re-check the web analytics data and live to fight another day?

Hopefully this hasn’t happened to you, but it has happened to most of us who have been around the web analytics space for long enough.  Unfortunately, you only get so many chances to be wrong  about data you are presenting and even if your data is right, if you aren’t confident enough to stand by it, it might as well be wrong.

Minimizing Data Quality Risk
So how do you avoid this situation?  The first step is to realize that there is no way to be sure that all of your web analytics data is correct.  100% Data Quality is not only unattainable, but also not worth the time and effort it would take to achieve.  Therefore, I use a philosophy of risk minimization in which I try various techniques to minimize the key things that cause data quality issues.  The following will show you some of the ways to do this:

Ensure all Pages are Tagged
This is easier said than done.  As we all know, IT is usually used to deploy JavaScript tags and they often have more important things to do than to guarantee that every website page has a the [correct] JavaScript tag.  Fostering a good relationship with IT helps, but at the end of the day, new website pages are created all the time, and tags will be missing.

Use Technology
As you can imagine, where there is a need, there are technology vendors.  The main vendors that I have worked with or heard the most about are WASP and ObservePoint.  Not completely coincidental, ObservePoint was founded by John Pestana who was one of the co-founders of Omniture.  In a great blog post, John Pestana talked about getting rid of asterik’s in web analytics reports.  I am sure there are many other vendors out there offering similar products, but the gist of the technology is that it can spider your website and let you know which pages are missing JavaScript tags so eliminate any obvious omissions.

Blood, Sweat & Tears
Unfortunately, the main way that I have minimized web analytic data loss is by downloading data and looking for anomalies.  I normally do this by taking advantage of the Omniture SiteCatalyst Excel Client and downloading key data blocks by day or week and then using formulas to compare yesterday to the same day last week or last week to the week prior.  Once you have the data in Excel, you can do any type of statistical analysis you want on the data to see if anything looks “fishy.”  One thing I like to do is to use Excel conditional formatting to spot data issues.

The following is a screenshot example of using Excel to spot potential data issues.  In this example, I am looking at Page Views from one week prior to each day and if there is a change of more than 20%, I highlight it in red:

dq_excel2

Uh-oh… It looks like our daily data quality report indicates that we may have lost a tag on Friday for the Login page and something suspicious took place related to the Search Results page the same day.  Obviously, the downsides of this approach are that it is extremely manual and that it is in arrears.  As you know, once you miss a time slot of data in SiteCatalyst, there is no easy way to get that data back.  While this approach can minimize the data loss to a day, it won’t help you get the Login Page data back in the example above.

Therefore, the way I employ this approach is to focus on the top items within each variable.  This means, I focus on the pages with the most Page Views, the Form ID’s with the most Form Completions, the Orders for the most popular products, etc…With the Excel Client, you can download multiple data blocks at once and then use conditional formatting to easily spot the issues.  Done intelligently, Data Quality for 80% of your data can be done in under a few hours each day.  By doing this, you can feel more confident when your VP questions your data knowing that if something were significantly off, you would have known about it ahead of time.

Special Cases
I have found that there are a few other situations that commonly lead to missing or bad data so I quickly wanted to bring them to your attention so you can apply some additional effort to ensure they are tagged correctly:

  1. “Lightbox” pages where a new HTML page is often not loaded.  These often times are created as a window within a window and many times developers forget to put SiteCatalyst code within them.
  2. Flash/AJAX pages where the page changes dynamically or you have an entire site/page developed in Flash.  By extra careful around these as they often are missing tracking code (especially when done by an outside agency!).
  3. Dynamically generated content, such as a page that shows historical stock price data after a user enters a ticker symbol.  Often times, these dynamic pages are tagged as one single page, but might be better as unique pages from a web analytics viewpoint.

SiteCatalyst Alerts
If you have read my previous blog post on Alerts, you may figure out that you can use Alerts to help with Data Quality as well.  Alerts can be used to look for changes in key metrics by Month, Week, Day (or Hour in some cases).  These alerts can be handy to be notified when data is off  by more than x%.  However, I have found that if you want to look a more granular data (as in the example above), the current Alert functionality can be a bit limiting.  You can set alerts for specific sProp and eVar values, but not as easily as you can by using Excel.  Therefore, I would use Alerts as an early warning system an employ the previously mentioned techniques as your main defense against missing data.

Classification Data
Finally, when  thinking about data quality/completeness, don’t forget about SAINT Classifications.  If you have key reports that rely on SAINT Classifications, even if you have the source data collected perfectly, if you are missing key SAINT Classifications for that source data, your reports will be incorrect and indistinguishable from poor data quality in the eyes of your users.  You will know if you are missing SAINT Classification data if your classified reports have a large “None” row.  So how do you ensure your SAINT Classification data is complete?  What I do is create Excel data blocks for each Classification and isolate the “None” row for key metrics.

In the screenshot below, you can see that I have created a data block that looks for “Unspecified” Site Locale Full Names (the Excel Client doesn’t use None, but it uses “Unspecified” instead for some reason).  In this scenario, I store a 2-digit website country identifier in an  eVar and use a SAINT Classification to provide a full name.  I filter on “Unspecified”  where the metric is Visits, Form Views and Form Completes.

dq_excel4

After running, you will see a succinct report that looks like this:

dq_excel3

In this case, there are no Form View or Form Complete Success Events missing a Full Site Locale SAINT Classification, but there are some Visits missing the classification.  You can then easily go into SiteCatalyst or Discover, open the Full Locale Name report and break it down by its source to find out what values are left to be classified.

Finally, if you want to earn “extra credit” you can do this for all of your SAINT Classifications in one Excel workbook and make a summary screen like the one below which pulls the percentages that are unclassified into one screen so you can see how you are doing overall.  What is cool about this is that you can use the “Refresh All” feature of the Excel Client to check all of your Classifications while you get coffee and when you get back, you have a fully updated view of your SAINT Classifications.  In the above below, I have shaded some items in black that are OK if they aren’t fully classified, items in green that are acceptable and items in red that require attention:

dq_excel5

Final Thoughts
As you can see, Data Quality is a HUGE topic so it is hard to cover it all in one post, but hopefully some of the pointers here will get you thinking about how you can improve in this area.  One last thing I will mention is that like most things related to web analytics, tools are good, but qualified people are better!  Therefore, I think that any serious web analytics team will have a resource who has Data Quality as one of their primary performance objectives.  Without this, Data Quality tends to fall by the wayside.  Try to do whatever you can to convince your management that having a full or part-time person devoted to Data Quality will pay hefty dividends in the future…

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.