Clean Ranking Report Reloaded

I just updated my original Clean Ranking Report in Google Analytics post fixing and improving a number of things. I still

Tweet This

Written by Damon on January 21, 2009

I just updated my original Clean Ranking Report in Google Analytics post fixing and improving a number of things.

I still can’t figure out how I messed up in the first place, but I figure it must have been because I was running about 6 different test profiles trying different ways of cleaning up the report. I must have gotten them mixed up somehow because I know I had it working.

Once I had worked out how to clean up the ranking report, I erased all the unnecessary profiles and filters, so I didn’t have any way of retracing my work.


I changed the Search Ranking filter’s Field A->Extract A to use Campaign Term instead of Referral. The search terms from the Campaign Term field look a lot prettier than those from the Referral field.

I was really surprised this worked because Campaign Term is also used to track PPC bid terms. If you are using broad match in your PPC campaign then your bid term won’t necessarily match the search term.

Of course none of this is set with organic traffic, but it doesn’t seem like an intuitive place to put this information.

I was having all sorts of trouble getting Google Analytics to match parenthesis. Yes, I know how use the escape character. No, it didn’t work.

So instead of beating myself over the head, trying to get everything to work with the parenthesis intact, I changed the Search Ranking filter’s Output To->Constructor to get rid of the parenthesis. This makes formatting later a lot easier and, if you really want to see the page number in parenthesis, you can probably add them back in with your Search and Replace filters.

The Search and Replace filters are completely revamped. Not only do they work now, but I also got rid of some unnecessary characters. I also used Google-friendly end of string anchors in my regular expressions which might not have any benefit to you, but they match more efficiently saving processing power.

6 replies to “Clean Ranking Report Reloaded

  1. Post Author Damon


    Presuming you used the same names for the filters as I detailed in my original, and now updated, post on clean ranking report, make the following changes:

    Search Ranking Filter
    -Change Field A->Extract A fromReferral to Campaign Term
    -Change Field A->Extract A from (?|&)(q|p)=([^&]*) to (.*)
    -Change Output To->Constructor from $A3 (page: $B3) to $A1 | page: $B3

    Page 1 Filter
    -Change Search String from (page: ) to page:$
    -Change Replace String from (page: 1) to page: 1

    Page 2+ Filters
    -Change Search String from page 1([0-1])) to page: 1[0-1]$
    -Change Replace String from page 2) to page: 2

    Of course you will need to increment the first number in both the search and replace strings for the subsequent pages .


  2. robert anghel

    hi there,

    thank you for the fine specifications. i have implemented them and i get results.
    i have though one interesting result:
    – the filter says that one of the keywords are shown both on the first and on the second page. when i google that keyword it appears on the second page.

    i would like to understand why is that, and how could i have a real report.

    thank you


  3. Post Author Damon

    @robert anghel

    There are a number of good reasons for your result.

    1. My filters combine Google, Yahoo, and MSN/Live into one report.

    If you want to separate the results, then create separate profiles for each of Google, Yahoo, and MSN rankings.

    Then instead of the Search Engine Visitors filter, create 3 filters using google.[a-z]+ for Google, yahoo.[a-z]+ for Yahoo, and (live|msn).[a-z]+ for MSN as your filter pattern for each profile.

    All the other filters can remain the same.

    2. Local search results. Search results change based on the location of the searcher. Even if you do the above filter, you should expect to see some discrepencies.


Leave a Reply

Your email address will not be published. Required fields are marked *