412.343.3692
1.800.975.1844

Archive for the ‘Google Analytics’ Category

Free beginner seminar: GWO/GA/Webmaster tools

Thursday, June 26th, 2008

Google is doing a triple event. I don’t really think that they need me to blog about it to our 1900 readers (which is why I never blog about new features, everyone has already heard about them by the time I get to my Wordpress dashboard.) But you do favors for your friends, and this is one of them.

In the PR, which you can also read on the GWO blog, they say that they will:

  • Briefly introduce the products
  • Highlight recent product releases and developments
  • Discuss the benefits of using the products together
  • Answer selected questions that attendees have submitted

So I believe it is a beginner seminar. Just ideal for the person who is beginning to work with one of those tools, or who works with one or two but doesn’t know the value of the others.

Here’s the What/Where/When:

TITLE: The Google Trifecta: Webmaster Tools, Analytics, Website
Optimizer
DATE: Tuesday, July 8, 2008
TIME: 9:00 - 10:00 am PT (Pacific Time)
JOIN US: Register to attend

Funnel Problems in Google Analytics

Wednesday, June 25th, 2008

Goals are one of the most useful things you can set up in your Google Analytics. Funnels go along with goals in helping you understand how visitors progress to your goal.

A Primer on Funnels

A funnel is just an ordered list of pages (up to ten) leading up to your goal page. For example, for a shopping cart, a funnel might be something like this:

  1. Check out
  2. Fill out shipping information
  3. Fill out billing information
  4. Confirm purchase

The funnel that make sense for your goal depends on your site and how you intend your visitors to progress to your goal. Not all goals have a natural funnel, and you aren’t required to define a funnel for a goal. However, for a goal like the shopping cart example above, defining a funnel can give you a lot of useful information about where people get hung up and decide to abandon the funnel, never reaching your goal.

You set up a funnel along with your goal, and the setup is the same — just put in the URLs for the funnel pages (using Head Match, Exact Match, and Regular Expression match just like the patterns for the goal URL). See How Do I Set Up Goals? in the Google Analytics Help for more information on setting up goals. One tip: Give the funnel steps descriptive names, since they’ll show up in the reports and you want them to be self-explanatory. “Step 1” and “Step 2” don’t help anyone much. Better to go with “Check out” and “Fill out shipping information.”

There’s a lot of confusion around how setting up a funnel affects your goal reporting, and what gets recorded in the funnel by Google Analytics. First of all, the funnel you define affects only the Funnel Visualization report. Your goal conversion counts and rates are still exactly the same as they would be without the funnel in the rest of the reports in GA. With that in mind, here are some answers and some troubleshooting for common problems with funnels.

Required Step

The “Required First Step” check box on the goal setup causes a lot of confusion. First of all, remember that this affects only the Funnel Visualization report. If you check off this box, here’s what happens: The Funnel Visualization report includes only conversions that passed through the required step. That’s it. Your other reports still include any visit that views the goal page, but the Funnel Visualization report only calls it a conversion if it visits the required funnel page.

The required step can be a way to separately measure multiple goals that have the same ultimate goal page, but start at different places. Simply set up more than one goal with a different required step for each one. (Again, remember that the differences will only be apparent in the Funnel Visualization report.)

Order of Steps and “Backfill”

Your funnel steps have an order, and they show up in that order in the Funnel Visualization Report. But the truth is, GA doesn’t care what order the steps occur in. It simply looks through the visit to see whether the funnel pages and the goal pages were viewed, and if they were, that’s represented in the Funnel Visualization report, regardless of the order they were viewed in. A visitor could view step 2, then step 1, then step 3, then the goal, but they’ll still show up in the funnel for each of the steps.

In fact, GA goes even further and “backfills” missed steps in the funnel. So if someone views step 1, skips to step 3, and then views the goal page, GA will actually show that they proceeded through step 2! It will fill in any pages between a visited step and the goal.

Converting More than Once

A conversion is when someone reaches your goal page. But what if someone
visits your goal page more than once? Whether they visit your goal page one
time or one hundred, GA will only report a single conversion for that visit.

Much like the scenario in “Order of Steps” above, GA simply looks through
the visit to see if the goal page was viewed, and if it was, the visit
counts as a conversion. So if a visitor repeats the funnel within the same
visit, you’ll only see one conversion.

Funnel Problems: 100% leave after a step, or 100% convert for several steps

Occasionally we see a funnel that looks like the one below. Something’s clearly wrong. 100% of the visitors leave after the first step, but the other reports clearly show goal conversions are happening.

broken funnel 1

This happens when you have a funnel step that matches the subsequent steps in the funnel. Remember you need to be careful if you are using Head Match or Regular Expression match in your URLs. If your funnel setup looks like the one below, you’ll end up with a Funnel Visualization report that looks like the one above, where everyone leaves after the first step, because all of the steps match the first one.

setup for broken funnel 1

A related problem happens when only some of the later pages match a previous page in the funnel. Take a look here:

broken funnel 2

This problem is harder to detect, but 100% conversion across several steps looks fishy. You should expect to lose at least a few people, given enough data. So what’s happening here?

setup for broken funnel 2

It’s similar to the first problem funnel setup. Here step 1 also matches
steps 2 and 3, but this time it does not match the goal page. Like the
first example, because steps 1 and 2 are the same, no visitors make it to
step 2, as far as GA is concerned. However, the goal page is different.
For every visitor that reaches the goal page, GA backfills into the previous
steps.

You can avoid problems with a step matching subsequent steps by using regular expression that have negative lookaheads to exclude the later steps.

Jonathan

Automatically Show All Profiles in GA

Thursday, June 12th, 2008

I was recently asked by Espen at zedge.net if there was anyway to automatically show all your profiles for the website profile list in GA.

The default is to display 10 profiles and you can either 1. page through them (painfully) in sets of 10 per page or 2. Select from a pulldown how many you want to show at once.

Show 100 Profiles

But when you have a lot of profiles it becomes annoying to select “Show 100″ every time you see this screen.

So, I wrote this very simple greasemonkey script that watches for certain location.hrefs (URLs) and adds the parameter ns=100 to the end of the URL. The ns=100 parameter directs GA to show 100 profiles at once (which is the highest option in the pulldown).

If you don’t already have Greasemonkey installed you can get it here.

Then download and install the Show 100 script. (If you have greasemonkey installed, you should be prompted to install the script when you click on it. Otherwise download it and use the greasemonkey interface to add the script).

It is not a perfect solution but it has worked well for me so far, and it may help you put off that carpal tunnel surgery for a while longer. If you have a better or smarter way to accomplish the same thing, let’s discuss it.

UPDATE: André made a code suggestion (see comments) which I have incorporated into the script.  Now it will not add the &ns=100 parameter if there are 10 or fewer profiles.  Thanks André

-John

Last chance for NYC Google Analytics Training: Wednesday, June 4

Friday, May 30th, 2008

Getting Ahead w GAI worked and worked and worked with Bernadette, at the New York City Harvard Club (where we are having our Google Analytics training on Wednesday, 6/4/08) so that we could accommodate extra people. She is such a gem. I drive her crazy, I know…

If you are coming, now is the time to register. We’ll have two concurrent tracks: implementation and analysis.

Implementation Track: If you are a techie (or even if you aren’t a techie, but need to do the technicals to make your Google Analytics work well), you’ll want to hear John Henson talk about filters and profiles, goals and cross-domain tracking.

Analysis Track: If you’re an analyst (or even if you aren’t, but your company expects you to do that kind of work), you’ll want to hear us talk about how to make sense of all that Google Analytics data. (That’s me — I am speaking for the first three sessions of the day.) Traci Scharf will talk about creating a leaner, meaner AdWords program. Megan Kiel is going to join us from the Google Website Optimizer team to talk about testing your website.

At the end of the day, Jonathan Weber will talk about getting the whole organization on board. And we’re going to work and work and work to be sure your questions are answered.

Don’t worry, you’ll be able to pick and choose among the sessions, and if you have to miss a critical session, we’ll see if we can’t sit with you at lunch and go through the key points. Everyone will get copies of all the handouts, too.

So here’s the link to read all about the training, and here’s the link to look at the agenda.

Robbin

Goal Copy Extension Update

Tuesday, May 13th, 2008

If you don’t know what this is, have a look at my previous post, Copying Goals in Google Analytics

This version has 3 new features:
Menu Button
1. Ability to clear a goal
In the new Options pulldown button you have 4 “Clear Goal” items. Selecting one of these will clear the corresponding goal and reset the name to “Empty”

2. Autosave after Pasting a Goal
The extension can now automatically save a goal after you paste it. This can be toggled on or off from the Options button. It defaults to off (does not automatically save). If you turn it on, when you paste a goal into the goal form, it automatically submits the form and returns you to the previous page.

3. Paste All button
The Paste All button is used from the ‘Profile Settings’ page that displays the Edit links for your four goals.

Profile Settings Page:
Profile Settings Page

From this page, the Paste All button will:

Navigate to the Goal Settings: G1 form
Populate that form with the goal that is saved in the first slot
Save the goal

Navigate to the Goal Settings: G2 form
Populate that form with the goal that is saved in the second slot
Save the goal

Navigate to the Goal Settings: G3 form
Populate that form with the goal that is saved in the third slot
Save the goal

Navigate to the Goal Settings: G4 form
Populate that form with the goal that is saved in the fourth slot
Save the goal

If any goals have been “Cleared” from the Options pulldown button, those goals will be skipped in the Paste All process.

Installation

Open this link in Firefoxinstall_dialogxpi.jpg

Then click Install Now.

Depending on your setup, Firefox may want to download the file instead of installing it directly. Just select “Open With. . .” and choose Firefox from the list of applications.

Thanks again to everyone who helped with suggestions and with troubleshooting.

-John

Best GA tool ever: the Change (Delta) chart

Monday, May 12th, 2008

delta chartToday, I want to write about the GA “change chart.” You might even call it, the delta chart. Or, the red and green chart (Note: If you come to our Google Analytics Training Day in New York City, June 4 2008 at the Harvard Club, you’ll hear us talk about this specific topic right before lunch.) I am sure this chart has a great name, and I just don’t know what it is.

Here is where the chart capabilities sit (see screen shot at left) the best kept secret in Google Analytics. Notice how it is in the far right of the GA interface, immediately below the graph and above all the lines of reporting. The red arrow is mine, and points to exactly which chart I am loving - because you can get the regular grid, a pie chart, a bar chart, or — ta da! — the delta chart.

When you click on it, you suddenly have data in context. For example, consider this site, engineering-education.com. They work in two areas, statics and finite element analysis. I can use the delta chart to compare how well certain keywords performed, as compared to the rest of the keywords on keywords and GAthe site — like this the screenshot here. Notice how his branded keywords (mini FEA, minifea, etc) - and in fact, most things related to finite element analysis — do well, but a generic term like “engineering education” — which this site, would seem to want desperately — does not convert at all for FEA goals.

But that’s not all. No, that’s not all. (As the Cat in the Hat might say.) When you are in “compare date range” mode, the green and red bars automatically change to do a date comparison. So notice how referrals (in the screen shot below, which compares media this month with media last month) are just not working as well for this company as they dreferrals delta GAid last month. On the other hand, organic is way up, as a conversion rate. So now they have the context to go drill down and understand why they are “doing better” in organic and “doing worse” in referral. (A bonus for the SEO guy?)

Well anyway, now you have seen one of my favorite charts in GA. Come to NYC and learn more at our training.

Robbin

Wanted: GA Analysts who don’t do Regular Expressions

Friday, May 9th, 2008

Do you do this Regular Expression stuff in Google Analytics? If you don’t, I would really like your help. (Sorry, this is for newbies only.)

I worked with the documentation pros at GA to improve the Help Center documentation on Regular Expressions, but I can no longer look at it through newbie eyes. I still worry that the uninitiated will read and and think, “Huh?” but maybe I am wrong. I wrote another article, but the documentation people said, “Robbin, we think we have enough.” And maybe they are right. (That’s the part that I don’t know.)

So please go to this page in the GA Help Section (if you are new at it), and send me email, telling me how new you are to this, and whether it made enough sense for you to be able to get started with Regular Expressions. Send me email so that others won’t be influenced by your thoughts. Remember, the less you know about this, the more valuable your thoughts are.

Getting ahead with Google Analytics: June 4, 2008 in New York City

Tuesday, April 29th, 2008

double logoHave you ever attended an internet marketing conference that had just one lonely session on Google Analytics? Whenever I’m leading one of these sessions, people always come up to me afterwards and say, “Thanks — how can I learn more about Google Analytics? ” So after hearing this over and over again, we’ve created a day of Google Analytics training. It will be on June 4, in New York City, at the Harvard Club on 35 W. 44th Street.

The event will cover a range of topics in Google Analytics, from analysis to GA tips and tricks, with lots in between. (See the full schedule — and notice that we also have a session on Google AdWords and one on Google Website Optimizer). We’ll also offer implementation sessions, which will be very interactive, so bring your questions and let’s get them answered.

And, since I really hate when people hide the price — it costs $285. You can register now, and even if you have to cancel, we can refund your money in full until 8 days before the event. After that, you can transfer your registration to someone else, if you need to.

The good news about having this at the Harvard Club is that it is an intimate affaire. (OK, not that intimate, your spouse will not feel threatened.) The bad news is that because seating is limited, we really do have to put a cap on the number of people who can sign up. So if you think you’d like to attend, be sure to sign up now. (I know, I know, that’s what everyone says when they have an event. But I so vividly remember trying to go to the eMetrics Summit in 2005 and it was SOLD OUT.)

If you are coming, please feel free to send me email and tell me what you want to learn and what your questions are. I really want everyone who attends to start to get more value out of their Google Analytics — and we can do that best if we include the things you want us to teach about.

Registration Link
Email me your questions

Robbin

Stuff More Than One Value into GA’s User Defined Segment

Thursday, April 17th, 2008

The User Defined Segment Variable in Google Analytics allows us to give each visitor to a site a distinctive label. Member or Non-member, Male or Female, Large or Small. This value is then stored in a cookie called __utmv on the visitors computer. Each time the visitor comes to your site, the Tracking Code checks for a value in that cookie and sends it along with the rest of the data.

The More-Than-One-Value Problem

But sometimes you would like to keep track more than one piece of information in GA’s User Defined Segment. You might want to know when you have a Small Female Non-member or a Large Male Member.

Most of you already know that Google Analytics only gives us one User Defined Variable. At first glance, that isn’t an issue, we can just set our variable to ‘Small/Female’ and now we have more than once piece of information about that visitor, right?

But you don’t always learn every piece of information at the same time. And whenever you set the value of the variable, it overwrites the previous value.

Here is a technique (and the JavaScript) that I have used when I’ve needed to overcome this particular limitation.

How it Works

With the old version of the Tracking Code using urchin.js, we set the variable with:

_utmSetVar('someValue');

And in the new version using ga.js:

pageTracker._setVar('someValue');

But instead of using those, we’re going to use a new function:

superSetVar('someValue');

This function will check to see if the visitor already has ’someValue’ assigned. If the value is already there, the function doesn’t do anything. But if it is not there, it adds this value to the end.

For example, if we set two values in a row with superSetVar:

superSetVar('/eyes=blue');
superSetVar('/hair=blonde');

instead of the second value overwriting the first, and making the User Defined Segment Variable equal to ‘/hair=blonde’, with superSetVar it is equal to ‘/eyes=blue/hair=blonde’.

In this way, we can use the superSetVar function whenever we need to add a piece of information to the User Defined Segment Variable in the __utmv cookie, and each time, the new value gets added to the end.

Naming Conventions

This brings us to some naming conventions. You’ll notice that I’m using the format /name=value for my variables. Aside from helping us visually in the GA reporting interface, and giving us a little something extra to work with when setting up filters, it also assists us in our next task - unsetting a value.
[This naming convention is required in order for everything to work as advertised. However, feel free to alter the code within the super_set_var.js to suit your own needs.]
With the original GA functions, we don’t need to unset our variable, since every time we set a value, it overwrites the previous value — a sort-of built-in unset. So if you have a value of NonMember and later become a Member, the NonMember values gets overwritten and you just end up with ‘Member’. But if you used superSetVar you would end up with something like /status=nonmember/status=member.
Because of this we need to have another function, unSetVar. You could use it like this:

unSetVar('/status=');
superSetVar('/status=member');

The unSetVar finds any instance of ‘/status=something’ and deletes it. So if you wanted to change someone’s eye color:

unSetVar('/eyes='); // clears all /eyes=someColor
superSetVar('/eyes=green'); // adds '/eyes=green' to the end of the __utmv cookie

What value will show up in the reporting interface?
Sometimes figuring out what you’re going to see in the reporting interface is a little tricky. With this method of setting the User Segment Variable, it should work like this:
If the visitor does not have a value already defined, then the first value that you give them will be used.
This means that if you call superSetVar multiple times, the latter values won’t show up, until the user comes back for another session.
However, if the visitor already has a value for the User Defined Segment Variable when they arrive at your site, then that value will be used. If you set additional values, they won’t show up in the GA Reporting Interface until the users next session.

Implementation:

1. Download super_set_var.js

2. Copy it to your web server.

3a. For the new version of the GATC, add the line in bold to your GATC after the call to ga.js, making sure to change the /path/to/super_set_var.js to the location on your webserver where you put that file in step 2:
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type=”text/javascript” src=”/path/to/super_set_var.js”></script>
<script type=”text/javascript”>
var pageTracker = _gat._getTracker(”UA-xxxx-y”);
. . .
</script>

3b. For the old version of the GATC:
<script src="http://www.google-analytics.com/urchin.js"
type="text/javascript"></script>
<script type=”text/javascript” src=”/path/to/super_set_var.js”></script>
<script type=”text/javascript”>
_uacct = “UA-12345-1″;
. . .
</script>

4. Use superSetVar(”/someName=someValue”); wherever you would have used pageTracker._setVar(”someValue”); or _utmSetVar(”someValue”);

Technical Note:
This implementation chooses to set the __utmv cookie with a pageTracker._setVar(’…’); that is associated with a ‘fake’ UA number. You could instead choose to alter the code to write the cookie by hand, or to use a _setVar(’…’); that is associated with the actual UA number for the account.

If you have any comments, improvements, alternatives, etc, please post them below. I’m sure some of you have had the opportunity to do this before, so share any pitfalls you’ve encountered or just tell me why your method is better than mine.

-John

Google Analytics: Worst Titles Ever

Saturday, April 12th, 2008

“Remember,” John McAndrew cautioned as we started a new project for the Association of Corporate Counsel, “The GA titles are deadly.”

This is so true. As much as I love Google Analytics, their report titles and labels just suck. (I hope you guys are listening.)

There are a lot of things GA does right. But if we are going to have an analytics package that is “democratic” — that all the people in the company can use, not just the Web Analyst — we need to have descriptive titles and labels. And they need to be things that the average Joe and Jane can understand. And we have to stop calling the same thing by different words in different places. (If we are going to call paid search “cpc” on the medium report, why do we have “paid” and “unpaid” in another?) Or as one person said to me in the all-day training I did on Monday, “That’s just Google Analytics’ way of tripping us up, right?” And, the sad part was: he was right.

(Here is a little more full disclosure, or maybe credit where credit is due. Back when LunaMetrics became a Google Analytic Authorized Consultant, I started bitching about the GA documentation, for the same reason. “If we have an analytics package for regular people,” I argued, “Shouldn’t we have drop-dead, knock-your-socks off documentation? The kind that everyday people can understand?” And since that time, we are getting there, thanks to Brett and Alden and a lot of other people whose names I don’t know. So all things are possible.)

OK, let’s roll up our sleeves, and just address the Seven Deadly Names and Titles. In reverse order, so that they get worse and worse…

DeadHostname vs Network Locationly Title #7: Network Location vs Hostnames. Some way, we have got to figure out how to indicate that “network location” is the visitor’s ISP and “hostname” is all the URLs that your site goes by in GA. So, for example, “Hostnames” is the report to go to when you want to know if you have subdomains setting cookies, or if some other site has stolen your code and uses it to muddy your analytics. On the other hand, Network Location is the place to go to when you think you might be able to learn what company the visitor came from. (This last part generally only works if the visitor came from a big company, like Toyota or GM, who is their own ISP.)

Deadly Title #6: Top Content. It is ALL content, not just top content.

Deadly Title #5: CPC vs Paid; Organic vs Unpaid. I would love to say, “Can’t we just go with one or the other? Let’s just call it paid search and unpaid search and forget the other stuff here.” Reality is not so easy, though, because this one is not just about titles, it is about cookies. To get less technical than that — this door of opportunity closed years ago. We just have to live with this one, and always remember that cpc means paid search, and organic means unpaid search.

Deadly Title #4: Visitor Loyalty. We have a set of reports called Visitor Loyalty, and then under that we have a specific report called Loyalty, too. So can’t we call the whole set Visitor Loyalty, and then call the report itself Frequency? Because that is what it measures, how many times they came.

Deadly Title #3: Navigation Summary: How visitors found your content. (I am only explaining/complaining about the subtitle, “How visitors found your content.”) This report describes how visitors got from one place on your site to the page you are interested in and where they went next, and NOT how they found your content from outside of your site. “Paths visitors used to get to and from your content” might be a little better.navigation summary

Deadly Title #2: Entrance Paths: Paths visitors used to get to your content. Well, that is just ridiculous, this subtitle is perfect, but it belongs on the Navigation Summary report (Deadly Title #3), not here in Entrance Paths. If you look at an Entrance Paths report, it starts out with *your* content and shows where they went next. In fact, this particular Deadly Title gets an extra point for deadliness, because this isn’t really about Entrance Paths at all: the page you are interested in might not be an entrance page. This is a report about where the visitor went after they looked at your page.

Entrance paths

The Winner!! Deadly Title #1: “Most people visited…” This is arguable the worst label we have in GA. Here you can see it:

most people visited

It is misleading in more than one way (which is why it scored for Deadliest Title.) As I pointed out when I did my loyalty experiments, this set of charts measures visits, not visitors. But using the word “people” gives the impression that it is the other way around.

Even if we pretend that the chart says, “Most visits happened only once,” or some other way to get rid of the word “people,” it would still be misleading. “Most” just describes the bar that is the longest. And it completely obscures how great that chart can be — we have an incredible report that puts visits into buckets of frequency, and then we dumb it down by saying, “Just look at the longest one.”

Robbin