412.343.3692
1.800.975.1844

Archive for April, 2007

Designer KPIs

Sunday, April 29th, 2007

I’m hoping that a lot of readers will check out this post on the Benry blog — and comment on his blog. Benry (aka Scott) and I spent a while designing this KPI, in an effort to create a quick indicator of where to allocate scarce testing resources. We agreed that it wasn’t perfect, but that it was not bad at all. We’re both really looking forward to feedback from the WA community.

Custom Filters for GA: Part 3d

Saturday, April 28th, 2007

So now that the basics of custom filters (but NOT custom advanced filters, which will get their own set of posts) have been explored, let’s go through the only two hard parts: What field you are filtering on, and what the Regular Expression(RegEx) might look like. So do you remember this picture? from a couple of days ago:

Google Analytics include filter

Filter Field (which was Campaign Medium in this picture) and Filter pattern (the RegEx) are the two hard fields. IMHO. That’s the topic of today’s post. Now here’s the problem: this can be incredibly boring, especially when you get into all the technographic filters, like browser version. So I have picked a few interesting ones, and I hope that readers will ask questions about others.

I already wrote about Request URI and Campaign Medium. Here are a few other interesting filter fields and filter patterns (RegEx) to go with them:

  • Referral.
  • Why/When. Use this when you want to to manipulate (include, exclude, whatever) referrals that aren’t tagged. Examples: blogs or other sites that might link to you on their own. If you have a whole profile set up that includes referrals only, you’ll be able to use tools like your funnels and know that they are peculiar to just your referring traffic.
    How: Keep your RegEx as simple as possible, but be careful not to be too broad. For example, if you type in just Yahoo, you will get referrals from both my.yahoo.com and answers.yahoo.com. On the other hand, my\.yahoo\.com will get you just my yahoo (but only in the US, with the .com ending.)

  • Page Title
  • Why/When. Maybe you have a whole bunch of title tags that are the same. You’ve heard that’s really less than optimal (no pun intended) for your SEO. But you may still want to have a filter to include just these pages, so that you can learn more about how those pages are working.

    How. It’s pretty easy to mess up the RegEx on this one, so for the example above, start with a carat ^ and end with a dollar sign $, and put the whole title tag in the middle. It has to begin and end with the words you specify, once you have those characters. If you can get away with less, great, but only you know that. (I don’t know your site.)

  • Visitor Browser program
  • Why/When. Maybe you only want to learn about your Firefox users. You might want to learn how many visits it takes for Firefox users to convert, and that report isn’t one you can segment. So a filter works.
    How. Type in Firefox. (or for that matter, Opera. Or whatever browser you love/hate.)

  • Visitor Language Settings
  • Why/When: It *would* be very interesting to understand how your French visitors are interacting with your site. Or every more fascinating, how people who speak your language, but live in another country, interact. Like all the people who speak English, but live in the UK or Canada or Australia, etc.
    How: Go into your Marketing Optimization > Visitor Segmentation > Language report, and you will see all the two letter (or two letter dash two more letter) codes that Google uses, especially if you pull your report for a long period of time and have lots of data. Google does not seem to use the W3C standard, because I was unable to get a match on either en-us (English for the US) or zh-cn (Chinese PRC.) I have put a list of languages that I cobbled together here - it is not definitive, but is not a bad start. You can use these codes as your Match Field — type in en and you will be filtering on everyone whose browser is set to English of any kind.

  • Visitor Type
  • Why/When. If you have a report that just includes New Visitors (or the other way around), you can do lots of extra segmentation on that segment. So it’s like a segmentation squared.
    How. There are only two options here, New Visitors and Returning Visitor. But you might as well keep the pattern matching easy — all you need to do is type in either new or returning.

So please post questions here about filter fields that I didn’t cover, which you might be interested in. ALSO, many thanks to Pittsburgh Bloggers and Loose Tea for updating their links to this blog. to be www.lunametrics.com/blog.

Custom Filters for GA, Part 3c: User-defined tagged links

Friday, April 27th, 2007

How do custom filters work for the six options you might attach to a link that you would create in your e-mail marketing, or in your Yahoo! search ads: campaign name, source, medium, term, content and ID? If you want to learn more about some of those options (as opposed to the filtering), check out this blogpost by Meredith Smith from ROI Revolution.

This is an easy one (that’s why I did it today, when I am supposed to be on vacation.) As always, you give the filter a friendly name, you choose Custom, you choose the action you are interested in — for example, do you want to an include filter? — you choose one of those six filter fields I specified above, and you write your regular expression.

So let’s say that you are writing an include filter for just your paid search. We know that Google calls it cpc, but you may have tagged it as ppc in your Yahoo or MSN ads. (Side note: having a filter like this, and applying it to a new profile, would be incredibly helpful, because then you would be able to apply all your GA tools against just your paid search.) Here’s what the filter would look like:

Google Analytics Paid Search Include Filter

Notice the Regular Expression — the filter pattern — at the bottom. cpc|ppc. The pipe in the middle means OR, so this will capture and include only visits that came on a paid search where the search was coded with cpc OR ppc.

End notes: Many thanks to ROI Revolution for updating their blog with our new www.lunametrics.com/blog info (Yes Tim, you were right when you wrote this comment.) Also to June Li (who has to suffer with me at the Summit), and to Justin Cutroni (who loves creating a separate profile for important campaigns like cpc), both of whom updated their info. And then there is Jacques Warren, who shoes I try to fill at the WAA. And how about this one, AutoJini? (AutoJini, you have to write a comment and introduce yourself to the WA community, or maybe just to me.) And of course, the Benri Blog. I would write about future blog posts coming from Benri, but I don’t want to put too much pressure on the author. Thank you all for updating your info. It comes through slowly in WordPress, I just saw the link from Mine That Data, and I know that Kevin Hillstrom did that update a week ago…

Robbin

Worst practices in Surveys: Harvard Business School

Tuesday, April 24th, 2007

I never give any money to the Harvard Business School (HBS). So finally, they sent me a survey, asking why not.

(For the record: I always think that giving to the Greater Pittsburgh Community Food Bank is so much more important than giving to a corporation with a $25 billion endowment.)

Now, I applaud them for actually asking why I never give. But their survey was really lousy. And unlike companies, who may be stuck with a pre-packaged web survey from an outfit like BizRate, this is a school that can afford to buy anything they want — especially when it comes to raising money.

Rarely does someone pay for your time when you fill out a survey. So if I am donating my time, why don’t the people who put together the surveys allow me to skip some of the questions? If I don’t like a question, I’m going to lie, anyway, right? And if you had all the money in the world (like HBS does) you could even create a survey that points out that you missed a question and still lets you skip it (in case you don’t want to answer.)

Well, the HBS survey was one of those incredibly hard to fill out surveys — specific numbers of answers required here and there, not much thought put into usability. So finally, I wrote Bill Sahlman, the senior dean for external relations, since he had sent the original email.

Dear Bill: I tried to take your survey but never succeeded, due to error messages. {Screen shot of error message was included.}

I am a conversion scientist and web analyst. When you require people to answer questions, you lose them. It is even worse when they WANT to answer the question and can’t find the answer.

I wasn’t important enough for Bill to answer personally — despite how important I tried to make myself sound –  so someone named Courtney Fanning wrote me back.

I am replying on behalf of Bill Sahlman. The error your received is likely due to the limit of options. For some questions, you can only check 2 options. IF you check more than 2, it will not allow you to continue. Thank you for taking the time to complete the survey.

Sorry Courtney. I never took the survey.

End notes: I promise to go back to custom filters for Google Analytics later this week. Many thanks to Stephan Hamel (again) who updated this blog to www.lunametrics.com/blog in three places (so I can thank him at least twice, right?), and to Eric Peterson, who updated us as well.

Filters for GA, Part 3b: Custom Implementation

Sunday, April 22nd, 2007

Lots of people subscribed to this blog last week. (Twelve. About 2.5 of all subscribers came in the last seven days.) So if you are interested in conversion or other analytics, please forgive — you just happened to land in the middle of a series about filters for Google Analytics. I really wanted to do this series; I think we need better GA documentation.

So, custom filters. As explained in Part 2b, What have we here?, there are many different kinds of custom filters. You will use them a lot, because the “out of the box” filters won’t do much. And don’t be afraid of them — just set up a new profile every time you want to try a fancy filter, and apply your filter to that profile only — that way, you can mess it up all you want.

With custom filters, you decide what to name your filter, what kind of filter to use, and what the regular expression will be that will match — just like with Out of the Box filters. But now, you have an additional decision to make: which field you are going to filter. (”Filter field.”) So here’s an example of an include filter that I would use to include just an IP address (this would be very helpful if I wanted to be sure that ONLY my data were included in a profile, then I could see how well the analytics track what I do.) My Filter Field is “Include a visitor IP address” — that’s the additional decision you are required to make with Custom Filters.

include filter

In the next post, I will go through many of the filter fields. First, let me point out that you can get this information from the Google Help, it is just not always as helpful as I want it to be. Also, if I went through them all, you will be really bored, so I will just choose a few important ones. Today, we will have just one: Request URI.

Request URI: This is the one you will choose when you want to filter by the page or section of your site that the user requested. It is a relative address; in other words, you don’t have to include the www.mysite.com part of your URI. If your site is www.mysite.com/blog, and you want to exclude people who visited your blog, you would do a custom exclude filter and match to ^/blog. Remember that Regular Expressions are greedy, so they will match to everything that starts with www.mysite.com/blog (and maybe that is what you want.) On the Google page I referenced above, they make it sound like you can only filter by a specific page (This is incorrect, you can filter by a whole section or string in the URI.) Also, they don’t tell you that you should be using RegEx, although I had a hard time coming up with an example where you could really hurt yourself badly here.

More coming soon. Many thanks to Mike Keyes, Avinash Kaushik, Stephane Hamel, Kevin Hillstrom, and of course, the manager of the LunaMetrics Australian office, Steve, for updating their links to this blog.

Robbin

Filters for GA, Part 3a: Easy Implementation

Friday, April 20th, 2007

I am writing a series on filters for GA. This is the first actual implementation post I am doing in the series. This one is called “easy implementation,” because it is just implementation of the three “out of the box” filters I wrote about in Part 2. In Part 2, I only wrote about what they do; here, I write about how to make them work for you.

So first, go to the Filter Manager, found in Analytic Settings. And to make this as easy as falling off a wet rock, here is a picture of it:

GA Filter Manager

Notice how you have to click on the white text which has a charcoal background to create a new filter (the top border), not on the blue underlined Learn More. And the next screen will be similar, you have to click on the white “Add filter,” which is on a charcoal background. Hard to see, easier after you have done it hundreds of times.

Easy Filter #1: Exclude all traffic from a domain. Remember that you are excluding traffic based on the visitor’s domain, and that domain has to be an ISP, before you start this. Here, let me be more clear: you can’t use this filter to exclude all the traffic from Google — it will only exclude the traffic from people who work at Google. Don’t remember this? Well anyway, your screen looks like this:

Exclude-traffic-filter

All you need to do is give the filter a name (and it just needs to be descriptive so that you’ll remember it). Then, use the drop down box to choose “Exclude all traffic from a domain.” Only the final part might be hard — the domain. (In fact, I would love to get email/comments from anyone who actually uses this functionality.) When you screen out a domain, and it is an isp, you are going to exclude a *lot* of traffic. Did you really want to exclude everyone from Verizon? From Microsoft?

Well, let’s say that you do. You can keep your RegEx simple, and merely type in Microsoft. Regular Expressions are greedy though, and will include Microsoft.com and Microsoft.ca and anything else. If that’s what you want, great, and if not, make them specific: microsoft\.com or if you are really compulsive, microsoft\.com$. Need to understand how to use the characters that make up the Regular Expressions, like the backslash and dollar sign?

Easy Filter #2: Exclude all traffic from an IP address. This is a much more selective way of excluding traffic. You’ll do it the same way as above: First you give the filter a name that is meaningful to you, then you choose “Exclude all traffic from an IP address” from the drop-down box, and finally, you create the regular expression that defines your IP address(es). You might just have one, like this: 66.249.72.68, in which case, you’ll write it like this 66\.249\.72\.68 , thereby turning the magic dots into simple everyday dots. Or maybe, you have a range of IP addresses - you can still get them into that one box by using Regular Expressions. So if you own IP addresses 72.77.12.26 through 72.77.12.40, inclusive, you’ll write ^72\.77\.12\.(2[6-9]|3[0-9]|40). If this is complete gobbledygook to you, the way it was to me a year ago, check out this post on Regular Expressions - the same example is used there.

Easy Filter #3: Include only traffic to a subdirectory. So it’s the same drill. First you give the filter a name that means something to you, then you choose “include only traffic to a subdirectory” from the dropdown box, and finally, you create a regular expression that defines the subdirectory. For example, if I only wanted to see traffic to this blog, which is now at http://www.lunametrics.com/blog, I could do it a few ways, but the safest would be like this: ^/blog/

Why? The carat ensures that the directory has to start with the word blog. And because there is a slash after the word blog, the RegEx will stop working at that point — it won’t pick up another random directory calling, for instance, blogging.

And now how do I apply these easy filters? You created extra profiles, right? So use the bottom half of that Filter Manager screen and choose which profile to add the filter to. Alternatively, you can just start with a profile and create a filter for it. (But you still have to find the white text on the charcoal background to Create a Filter.)

Check your filters the next day to see if they are working correctly. If you pull in only the new day’s data, you’ll be sure that you don’t have any unfiltered data. Do they make sense? Compare them to unfiltered data over the same time period - does the difference make sense?

Robbin
Lunametrics

Filters for GA part 2b: What do we have here?

Thursday, April 19th, 2007

We already talked about what the out of the box filters do in Google Analytics. Why/when does anyone use custom filters? (Note: I really will circle back and talk about how to actually create them. )

Most of the time, people use custom filters, because most of the time, the out of the box filters don’t do enough. All you can really do is exclude visitors from the data, and create a filter that includes a specific section of your site, only. But as soon as you want to do more, or flip one of these on their heads (eg. INCLUDE only the people from your company, so that you can see their internet activity — that’s what eBay did) — well, as soon as you want to do that, you need something stronger. Enter custom filters.

Here they are again, but this time, with explanations of what they do.

  1. Include. You can use an include filter to include just about anything you want. Include means, you include what you specify and nothing more. It works like the green plus sign on the little filter box that goes with almost every report in the GA reporting interface. However, you might have multiple include filter on a profile. Example: You have one include filter that says, include everyone who lives in Seattle and another that says, include everyone who uses Firefox. In order to be included in this profile, visitors have to clear both hurdles, so you only see data about Seattlites (Seattlans? Seattle residents?) who uses Firefox.Remember that include filters are going to be one of your best friend.The comments from the last fourteen posts on this blog got lost after we did the conversion, so you can’t see one important comment on this topic. The commenter, Ben, asked, can filters be used to separate marketing campaign traffic such as paid search from the standard traffic? They can and should be used that way.In fact, you can create an include filter to include only Campaign Medium = cpc|ppc (that way, you get the traffic whether it is coded as “cpc” the way that Google does, or “ppc” the way that you might have done it yourself.) More on this when I do implementation posts, coming soon.
  2. Exclude. Exclude filters work the opposite from include filters (this is actually not so trivial.) If you have two exclude filters on a profile, the data will be excluded if the data should be excluded by either of the filters. So if we have the same two filters as above, geography=Seattle and a second exclude filter, browser=Firefox, the visitor will be filtered out if either condition is met.
  3. lowercase and UPPERCASE. These are the same thing, just opposites. You can use them to rewrite your Google Analytics data in lowercase or UPPERCASE. But why would you want to do that? (I never use this one, so I had to ask.)Helen at Google gave me a great answer:
      “There are a few examples. It’s more than making URIs pretty, but also aggregating the stats for URIs that are identical though they may have varied cases. A good example of why URIs may vary in case are when the published URI is camel-case for readability, but others may get there using all lower-case. [Robbin: When she writes "camel-case," she means, like this: www.LunaMetrics.com, instead of www.lunametrics.com.] Perhaps more likely inconsistencies may be page titles or manual tags (campaign values). Finally, another great example: keywords. I may want to see all the visits driven to my site by “socks,” “SOCKS,” or “Socks” rather than seeing those results in 3 separate lines.”
  4. I love that keywords example, because I see the problem so often.

  5. Search/Replace. Google actually does a really nice job with this explanation. They even give two different examples. So I will let you read their explanation. Here’s a short version: You use these filters when you want to make one value look like another value. So you might have a strange URI that you want to be able to read and understand.
  6. Advanced. I don’t want to do this one here, it deserves a post all of its own, after the implementation posts that I will write. And I can’t wait to get to it.

Robbin

Best practices in conversion: our new site

Tuesday, April 17th, 2007

Our new site doesn’t look that different, but we made a lot of changes (to the site and the company) — I got tired of telling customers the “right” thing to do, and not doing it myself.

  • We converted the whole site to .php and added a Wordpress blog (see? you are reading it.) I was getting so much link love over at Blogger, and it was such a split strategy. It will take a while until we have the kind of links here that we had over there, but it will come. Especially if my friends help and change our address on their blogrolls to www.lunametrics.com/blog …
  • We created great onsite search and onblog search. Go ahead and give it a test ride. Lots of people go to sites and start with the search box; I just wanted ours to be as good as it could be.
  • We now have a custom 404 error page, so that visitors don’t feel chastised when they ask for a page that has moved. Whether it’s your mistake or ours, we’ll take the blame.
  • We moved our email marketing sign-up (which is only one by one, very small) above our contact form, on every page. That way, both of them are above the fold.
  • Our form now includes a captcha (”the human test”) so that the robots and bots don’t spam us with fake forms all day long.
  • We changed our secondary navigation to include both Google Analytics and Multivariate Testing. And we moved KPIs and Software selection off of our navigation. This is because all the people who asked for KPI help wanted help with key performance indicators on the factory floor. It’s because people would call and ask such easy software questions that it broke my heart to charge them. And of course, it’s because LunaMetrics became a Google Analytics Authorized Consultant. (GAAC)
  • And speaking of the whole GAAC thing, we have three new hires! We have a new summer intern, Heather Dezayas, we have Stephan Mack, who is going to become an expert at Urchin and configuration of Google Analytics; and Shareen Jordan is going to join us as Director of Web Analytics. I think Shareen will have her work cut out for her in analytics AND multivariate testing AND conversion science. Both Shareen and Heather are starting right after the Summit. Where I hope to learn more about all the things I haven’t had two minutes to learn about Wordpress, which is mostly everything. (Like all those plugins that Justin sent; I haven’t had time to touch them.)

Robbin
LunaMetrics

The Ultimate Hero Shot: Your picture

Saturday, April 14th, 2007

Do you ever start to leave question and then delete it?

(Technically speaking, Bryan Eisenberg posed this question to me in a bar two weeks ago. But he was really talking about user engagement, and I am talking about getting customer service sites to convert.)

So it is Saturday, and I am supposed to be doing financial stuff for my company and my family. Quicken and Quickbooks are not always my friends, though. For the first time, I decided to leave a comment about how unhelpful the Quicken help can be. I was absolutely shocked to click on the “Did this help you?” button and get this picture:

… with the words, “Hi, we’re responsible for your feedback.” And it really made me feel like someone was going to read and care about it. I especially love the way they did the photography, it was just a group photo of colleagues. Prettier and more professional isn’t always better, I think (would have loved to see the results of that test.)

Robbin
LunaMetrics

Filters for GA, part 2: What do we have here?

Thursday, April 12th, 2007

Filters are hard when you don’t know why to use them, when you don’t know how to use them, and when you don’t know which ones to use. I’ll start with the end, which ones to use when. Even understanding what you have available can be confusing. Note: even though this may seem like an easy topic, there are some interesting things here.

At the “top level,” are three predefined filters plus the ability to create custom filters:

  1. Exclude all traffic from a domain
  2. Exclude all traffic from an IP address
  3. Include only traffic to a subdirectory
  4. Custom

Then, within custom filters, there are five other kinds of filters:

  1. Include
  2. Exclude
  3. lowercase
  4. ,

  5. UPPERCASE
  6. Search/Replace
  7. Advanced

But wait! you are saying. What about Lookup table? Sorry, it is not supported at this time. Don’t you think the idea of showing something you can’t do is ridiculous? But no one asked me.

In any case, not all custom filters are advanced filters. (I can’t wait to get to Custom Advanced filters, but that is not today.)

I put the first three in boldfaced to point them out. They are the most predefined (or if you like, out of the box) filters that we have, and the ones I will write about today.

Now, let me go through them and talk about when you would use them. (By the way, Michael Harrison at ROI Solutions wrote a nice summary of filters for GA in January.

Exclude all traffic from a domain and exclude all traffic from an IP address are two different ways to not include traffic. Mostly, I see them used to get rid of your own traffic, your web developer’s traffic, your website marketing firm’s traffic. So why use one versus the other?

Well, I’ll use me as an example. Although my company is lunametrics.com, our domain is really our ISP, Speakeasy. And I don’t want to exclude all Speakeasy traffic, because that means, I will have excluded everyone else from there.

So IP address would seem to be a better choice. (To get your IP address, type “what is my IP address?” into Google, and you’ll probably get the answer in the first hit.) On the other hand, every time I log in at Starbucks, my IP address changes. And my domain still wouldn’t be LunaMetrics, it would probably be T-Mobile. Or something like that.

So on the off chance that I haven’t already given enough publicity to this workaround: my favorite answer for a small company is to use this workaround, called “Count me Out!.

However, the Count me Out! workaround is not where you want to go with large companies. It’s hard to get 25 people to go to a site and type in a specific word (I even had a customer who reprogrammed it so that the word was already there and all they had to do was hit “enter”, and I still don’t think I have everyone out of the data. Imagine doing it with a 25,000 person company?) With a large company, you might as well get the IP addresses and take them all out of the data. (But wait, you are thinking, they are a large company, can’t I just use domain name? Well, do a domain lookup [type in “domain lookup” to get a tool), and give the tool one of the big company’s IP addresses. Do you get their company name or do you get Verizon?)

Finally, in the category of “out of the box” filters is: Include only traffic to a subdirectory. That enables you to see just the traffic that is going to just a part of your website. You could also achieve the identical results with a custom include filter, but that one has to wait until tomorrow.

Of course, you should try all your custom filters on separate profiles, like I wrote about earlier in the week. And a separate profile is just about required for the include all traffic to a subdirectory, because if you put it on your good, “prodution” profile, you will lose all the information about the traffic not going to that subdirectory.

Many thanks to Nick and Helen for their help. They didn’t read any of this, so the mistakes are mine, mine, all mine. Coming next: when to use custom filters.

Robbin
LunaMetrics