Upcoming LunaMetrics Seminars
Los Angeles - Anaheim, Sep 8-12 Washington DC, Sep 22-26 Boston, Oct 6-10 Chicago, Oct 20-24

Funnel Problems in Google Analytics




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.

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:

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

Jonathan Weber

About Jonathan Weber

Jonathan Weber is the Data Evangelist at LunaMetrics. He spreads the principles of analytics through our training seminars all over the East coast. The next seminar he'll be leading will be a Google Analytics training in Boston. Before he caught the analytics bug, he worked in information architecture. He holds a Master’s degree from the University of Pittsburgh School of Information Sciences. Jonathan’s breadth of knowledge – from statistics to analysis to library science – is somewhat overwhelming.

http://www.lunametrics.com/blog/2008/06/25/funnel-problems-google-analytics/

65 Responses to “Funnel Problems in Google Analytics”

Excelent Jonathan!

Google Analytics really have a lot of undocumented behaviours. Maybe someone should start to write a “Guide” with all these ones. Sure it will help many GA users around the world :D

Thanks!
Leo

Jeff Staub says:

Great post, thanks for the insights.

My confidence in the Funnel Visualization report has been shaken after reading this bit:

“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.”

Why in the world would they go to the trouble to do this? Even if it is no trouble at all why do it?

Jonathan says:

Hi Jeff,

I think the rationale behind the funnel backfilling is that for many funnels (like a standard shopping cart), they’re a sequence of steps and a visitor has to go through every one to get to the end. In that case, it’s inconceivable that someone could actually skip a step, since there’s no way to get to step 3 without going through step 2. Google Analytics assumes that there’s a measurement error and “corrects” the data.

Unfortunately, I can think of lots of examples (and I’m sure you can, too) where a funnel has the possibility of skipping steps in a completely rational way. In that case, you’re right, the Funnel Visualization report isn’t much help to you — what you really want to know is, how many people skipped from step 1 to step 3, but there’s no way to find that out currently with the data that GA reports.

Jeff Hogg says:

Funnel visualization is something that has been stumping me lately, thanks for the detailed information.

What might the problem be in a four step funnel that is showing all people entering into the final step for a 100% conversion rate? When I look into the reverse visualization it looks like everyone is going through the steps (/cart/view>>/cart/billing_and_shipping>>/cart/shipping_method>>order/XXX/complete) but all “entered” on the goal page. This is a simple solution, right?

Jonathan says:

@Jeff — Is it possible that there’s a missing step in your funnel between /cart/shipping_method and order/XXX/complete? If, for example, someone gets a sign-in page or confirmation page or something else that’s a page that doesn’t appear in your funnel right before your goal step, they’ll all appear to enter the funnel at the goal page.

Jonathan says:

Two additional followup suggestions:

@Jeff Staub — One report available that I didn’t mention that might help you out in understand people who “skip” steps in a funnel is the Reverse Goal Path report. It lists the last few pages people visited before the goal page (up to five, I believe). They’re not limited to the pages you define in the funnel; whichever pages visitors went to before the goal. The report is kind of ugly and hard to read, but there is some additional information there you can’t get from the Funnel Visualization report.

@Jeff Hogg — Another suggestion that my colleague John here at LunaMetrics made was to check the Match Type you’re using in your goal (Head Match, Exact Match, or Regular Expression), then take a careful look at the exact URLs of your funnel pages and the values you’ve put into the funnel steps to make sure they’re actually matching. If the funnel page expressions don’t match, but the goal page does, that would be an explanation for your 100% entry at the goal page.

Jonathan says:

This comment seems to have evaporated into the ether somewhere, so I’m posting it (and a response below):

Very Good Jonathan!

I got that problem (100% conversion across steps). I read the negative lookaheads post but I am not whether I got it right…

Would we sort problem out if we use the following reg expressions:

Step 1: (?=/user)
Step 2: (?=/user/registerentry)
Step 3: (?=/user/register)

?

Thanks again,
Luciano.

You’re on the right track, but that’s not quite what you’re looking for. What you want to do is, match the first part of the URL (“/user”) ONLY IF it’s not followed by the second part (“/register”). In that case, you want something like this:

Step 1: /user(?!/register)
Step 2: /user/registerentry
Step 3: /user/register(?!entry)

These use a *negative* lookahead (?!) which says, don’t match if this is what follows. Also note that you must have Regular Expression set as the match type to use these expressions.

Great post Jonathan, very informative.

You wrote “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.”

One question: does GA looks the same for each step? For example, if I have a step that reloads if the user does not fill required information, will I see two views on this step or only one?

Thank you very much.

Jonathan says:

@Daniel –

Although it’s not entirely clear from the way the report is labeled, the numbers in the Funnel Visualization report are numbers of visitors, not numbers of pageviews. So if there are reloads or a visitor goes to the same funnel page more than once, they’ll still only be counted once in this report.

Bhagawat says:

Hi Jonathan,

Great post! I was in trouble regarding GA goal setting and I got this link from one of my friend. I am greatful to her and you too.

I am facing the same problems whatever you have mentioned above.

I want to ask you that one little confirmation about goal setting.

My current funnel steps are as follows :

Step1: ^/purchase\.php
Step2: ^/purchase\.php\?shipping
Step3: ^/purchase\.php\?billing
Goal : ^/purchase\.php\?confirm

and I have modified by it by as follows :

Step1 : ^/purchase\.php(?!(shipping|billing))
Step2 : ^/purchase\.php\?(?=shipping)
Step3 : ^/purchase\.php\?(?=billing)
Goal : ^/purchase\.php\?(?=confirm)

Any thoughts on this please!

Thanks,
Bhagawat.

Jonathan says:

@Bhagawat –
You’re on the right track, but that’s not quite right.
Step 1: ^/purchase\.php(?!(shipping|billing|confirm)) < -- you also want to exclude the goal step here ("confirm")
Step 2: ^/purchase\.php\?shipping
Step 3: ^/purchase\.php\?billing
Goal: ^/purchase\.php\?confirm < -- none of steps 2, 3, or the goal need a lookahead because they don't match the others anyway

Gerrin says:

Just to clarify, we aren’t required to define every step in our funnel definition, right? By designating a “required step” we should see data from any path that went through this step…even if we haven’t specifically defined every step in our funnel. The reason I ask is that we’ve gotten some odd data thus far :( Thanks!

Daniel says:

Great post

We’re looking at the abandon rate of the shopping cart on an ecommerce site for a client. I set up 3 different goals as there are 3 different ways through the cart:
1)New customer
2)Existing customer
3)Fast check out.

Each one has different steps but they all start from the same page, “login.php” and end at the “checkout_success.php” page. I have set up in the funnel reports and used “required step” to differentiate between them. The problem I have is as the end page is the same for all of them my conversion rate is triple what it actually is. Is there any way around this?

many thanks in advance

Dan

Jonathan says:

Gerrin –

If there are pages in your goal process that you don’t define as funnel steps, you’ll see visitors exit from the funnel to those pages and then re-enter the funnel at the next step you’ve defined that the visitor reaches. (I’m assuming that you’ve got Google Analytics tracking code on all the pages, including the ones you don’t have defined as part of the funnel — if not, your results will be different.)

Jonathan says:

Daniel –

Since all three of your goals have the same goal page, the overall goal conversion rate will be triple your actual conversion rate. There’s no way around this aside from differentiating the goal page. You’d have to do this on the back end of your site — for example, you could use a query parameter and have “checkout_success.php?type=new”, “checkout_success.php?type=existing”, “checkout_success.php?type=fast”. Then you could differentiate the goal page among the different kinds of checkout and get a fuller picture of the different conversion rates.

Seeds says:

Great article! I was lookin for the answer to what happens if users skip a step in the funnel. Now I understand it completely.

Tammy Ablan says:

This is a great information! I think I’ve read it over 10+ times. Can you confirm whether or not I’ve got the hang of using negative lookaheads with funnels.

There are 5 steps in the funnel. The final goal is when they reach the ‘/visit’ page. My original funnel was setup as follows, which incorrectly produced 100% conversion across all steps (only showed exits from the first step)

/createwebsite
/createwebsite/profile
/createwebsite/website
/createwebsite/template
/createwebsite/privacy

CHANGED TO USED NEGATIVE LOOKAHEAD:
/createwebsite(?!(/profile|/website|/template|/privacy))
/createwebsite/profile
/createwebsite/website
/createwebsite/template
/createwebsite/privacy

Is this correct way? I really appreciate any help you can provide.

Jonathan says:

Tammy — that looks good! One thing I’m not sure about is you mentioned the final goal step is “/visit”, but did you mean it’s like the others and “/createwebsite/visit”? If that’s the case, you’ll want to add it to your negative lookahead in step 1 as well. You can also save some keystrokes by moving the slash outside the lookahead:

/createwebsite/(?!(profile|website|template|privacy|visit))

Tammy Ablan says:

I thought I would have received an email when you replied. I was actually re-reading something from the article and I saw your response!

Thanks for the tip on putting the ‘/’ outside the lookahead. I ended up adding a virtual/fake pageview to our welcome message that displays only when a new website is creaetd (/createwebsite/welcome). The first step was modified to include it in the lookahead. The /visit didnt’t work because we have millions of users visiting personal CaringBridge websites – so the overal Goal Conversions were inflated.

Things are working very well. The only remaining thing I’m tracking down is why we get what appears to be strange entrances into some of the funnel steps. I get that Google looks at the entire visitor’s session, but it still looks strange …

Rob Smith says:

Great post – helped me a lot thanks Jonathan

Tammy Ablan says:

Hi Jonathan, you responded to a previous post:

@Daniel –

Although it’s not entirely clear from the way the report is labeled, the numbers in the Funnel Visualization report are numbers of visitors, not numbers of pageviews. So if there are reloads or a visitor goes to the same funnel page more than once, they’ll still only be counted once in this report.

If a page is reloaed due to an error, will the report track an exit and entrance to that step? My funnel report is showing exits to the same step and I’m trying to figure is due to page errors …

Thanks!
Tammy

Wonderful article — thank you so much for writing this, best explanation of funnels I’ve been able to locate.

I noticed in many of the examples above, the character ? is used without a preceding escape slash — however I noticed the google help advises including an escape slash before each ? as it is a special character in regular expressions:

http://www.google.com/support/analytics/bin/answer.py?hl=en&answer=55582

Just wanted to make sure I’m understanding this correctly. Are the escape slashes omitted in the examples because they are assumed to be exact or head matches rather than regex matches?

Jonathan says:

Kathryn — Those question marks you see aren’t intended as literal question marks in a URL, they’re what’s called a “lookahead” in regular expressions. Unfortunately, since this post was written, lookaheads in Google Analytics regular expressions have been temporarily (I hope?) disabled.

If you have an actual ? in your URL, like this:

http://www.example.com/index.html?param=yes&blah=true

Then yes, to match that using a regular expression, you absolutely need to backslash-escape it: \?

Chris says:

Johnathan – I suffer from the 100% exit the first step problem and it seems to be because all the pages begin with “/shop/”. I am interested in learning more about the negative lookaheads to see if they can solve my problem; however, later in the funnel, many of the pages begin “/shop/checkout/”. In theory, will the funnel work if insert the negative lookahead for the next steps for each step of the funnel?

Also, for the exits, not everyone shows up in the table (17 are missing) – do you know the reason for this and how I can find where the missing 17 went?

I appreciate it.

Rob says:

My goals are tracking, but I cannot get the funnel visual report to work. I’ve tried several things but nothing produces results. Has anyone else had this problem?

Rob says:

One more question: I have a search and replace filter on my site that cleans up dynamic URL’s so that they can be easily read in reports. The filter removes the dynamic portion after the question mark in the URL and replaces it with nothing. This is very useful – the search portion of the filter looks like this: ^([^\?]+)\?.*

Can anyone explain to me what ^([^\?]+)\?.* actually means? I’ve done alot of reading about RegEx, but I can’t understand the first part, in particular ^([^\?]+).

Robbin says:

Rob, there may be easier or different ways to do this, but it means, I believe, start at the beginning of the request URI, match everything that is not a question mark until you get to a real question mark, after which, match everything.

The specific part you asked about meant, match everything that is a not a question mark.

WRT your funnel question, you probably have to add a little more detail, and Jonathan will be a good one to answer when he is back on Monday. He is the Funnel Pro.

Hans says:

Quick question:
You wrote “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.”

Can I conclude from this that if a visitor repeats the funnel in a next visit (not the same day) it will be counted as another conversion? I’m trying to clear up a debate at our office whether the funnel report is displaying Unique visitor metrics (which would imply that for any reporting period a maximum of one conversion would be counted for every visitor)

Thanks!

Jonathan says:

Hans — Yes, goals and funnels are reports on visits, not visitors. If a visitor repeats a conversion on a subsequent visit, it gets counted again. (The text “X visitors finished” on the funnel report is REALLY misleading.)

Fraser says:

Hi Jonathan,

This post has been an incredible resource for identifying just what’s happening with the goals and funnels that I set up in Google Analytics. Thank you for taking the time to share the insight.

Question for you about a regular expression I’m trying to use for my goals.

I am using Facebook Connect, Twitter oAuth, etc. as sign in options. Each one returns a slightly different url that looks like:

mydomain.com/signup/differentTOKEN

As a step in the analytics funnel I am using this regular expression to try to capture anyone who advances to that step:

/signup/.+

However, it looks like this is not functioning correctly within the funnels (I have 3 different ones set up for different paths).

Any idea what I could be doing wrong? When I enter that regular expression into the Top Content section it filters the pages and the ‘correct’ ones are shown.

Any help is greatly appreciated!

Fraser

nivi says:

hi,

I face a similar scenario in the funnels where all the steps after a particular step have the same numbers and no fallouts.

However I use headmatch for URL matching.

could anything be happening there?

Ivan says:

Hi Jonathan,

Thank you for the post, that exactly what I was looking for. One question though, why something like this doesn’t work:

/product/$
/product/step1
/product/step2

Goal URL: /product/complete

If you search for “/product/$” in the top content report it will only return “/product/” page and not “/product/step1″, “/product/step2″ or “/product/complete”.

Robbin says:

If you search for /product/$ in the top content report, that’s like saying, search for all pages that have /product/ in them but don’t have anything after the second slash. You force the Google analytics to exclude those other examples. That is what the dollar sign does, it says, “end here.”

Mark says:

What happens if a visitor makes more than one conversion/purchase per visit?

Say they buy something, complete the transaction process and then decide they want to buy something else.

Will that be counted as one conversion or two within the same visit?

Robbin says:

In the example you gave, that will be treated like one conversion.

Bob says:

Thanks, this really helped me!

Doug says:

yes, thank you for answering a few questions for me. I have searched for a coupel days and still not found a clear answer for this one, so perhaps oyu can help me (or someone)

we have a conversion flow where some of the pages are the same for different funnels:

FUNNEL 1
pageA -> pageB -> pageC -> pageD(goal)

FUNNEL 2
pageA -> pageX -> pageC -> pageZ(goal)

my question is, both funnels converge again on pageC – will this affect funnel counts? that is, will i see cumulative numbers for dropoff from pageC on both funnels?

Jonathan says:

Doug — Yes, even with if you check the “required first step”, in this case, the first step is the same. So you’re going to see aggregate numbers for both funnels for pageA and pageC since those are shared between both funnels. In Funnel 1, you’ll see funnel exits to pageX and pageZ in Funnel 2, and vice versa.

Angela says:

I’ve used this post before as a reference… it’s great stuff!

Question about funnel conversion rate though:

I understand why GA’s Goal Conversion Rate could be higher than the Funnel Conversion Rate (which shows up at left above the funnel), because the Goal Conversion Rate counts all visits to the goal page, while Funnel Conversion Rate counts only visits that got to the goal from a set of previous steps.

I however have a site with the opposite problem: the Funnel Conversion Rate is higher than the Goal Conversion Rate. What’s up with that? As an example day’s stats, Goal #1 Conversion Rate was 7.72%, but the Funnel Conversion Rate for that same goal was 16.23%. Ugh!

Arturas says:

Hello Jonathan,

I am having issues with setting up a correct funnel and was wondering if you could help me:
Lets say we have multiple categories and subcategories like this:

http://www.example.com/AVI-category1/subcategory1
http://www.example.com/AVI-category2/subcategory2

As the first funnel step I’d like to capture all the visitors that to any category page or subcategory page and I am using
expression ^AVI (every URI that starts with http://www.example.com/AVI should match or I am not getting this?) and was thinking it should match, but it does not work, could you guide what might be wrong?

Jonathan says:

Angela: Both the numerator and the denominator in these fractions can be different, so really it can go either way.

Goal conversion rate is (total number of visits that reached the goal page) / (total number of visits) x 100%

Funnel conversion rate is (total number of visits that reached the goal page *through the funnel*) / (total number of entrances to the funnel) x 100%

Jonathan says:

Arturas: You’ve got the right idea, but remember the URL always includes the slash. So you want ^/AVI, not just ^AVI. Try that and see if it fixes your problem.

Reiner says:

Hello, First of all, thanks for another great and helpful post!

To make things a bit easier, please imagine an Ecommerce-Site with one product, coming in two versions A and B. Choosing one product version on the product page leads to the order process that consists of two pages (mostly forms). Such:
1. product page
2. either “order page 1 of variation A” or “order page 1 of variation B”
3. either “order page 2 of variation A” or “order page 2 of variation B”
4. Add to cart (going from cart to checkout is another funnel)

The shop system uses the same URL across all product and order pages. To create funnels I have to add names to these pages in trackpageview to obtain URLs which I can use for funnels (don’t wont to go for event tracking in that case).

To create a funnel I have two options: either I set an individual name to each order page, or I set the same name to order page 1 across both product versions (and the same for order page 2). In the first case I could create a funnel per product version, in the latter case I would obtain only one funnel per product (combining all variations). I tend to create a funnel per variation but also (in another profile) would like to analyse the product across its versions.

Is there any way I can create a funnel in which e.g. step one consists of either “order page 1 for version A” OR “order page 1 for version B”, e.g. done with regexes?

Thn

Jonathan Weber Jonathan says:

Reiner — as long as both funnels have the same number of steps (as your example does), yes, you can create a funnel in which each step is “path A” OR “path B”.

The character that means OR in regular expressions is the vertical bar, |. So you basically just say /path-a/step-1/|/path-b/step-1/ for step 1, /path-a/step-2/|/path-b/step-2/ for step 2, etc.

Reiner says:

Jonathan, Thanks for your prompt reply which helps me a lot!

A question regarding Daniel’s question (September 2008). Given these single steps are called by some kind of “Next”-button. Wouldn’t it be an alternative to add an onevent to these buttons which set individual names for the goal-page? These pagenames could be used then to create unique goals-pages. (Let aside the problem that this would inflate the pageviews)?

cristina says:

I have a shopping cart that i want to follow and the funnel:

Step 1 (Shopping cart)-> Step 2 (Sipping) -> Step 3 (Billing) -> Goal (Purchase)

I would like to know more exactly how does analytics counts the following sequence:

Step 1 -> Step 2 -> Log in (leave the funnel)> Step 1 -> Step 3 -> Step 3 -> Purchase

I am wondering if, for Step 1, Analytics considers it abandonment or not, when i leave the step to login?

Thanks!

Hi Jonathan, a great post, but I have one issue which I hope you could explain.

I’m working on a huge site with long journeys, how would I go about adding regex’s so that I don’t track the same data for each step:

Step 1: /www/Same 1/Same 2/Page 1
Step 2: /www/Same 1/Same 2/Page 1/Page 2
Step 3: /www/Same 1/Same 2/Page 1/Page 2/Page 3
Goal: /www/Same 1/Same 2/Page 1/Page 2/Page 3/Page 4

I was thinking something like this:

Step 1: /www/Same 1/Same 2/Page 1(?!(Page 2|Page 3|Page 4))
Step 2: /www/Same 1/Same 2/Page 1/Page 2(?!(Page 3|Page 4))
Step 3: /www/Same 1/Same 2/Page 1/Page 2/Page 3(?!(Page 4))
Goal: /www/Same 1/Same 2/Page 1/Page 2/Page 3/Page 4

I would really appreciate your thoughts.

Thanks.

Robbin says:

Jens, that used to work. But then they took away negative lookahead. I would suggest that you end each regex with a dollar sign, like this: /www/Same 1/Same 2/Page 1/Page 2$ — so that it can’t match to the pages further in the funnel. BTW, this would be a great contribution to my post on google analytics friendly design….

Jonathan Weber Jonathan says:

Reiner — Yes, you can certainly use virtual pageviews as goals or funnel steps. If for some reason you can’t differentiate the actual URLs, this is a decent workaround.

Cristina — If you have optional steps in your funnel, I would just leave them out. GA won’t show an exit and a re-entry for those, basically you show up leaving the funnel at the “lowest” place you got to in the steps (or achieving the goal, if you got all the way to the end). You can check the Top Content report to understand the use of the optional pages, but putting them in the funnel doesn’t really tell you anything.

Jens — As Robbin said, lookaheads (with ?!) no longer work in GA. The dollar sign is a good solution for those URLs, however.

Rick says:

The negative lookaheads would have been perfect for what I need to do… are there alternatives? What I’m trying to do is add a funnel step which filters any URLs except one. E.g. urls not containing “/subdirectory1/”. Any ideas????

Jonathan Weber Jonathan says:

Rick — Unfortunately, that’s exactly what lookaheads do, and I can’t really think of another pattern that would work for you in this case.

Monty says:

Thanks Jonathan for this long-running thread!

Question on a non-working, but simple, regex. I’m trying to add funnels to a simple subscription flow, as follows:

Match type: regular expression match
Goal: funnel_G1/success

Step 1: not_logged_in_main_landing
Step 2: users/new

the Step 1 and Goal appear to be working fine (these are urls for the same main page, rewritten using an argument to _trackPageview).

However, the funnel report shows users coming into step 1, then exiting to “/www.foobar.com/users/new” — and entering the goal step from “/www.foobar.com/users/new”.

Any idea why our Step 2 might not be matching? I thought with regex we were fine matching any part of the url.

Jonathan Weber Jonathan says:

Monty — There are a variety of reasons why sometimes you see everyone exit and then re-enter. They could be related to the regular expressions — try those out in the filter at the bottom of the Top Content report and make sure you are ONLY matching the URLs you want for that step. If not, you may need to make them more specific.

Alternatively, sometimes it has to do with a code issue on the site and visitor’s cookies getting lost. If visitors change domains or subdomains (without setting those up properly in your Google Analytics code) or if the code on the final page isn’t set up the same way as the rest of the site, these can be causes.

Hope that gives you a few places to investigate.

Michele says:

The problem I am having is that everyone ‘leaves’ after a particular step becasue we are using regex matching. But despite your examples I can’t figure out how to add to the step to keep track of them all. Here is the list of steps. 100% of the users ‘leave’ after Step 4 but at least 1/2 of them really are going on to the Step 5 url but it is not being tracked as being Step 5. Also the “Goal” has an order number in it but I thought that would be ok as it is a regex match, is that correct?

Step 1: /cover-editor/
Step 2: /Sign-In/
Step 3: /My-Covers/?ProjectId
Step 4: /Cart/
Step 5: /Cart/screen/registeraccount/checkout/true/
Step 6: /Cart/screen/checkoutshipping/dontupdateid/true/
Step 7: /Cart/screen/checkoutpayment/
Step 8: /Cart/screen/checkoutreview/paymentmethod/CreditCard/
Goal: /Cart/screen/orderconfirmation/ordernumber/100163/paymentmethod/CreditCard/

Webmaster says:

@Michele — someone from LunaMetrics answered this question on the GA forum, right? If not here is the link
http://www.google.com/support/forum/p/Google+Analytics/thread?tid=0a43159610e34441&hl=en

Steffen says:

Hey there
Excellent article. Very helpful. However,I’m having similar problems as desribed in the final example. I can’t setup my funnel correctly, as step 2+3 shows the exact same numbers as the final step 5 (the confirmation page).
I’ve tried asking for help in the GA forum (http://www.google.com/support/forum/p/Google+Analytics/thread?tid=6029d0ac4e9c91d4&hl=en), but no response. Maybe you’ll be able to point me in the right direction to solve the problem.
Here is an overview of the check-out at my site:

Step 1: /page1061.aspx
Step 2: /page1061.aspx?isbasket=1&pageid=1061&listid=-300050&orgorderid=0&action=order
Step 3: /page1061.aspx?isbasket=1&pageid=1061&listid=-300050&orgorderid=0&action=send
Step 4: (external pay window)
Step 5: /kvittering?ordrenr=54017575&rid=42822 (where “54017575&rid=42822″ is unique for every order).

Thank you.

Wow Jonathan -This post turned into regex support forum!

Here’s something else: I got a problem where there’s a mismatch between the nr of goals in the goal report and the nr of goals in the funnel report.

Goal report shows 200 goals but the last step of the funnel report shows 180?!

I don’t understand how these can be different since the goal and the last funnel step is the same URL when entered in the goal/funnel setup.

Have you had this happen to you?

Jonathan Weber Jonathan Weber says:

Hi CC — the usual reason you see a different number of overall goal conversions and people reaching the last step in the funnel is that you have the “required step” checkbox checked in your goal setup. If you mark the first step as required, the funnel report (and only the funnel report) will only show visits that went through that first step, and not include any visits that entered at a later step.

Meghan Powers says:

Hello!
Do you know if the funnel visualization reports use visits or unique visits?
Thank you!

Marco says:

Great Info – wish Ga would expand their explanations – we have a shopping cart process where the URL is the same, but the parameters change – having trouble setting this up to work in GA – is it possible – for example Step 1 URL = /Cart/ Step 2 = /Cart/?step=shipping Step 3 = /Cart/?step=payment…

Rahul says:

Hello Jonathan/Anybody else,
Thanks for this brilliant article.

I have been troubled by this thing for some time.
In my funnel visualization report i see some direct entrances to the order confirmation pages. Some of these are marked as ‘(entrance)’.
I assume this means direct entrances from some 3rd party page.
How can such direct entrances happen to confirmation page? Would visiting a third party page just after my order confirmation page and then pressing the back button, count as a direct entrance from a 3rd party site?

(Note : Order Confirmation Page acts as my goal page.)

Looking forward to your reply!

Thanks in advance! :)

Gleyce says:

Hi Jonathan
We have three different conversion paths depending on whether the user is logged in, logged out or not registered:
cart > payment > verification > confirmation (goal)
cart > login > payment > verification > confirmation (goal)
cart > login > form > form 2 > payment > verification > confirmation (goal)
To make it worse, login can be used by anybody not in the conversion path…

I need to setup different funnels for these paths to analyse steps drop outs. Any suggestions?

PS: I am totally addicted to your blog! Thank you so much for sharing your knowledge.

Ondrej says:

Dear Jonathan,
your article helps so much but I´m still little bit stuck since funnel visualization doesn´t work
Step 1 (index page): ^/$
Step 2 (pages formular.php plus some options): ^/formular\.php.*

Goal: /dekujeme.php

What did I wrong?

Thanks for your advice

After wasting several hours on the analytics support pages I stumbled upon this post in which I found my exact problem with funnel visualizations. Forgot to use the regex $. Thanks a lot!

A.P. says:

Hey Jonathan,

I’ve been using the funnel visualization report with great success for quite a while. Until sometime around June. We went through a redesign, I recreated the funnels with the new URLs, and ever since I’ve only seen exit info on the first step. All the rest of the steps show no entrances, no exits. It’s much like your example above, but my question is just if something changed with GA. I never used regular expressions in my steps before and didn’t have this problem. I’m testing your suggestions in a test profile right now, but my funnels are lengthy and specific and I’m not getting data very quickly. Any insights would be much appreciated!