<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Damon Gudaitis &#187; Web Analytics</title>
	<atom:link href="http://www.damongudaitis.com/cat/analytics/feed" rel="self" type="application/rss+xml" />
	<link>http://www.damongudaitis.com</link>
	<description>Web Content Writing and Optimization: Where Words and Numbers Meet</description>
	<lastBuildDate>Mon, 05 Jul 2010 02:44:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Is Google Analytics Really Under-Reporting Twitter Traffic by 500%?</title>
		<link>http://www.damongudaitis.com/analytics/under-reporting-twitte.html</link>
		<comments>http://www.damongudaitis.com/analytics/under-reporting-twitte.html#comments</comments>
		<pubDate>Sat, 18 Jul 2009 23:35:46 +0000</pubDate>
		<dc:creator>Damon</dc:creator>
				<category><![CDATA[Web Analytics]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://www.damongudaitis.com/?p=339</guid>
		<description><![CDATA[Danny Sullivan has a flawed piece today titled “Is Twitter Sending You 500% To 1600% More Traffic Than You Might Think?” The sensational headline is no doubt good for traffic and his basic information and method is good, but the numbers are way off because he has a miniscule sample size. Google Analytics, and other [...]<p><a href="http://www.damongudaitis.com/analytics/under-reporting-twitte.html">Is Google Analytics Really Under-Reporting Twitter Traffic by 500%?</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></description>
			<content:encoded><![CDATA[<p></p><div id="attachment_340" class="wp-caption aligncenter" style="width: 348px">
	<img class="size-full wp-image-340 " src="http://www.damongudaitis.com/wp-content/uploads/2009/07/twitter-clients.jpg" alt="Twitter Clients" width="348" height="556" />
	<p class="wp-caption-text">Twitter Clients</p>
</div>
<p>Danny Sullivan has a flawed piece today titled “<a href="http://searchengineland.com/is-twitter-sending-you-500-to-1600-more-traffic-than-you-might-think-22696">Is Twitter Sending You 500% To 1600% More Traffic Than You Might Think?</a>” The sensational headline is no doubt good for traffic and his basic information and method is good, but the numbers are way off because he has a miniscule sample size.</p>
<p>Google Analytics, and other analytics tools, misreport Twitter traffic because many Twitter users use desktop clients that don&#8217;t show any referrer data. When these visitors open a link from their Twitter client, they get reported as direct traffic.</p>
<p>Amongst the analytics community there is a debate over how exactly how much traffic gets misreported. <a href="http://tweetstats.com/twitter_stats">Tweet Stats</a> shows 52% (at the time of writing) of visits coming from the web while <a href="http://twitstat.com/churn.html">TwitStats</a> shows just 61% (at the time of writing).</p>
<h3>Danny Sullivan&#8217;s Numbers</h3>
<p>Danny does some testing to see how much direct traffic in Google Analytics actually comes from Twitter.</p>
<p>His method is to tweet a link to a post tagged with tracking parameters. He then compares his properly-reported tagged links against his Google Analytics referrer data and his Bit.ly stats against his log-files to get his numbers.</p>
<p>His final numbers?</p>
<p>Google records 9 visits tagged with the tracking parameters, but just 2 of those come from Twitter (as in the web site) thus under-reporting by 450% (he rounds it to 500%, I&#8217;m cool with that).</p>
<p>Bit.ly records 58 clicks, but there are only 32 tagged visits in his logs. The unaccounted Bit.ly clicks are caused by url-lengthener plugins that request the Bit.ly URL so that someone can see where the shortened URL goes before clicking but don&#8217;t follow the redirect. (<a href="http://bit.ly/">Bit.ly</a> deserves props for being very up-front about the gaps in their data.)</p>
<p>Log-files record 32 visits tagged with tracking parameters, but just 2 of those come from Twitter (according to Google Analytics) thus under-reporting by 1600%.</p>
<p>Google, in response to Danny&#8217;s questions about the differences, says that they are working on some issues caused by mobile devices.</p>
<h3>Reconciling GA&#8217;s and Bit.ly&#8217;s Numbers</h3>
<p>I give Google&#8217;s numbers more credit than Bit.ly&#8217;s.</p>
<p>I get notified every time there is a 404 on one of my sites. I&#8217;ve spent a lot of time investigating, and blocking, strange requests. Digging through log files and discovering all sorts of strangeness has given me a great appreciation for how much crap that Google Analytics blocks out.</p>
<p>There are a ton of bots out there, both malicious and innocent, that can quickly inflate your states. GA catches most of them. As a result, I&#8217;m inclined to believe the GA numbers whenever there is a big discrepancy.</p>
<p>Even with under-reporting caused by issues with mobile devices, I believe Google&#8217;s numbers are closer to the actual numbers than Bit.ly&#8217;s.</p>
<h3>The Numbers in Greater Context</h3>
<p>Danny&#8217;s 500% is in line with TwitStats&#8217;s numbers, and what I would have guessed because I can&#8217;t imagine not using a desktop client. But I&#8217;ve got some pretty good data, from a much larger sample than Danny&#8217;s, that aligns closely with Tweet Stats&#8217;s 52% web visits.</p>
<p>Soon after launching this site, I had a moderately influential Twitterer tweet my post on <a title="Involvement Device CAPTCHA" href="http://www.damongudaitis.com/web-writing/involvement-device-captchas.html">Involvement Device CAPTCHAs</a>, thanks <a href="http://ittybiz.com/">Naomi</a>.</p>
<p>At the time I was getting very little traffic. Out of the traffic to that post on that particlur day (shown below), only 2 pageviews entered from elsewhere on the site and there was no search traffic to that page so the data is relatively unpolluted.</p>
<div id="attachment_341" class="wp-caption aligncenter" style="width: 580px">
	<img class="size-full wp-image-341" src="http://www.damongudaitis.com/wp-content/uploads/2009/07/google-analytics-twitter-stats.png" alt="Google Analytics Twitter Stats" width="580" height="290" />
	<p class="wp-caption-text">Google Analytics Twitter Stats</p>
</div>
<p>The BeTwittered, Netvibes, and TwitterGadget traffic are all functionally Twitter traffic (bonus points to anyone who writes a filter to group all of this traffic together).</p>
<p>I got 45 Twitter visits with referral information (41 actual visits, plus 4 functionally Twitter visits) and no more than 51 direct visits that actually came from Twitter. Because I was just starting up, I was getting practically no direct traffic and I&#8217;d already filtered out my own visits so nearly all, if not all, of these visits actually came from Twitter.</p>
<p>47% of my Twitter visits come from the web and show up in my Google Analytics stats. My Twitter stats are under-reported by about 200%.</p>
<p>It is impossible for this particular post to be under-reported by the 500% that Danny reports simply because all of my direct visits are already presumed (and likely) to be actually from Twitter.</p>
<h3>Explaining the Differences</h3>
<p>Why is there such a big difference between my numbers and Danny&#8217;s?</p>
<p>Here&#8217;s a hint. He&#8217;s only working with 2 Twitter visits in Google Analytics. If he had just one more visit reported in GA, his headline would be 300% to 1000% instead of 500% to 1600%. Compared with my 45 Twitter visits, his sample size is just too small.</p>
<p>Even though my experiment was accidental while Danny did a better job of setting up the experiment by tagging links and comparing tagged values, my larger data set on a page with less noise makes my data better.</p>
<p>The 47% of visits coming from the web on my post is also a lot closer to the TwitStat and Tweet Stats numbers which use an even better sample size.</p>
<p>Photo Credit: <a href="http://thenextweb.com/">The Next Web</a></p>
<p><a href="http://www.damongudaitis.com/analytics/under-reporting-twitte.html">Is Google Analytics Really Under-Reporting Twitter Traffic by 500%?</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.damongudaitis.com/analytics/under-reporting-twitte.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Google Analytics Search Ranking Filters for New URLs</title>
		<link>http://www.damongudaitis.com/analytics/search-ranking-filters-new-urls.html</link>
		<comments>http://www.damongudaitis.com/analytics/search-ranking-filters-new-urls.html#comments</comments>
		<pubDate>Wed, 22 Apr 2009 20:47:38 +0000</pubDate>
		<dc:creator>Damon</dc:creator>
				<category><![CDATA[Web Analytics]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[search ranking]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://www.damongudaitis.com/?p=246</guid>
		<description><![CDATA[Google is starting to add the search ranking directly to the referring URL which means the convoluted search ranking filters I wrote about earlier will soon be obsolete. That&#8217;s good news because now we&#8217;re going to have much better information than before and it&#8217;s going to be easier to get. I quickly took the sample [...]<p><a href="http://www.damongudaitis.com/analytics/search-ranking-filters-new-urls.html">Google Analytics Search Ranking Filters for New URLs</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></description>
			<content:encoded><![CDATA[<p><a class="post_image_link" href="http://www.damongudaitis.com/analytics/search-ranking-filters-new-urls.html" title="Permanent link to Google Analytics Search Ranking Filters for New URLs"><img class="post_image alignnone" src="http://www.damongudaitis.com/wp-content/uploads/2009/04/updated-google-organic.jpg" width="540" height="387" alt="Google Analytics Filter for Updates Google Organic URLs" /></a>
</p><p>Google is starting to add the <a title="Google's URL changes" href="http://www.clickz.com/3633451">search ranking directly to the referring URL</a> which means the convoluted search ranking filters I wrote about earlier will soon be obsolete. That&#8217;s good news because now we&#8217;re going to have much better information than before and it&#8217;s going to be easier to get.</p>
<p>I quickly took the sample query string from the <a href="http://www.clickz.com/3633451">Clickz article</a> and created a set of filters that should give you the exact search ranking in Google Analytics.</p>
<p style="padding-left: 30px;">http://www.google.com/url?sa=t&amp;source=web&amp;ct=res&amp;cd=7&amp;url=http%3A%2F%2Fwww.example.com%2Fmypage.htm&amp;ei=0SjdSa-1N5O8M_qW8dQN&amp;rct=j&amp;q=flowers&amp;usg=AFQjCNHJXSUh7Vw7oubPaO3tZOzz-F-u_w&amp;sig2=X8uCFh6IoPtnwmvGMULQfw</p>
<p>I can&#8217;t test this out because I&#8217;m still getting the old query string, but I&#8217;m confident this will work.</p>
<h3>Setup Instructions</h3>
<h4>Create a Profile for the Filters</h4>
<p>If you need instructions explaining how to do this, have a look at my original <a title="Clean serp report" href="http://www.damongudaitis.com/analytics/serp-report-google-analytics.html">clean SERP report</a> post. I called my new profile Google Search Ranking.</p>
<h4>Filter Organic Traffic</h4>
<p>Create a <strong>Custom</strong> &gt; <strong>Include</strong> filter. Choose <strong>Campaign Medium</strong> for the <strong>Filter Field</strong> and enter <span style="color: #808080;"><strong>organic</strong></span> for the <strong>Filter Pattern</strong>. More detailed instructions are again in my original  <a title="Clean serp report" href="http://www.damongudaitis.com/analytics/serp-report-google-analytics.html">clean SERP report</a> post.</p>
<h4>Filter Old Google Organic URLs</h4>
<div id="attachment_254" class="wp-caption aligncenter" style="width: 540px">
	<img class="size-full wp-image-254" src="http://www.damongudaitis.com/wp-content/uploads/2009/04/updated-google-organic.jpg" alt="New Google Organic Filter" width="540" height="387" />
	<p class="wp-caption-text">New Google Organic Filter</p>
</div>
<p>Google is rolling out the new URL format slowly. That means you&#8217;re going to get a lot of matches with no data if you don&#8217;t filter out the old URLs. As an added bonus, this filter also banishes Yahoo and Live as well, so we won&#8217;t be needing to create a separate filter to get rid of them.</p>
<p>Create a <strong>Custom</strong> &gt; <strong>Include</strong> filter. Select <strong>Referral</strong> for the <strong>Filter Field</strong> and enter <span style="color: #808080;"><strong>google\.[a-z]+/url</strong></span> in the <strong>Filter Pattern</strong> box.</p>
<p>The /url part of the <strong>Filter Pattern</strong> identifies search queries using the new string.</p>
<h4>Output Google Ranking</h4>
<div id="attachment_248" class="wp-caption aligncenter" style="width: 580px">
	<img class="size-full wp-image-248" src="http://www.damongudaitis.com/wp-content/uploads/2009/04/google-ranking.png" alt="Google Ranking Filter" width="580" height="259" />
	<p class="wp-caption-text">Google Ranking Filter</p>
</div>
<ol>
<li>Create a <strong>Custom</strong> &gt; <strong>Advanced</strong> filter.</li>
<li>In the <strong>Field A -&gt; Extract A</strong> area, select <strong>Campaign Term</strong> and enter <span style="color: #808080;"><strong>(.*)</strong></span>.</li>
<li>In the <strong>Field B -&gt; Extract B</strong> area, select <strong>Referral</strong> and enter <span style="color: #808080;"><strong>(\?|&amp;)cd=([^&amp;]*)</strong></span>.</li>
<li>In the <strong>Output to -&gt; Constructor</strong> area, select <strong>User Defined</strong> and enter <span style="color: #808080;"><strong>$A1 | Rank: $B2</strong></span>.</li>
</ol>
<h4>Assign Filter Order</h4>
<p>Make sure the filters are in the order you created them. You can do this in the <strong>Profile Settings</strong> page by clicking on the <strong>Assign Filter Order</strong> link just above the list of filters applied to this profile.</p>
<h3>Viewing the Search Ranking Report</h3>
<p>You can see your data in the <strong>Visitors</strong> &gt; <strong>User Defined</strong> report.</p>
<p>Remember, though, it takes about a day before you start seeing data and there&#8217;s a good chance you won&#8217;t get any visitors using the new query string for awhile so don&#8217;t panic. Yet.</p>
<p><a href="http://www.damongudaitis.com/analytics/search-ranking-filters-new-urls.html">Google Analytics Search Ranking Filters for New URLs</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.damongudaitis.com/analytics/search-ranking-filters-new-urls.html/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Access Google Analytics Event Tracking Before It&#8217;s Enabled</title>
		<link>http://www.damongudaitis.com/analytics/access-event-tracking.html</link>
		<comments>http://www.damongudaitis.com/analytics/access-event-tracking.html#comments</comments>
		<pubDate>Mon, 02 Mar 2009 21:03:01 +0000</pubDate>
		<dc:creator>Damon</dc:creator>
				<category><![CDATA[Web Analytics]]></category>
		<category><![CDATA[Event Tracking]]></category>
		<category><![CDATA[Google Analytics]]></category>

		<guid isPermaLink="false">http://www.damongudaitis.com/?p=191</guid>
		<description><![CDATA[I just started testing some of the features for a WordPress Google Analytics plugin that I&#8217;m working on when I discovered event tracking hadn&#8217;t been enabled for my account. While trying to figure out if there was any way to get in to the event tracking beta, I discovered that you can access the Event [...]<p><a href="http://www.damongudaitis.com/analytics/access-event-tracking.html">Access Google Analytics Event Tracking Before It&#8217;s Enabled</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></description>
			<content:encoded><![CDATA[<p></p><p><span>I just started testing some of the features for a WordPress Google Analytics plugin that I&#8217;m working on when I discovered event tracking hadn&#8217;t been enabled for my account.</span></p>
<p><span>While trying to figure out if there was any way to get in to the event tracking beta, I discovered that you can access the Event Tracking report by typing in analytics/reporting/events as the URL.</span></p>
<p><span>This doesn&#8217;t work if you have more than one account as it defaults to the first account listed alphabetically. If, like me, you have analytics accounts for several different sites under your Google account, then you need to add get the id parameter from the query string to view the correct account.</span></p>
<p><span>To access Google Analytics Event Tracking reports in a multiple account setting:</span></p>
<ol>
<li><span>Go to the Dashboard page for the desired account.</span></li>
<li><span>Find and copy the 7 numbers that make up the id in the query string <em>(id=0000000)</em>. </span></li>
<li>Replace the 0&#8242;s in the following url with your id https://www.google.com/analytics/reporting/events?id=0000000.</li>
</ol>
<p>Done.</p>
<p><img class="size-full wp-image-195" src="http://www.damongudaitis.com/wp-content/uploads/2009/03/event-tracking-overview.png" alt="Event Tracking" width="580" height="188" />Event Tracking</p>
<p>[btbuckets#direct_and_twitter]</p>
<p><a href="http://www.damongudaitis.com/analytics/access-event-tracking.html">Access Google Analytics Event Tracking Before It&#8217;s Enabled</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.damongudaitis.com/analytics/access-event-tracking.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Segmenting the Clean SERP Report in Google Analytics</title>
		<link>http://www.damongudaitis.com/analytics/segmenting-clean-serp-report.html</link>
		<comments>http://www.damongudaitis.com/analytics/segmenting-clean-serp-report.html#comments</comments>
		<pubDate>Wed, 11 Feb 2009 21:57:49 +0000</pubDate>
		<dc:creator>Damon</dc:creator>
				<category><![CDATA[Web Analytics]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[search ranking]]></category>
		<category><![CDATA[segment]]></category>
		<category><![CDATA[serp]]></category>

		<guid isPermaLink="false">http://www.damongudaitis.com/?p=162</guid>
		<description><![CDATA[A few people have asked me about viewing Google, Yahoo, and MSN separately in the Google Analytics search ranking report. At first I recommended creating 3 separate profiles, 1 each for Google, Yahoo, and MSN. But using the Google Analytics custom segments makes a lot more sense because it&#8217;s easier to switch between the 3 [...]<p><a href="http://www.damongudaitis.com/analytics/segmenting-clean-serp-report.html">Segmenting the Clean SERP Report in Google Analytics</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></description>
			<content:encoded><![CDATA[<p><a class="post_image_link" href="http://www.damongudaitis.com/analytics/segmenting-clean-serp-report.html" title="Permanent link to Segmenting the Clean SERP Report in Google Analytics"><img class="post_image alignnone" src="http://www.damongudaitis.com/wp-content/uploads/2009/02/setup-msn.png" width="588" height="292" alt="Google Analytics Custom Report" /></a>
</p><p>A few people have asked me about viewing Google, Yahoo, and MSN separately in the <a href="http://www.damongudaitis.com/analytics/serp-report-google-analytics.html">Google Analytics search ranking report</a>.</p>
<p>At first I recommended creating 3 separate profiles, 1 each for Google, Yahoo, and MSN. But using the Google Analytics custom segments makes a lot more sense because it&#8217;s easier to switch between the 3 when viewing the SERP report and it&#8217;s easier to set up.</p>
<h3>Segmenting the Search Ranking Report</h3>
<ol>
<li>In the <strong>Organic Search Ranking</strong> report, in the <strong>Settings</strong> section of the left menu, select <strong>Advanced Segments</strong>.</li>
<li>In the <strong>Manage Advanced Segments</strong> page, select <strong>Create new custom segment</strong> at the top right of the screen.</li>
<li>From the list of <strong>Dimensions</strong> on the left, open the <strong>Traffic Sources</strong> dimensions and drag <strong>Source</strong> to the <strong>dimension or metric</strong> box.</li>
<li>From the <strong>Condition</strong> box, select <strong>Matches regular expression</strong>. <em><strong>Matches regular expression</strong> is better than <strong>Matches exactly</strong> because <strong>Matches regular expression</strong> lets you enter case insensitive Values.</em></li>
<li>In <strong>Value</strong> enter <span style="color: #808080;"><strong>google</strong></span> or <strong><span style="color: #808080;">yahoo</span></strong>. For MSN create two statements using <strong>Add &#8220;or&#8221; statement</strong> one matching <strong><span style="color: #808080;">msn</span></strong>, the other matching <strong><span style="color: #808080;">live</span></strong>.<em> I&#8217;m surprised you have to do this, but it seems the pipe (|) character doesn&#8217;t work in the custom segment regular expressions. Maybe it&#8217;s because the custom segments already have an or function built in. </em>
<div id="attachment_163" class="wp-caption alignnone" style="width: 529px">
	<em><img class="size-full wp-image-163" src="http://www.damongudaitis.com/wp-content/uploads/2009/02/setup-msn.png" alt="MSN Settings" width="529" height="263" /></em>
	<p class="wp-caption-text">MSN Settings</p>
</div>
<p><em></em></li>
<li>In the <strong>Name segment</strong> box, give your segment a name. Google Traffic seems appropriate.</li>
<li>Repeat for Yahoo and MSN.</li>
</ol>
<h3>Viewing the Segments</h3>
<ol>
<li>Open your <strong>User Defined</strong> report.</li>
<li>In the <strong>Advanced Segments</strong> box at the top right of the page, click to open the <strong>Advanced Segments</strong> dialog.
<p><div id="attachment_164" class="wp-caption alignnone" style="width: 317px">
	<img class="size-full wp-image-164" src="http://www.damongudaitis.com/wp-content/uploads/2009/02/open-segments-dialog.png" alt="Open Advanced Segments" width="317" height="51" />
	<p class="wp-caption-text">Open Advanced Segments</p>
</div></li>
<li>In the <strong>Custom Segments</strong> area, select your Google, Yahoo, and MSN segments and click Apply.
<p><div id="attachment_165" class="wp-caption alignnone" style="width: 160px">
	<img class="size-full wp-image-165" src="http://www.damongudaitis.com/wp-content/uploads/2009/02/select-custom-segments.png" alt="Select Custom Segments" width="160" height="140" />
	<p class="wp-caption-text">Select Custom Segments</p>
</div></li>
</ol>
<p>Your organic traffic will be graphed by search engine and your keywords will be segmented by search engine.</p>
<p>Unfortunately, keywords on different pages will appear multiple times in the report. Anyone got any experience writing Greasemonkey scripts so we can see keywords grouped together with the pages showing after each search engine?</p>
<p>Enjoy.</p>
<p><a href="http://www.damongudaitis.com/analytics/segmenting-clean-serp-report.html">Segmenting the Clean SERP Report in Google Analytics</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.damongudaitis.com/analytics/segmenting-clean-serp-report.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Clean Ranking Report Reloaded</title>
		<link>http://www.damongudaitis.com/analytics/clean-ranking-report-reloaded.html</link>
		<comments>http://www.damongudaitis.com/analytics/clean-ranking-report-reloaded.html#comments</comments>
		<pubDate>Wed, 21 Jan 2009 19:31:06 +0000</pubDate>
		<dc:creator>Damon</dc:creator>
				<category><![CDATA[Web Analytics]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[serps]]></category>
		<category><![CDATA[track search ranking]]></category>

		<guid isPermaLink="false">http://www.damongudaitis.com/?p=78</guid>
		<description><![CDATA[I just updated my original Clean Ranking Report in Google Analytics post fixing and improving a number of things. I still can&#8217;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 [...]<p><a href="http://www.damongudaitis.com/analytics/clean-ranking-report-reloaded.html">Clean Ranking Report Reloaded</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></description>
			<content:encoded><![CDATA[<p></p><p>I just updated my original <a href="http://www.damongudaitis.com/analytics/serp-report-google-analytics.html">Clean Ranking Report in Google Analytics</a> post fixing and improving a number of things.</p>
<p>I still can&#8217;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.</p>
<p>Once I had worked out how to clean up the ranking report, I erased all the unnecessary profiles and filters, so I didn&#8217;t have any way of retracing my work.</p>
<h3>Changes</h3>
<p>I changed the <strong>Search Ranking filter&#8217;s Field A-&gt;Extract A</strong> 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.</p>
<p>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&#8217;t necessarily match the search term.</p>
<p>Of course none of this is set with organic traffic, but it doesn&#8217;t seem like an intuitive place to put this information.</p>
<p>I was having all sorts of trouble getting Google Analytics to match parenthesis. Yes, I know how use the escape character. No, it didn&#8217;t work.</p>
<p>So instead of beating myself over the head, trying to get everything to work with the parenthesis intact, I changed the <strong>Search Ranking filter&#8217;s Output To-&gt;Constructor</strong> 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.</p>
<p>The<strong> Search and Replace filters</strong> 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.</p>
<p><a href="http://www.damongudaitis.com/analytics/clean-ranking-report-reloaded.html">Clean Ranking Report Reloaded</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.damongudaitis.com/analytics/clean-ranking-report-reloaded.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Clean Rankings Report in Google Analytics</title>
		<link>http://www.damongudaitis.com/analytics/serp-report-google-analytics.html</link>
		<comments>http://www.damongudaitis.com/analytics/serp-report-google-analytics.html#comments</comments>
		<pubDate>Wed, 14 Jan 2009 00:40:14 +0000</pubDate>
		<dc:creator>Damon</dc:creator>
				<category><![CDATA[Web Analytics]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[serps]]></category>
		<category><![CDATA[track search ranking]]></category>

		<guid isPermaLink="false">http://www.damongudaitis.com/?p=63</guid>
		<description><![CDATA[Joost de Valk has a post up explaining how to track Google search ranking in Google Analytics. The SEO ranking hack (Dutch) is by Andre Scholten, he guest posted on Yoast for English speakers. I added a comment to the post showing how to use this technique to also track Yahoo and MSN rankings as [...]<p><a href="http://www.damongudaitis.com/analytics/serp-report-google-analytics.html">Clean Rankings Report in Google Analytics</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></description>
			<content:encoded><![CDATA[<p></p><p>Joost de Valk has a post up explaining how to <a href="http://yoast.com/track-seo-rankings-google-analytics/">track Google search ranking in Google Analytics</a>. The <a href="http://andrescholten.nl/index.php/seo-rankings-meten-met-google-analytics/">SEO ranking hack</a> (Dutch) is by Andre Scholten, he guest posted on Yoast for English speakers.</p>
<p>I added a comment to the post showing how to use this technique to also track Yahoo and MSN rankings as well.</p>
<p>But the ranking report diplays page 1 results as unset, (page: ), page 2 results as (page: 10) or (page: 11). SERPs from subsequent pages are similarly awkward.</p>
<p>If you don&#8217;t mind writing a few extra filters, you can display search rankings more intuitively. Here&#8217;s how.</p>
<p style="text-align: center;"><img class="size-full wp-image-73 aligncenter" src="http://www.damongudaitis.com/wp-content/uploads/2009/01/clean-ranking-reportgif.gif" alt="Clean Ranking Report" width="399" height="492" /></p>
<h3>Basic Instructions</h3>
<p>If you are reasonably experienced with Google Analytics, you should be able to get by with the basic instructions. If you are new to Google Analytics, there are very thorough detailed instructions further down the post.</p>
<ol>
<li>Create a profile for your search rankings filters.</li>
<li>Create filters that include only organic traffic and only traffic from Google, Yahoo, MSN, and Live.</li>
<li>Create a <strong>Custom</strong> &gt; <strong>Advanced</strong> filter to extract search engine rankings using the following settings:
<ol>
<li><strong>Field A-&gt; Extract A</strong> from <strong>Campaign Term</strong>: <strong><span style="color: #808080;">(.*)</span></strong></li>
<li><strong>Field B-&gt; Extract B</strong><strong> </strong>from<strong> Referral: </strong><strong><span style="color: #808080;">(\?|&amp;)(start|first|b)=([^&amp;]*)</span></strong></li>
<li><strong>Output To-&gt; Constructor</strong>: <strong><span style="color: #808080;">$A1 | page: $B3</span></strong><strong>.</strong></li>
</ol>
</li>
<li>Create a <strong>Custom</strong> &gt; <strong>Search and Replace</strong> filter to format page 1 results on the <strong>User Defined</strong> field using the following settings:
<ol>
<li><strong>Search String</strong>: <strong><span style="color: #808080;">page:$</span></strong></li>
<li><strong>Replace String</strong>:<strong> </strong><strong><span style="color: #808080;">page: 1</span></strong>.</li>
</ol>
</li>
<li>Create <strong>Custom</strong> &gt; <strong>Search and Replace</strong> filters to format page 2+ results on the <strong>User Defined</strong> field using the following settings:
<ol>
<li><strong>Search String</strong>: <strong><span style="color: #808080;">page: 1[0-1]$</span></strong> for page 2,<span style="color: #808080;"> <strong>page: 2[0-1]$</strong></span> for page 3 etc&#8230;</li>
<li><strong>Replace String</strong>: <strong><span style="color: #808080;">page: 2</span></strong> for page 2, <strong><span style="color: #808080;">page: 3</span></strong> for page 3 etc&#8230;</li>
</ol>
</li>
<li>Check that the <strong>Search and Replace</strong> filters are in numerical order.</li>
</ol>
<p>As you can probably imagine, step 5 can get time-consuming if you are dealing with a lot of sites. I tried number of different arithmetic ways of formatting the results that would have made set up simpler, but none of them worked. Right now, it seems you can&#8217;t perform mathematical manipulation of numbers in Google Analytics.</p>
<p>I couldn&#8217;t figure out any easier way of displaying the SERPS but if you want to experiment yourself, the <strong>Replace String</strong> field from the <strong>Custom</strong> &gt; <strong>Search and Replace</strong> filter requires a valid regular expression and seems more likely to allow basic arithmetic.</p>
<p>If you plan on using this hack, please be sure to write a whiny blog post about how Google Analytics should let you:</p>
<ol>
<li>export profiles to other accounts,</li>
<li>allow filters to perform basic arithmetic,</li>
<li>make this hack standard on all accounts.</li>
</ol>
<p>Maybe if enough of us whine, someone will listen.</p>
<h3>Detailed Instructions</h3>
<p>Careful step-by-step instructions for people who aren&#8217;t very familiar with Google Analytics.</p>
<h4>Create Profile for Search Ranking Filters</h4>
<p>You need to create a separate profile for the search ranking filters because  applying the filters will exclude everyone except for organic search visitors from Google, Yahoo, and MSN.</p>
<ol>
<li>On the <strong>Overview</strong> page, select <strong>Add Website Profile</strong>.</li>
<li>On the <strong>Create New Website Profile</strong> page, select <strong>Add a Profile</strong> for an existing domain.</li>
<li>In the <strong>Select Domain</strong> box, choose the domain you want to track.</li>
<li>In the <strong>Profile Name</strong> box, enter <strong><span style="color: #808080;">Organic Search Rankings</span></strong> (or some similar name).</li>
<li>Enter <strong>Country</strong> and <strong>Time zone</strong> as appropriate.</li>
</ol>
<h4>Filter Organic Traffic</h4>
<p>Include only organic traffic.</p>
<ol>
<li>On the <strong>Overview</strong> page, select <strong>Filter Manager</strong>.</li>
<li>On the <strong>Filter Manager</strong> page, select <strong>Add Filter</strong>.</li>
<li>On the <strong>Create New Filter</strong> page in the<strong> Filter Name</strong> field, enter <strong><span style="color: #808080;">Organic Traffic</span></strong> (or other similarly descriptive name).</li>
<li>From the <strong>Filter Type</strong> box, select <strong>Custom Filter</strong> and choose <strong>Include</strong>.</li>
<li>From the <strong>Filter Field</strong> box, choose <strong>Campaign Medium</strong>. <em>I&#8217;m really surprised that Campaign Medium works here because all the other campaign options refer to PPC and other links that you can tag with traffic parameters.</em></li>
<li>In the <strong>Filter Pattern</strong> box, enter <strong><span style="color: #808080;">organic</span></strong>.</li>
<li>In the <strong>Apply Filter to Website Profiles</strong> area, select <strong>Organic Search Ranking</strong> and click <strong>Add</strong> to apply the filter to the profile.</li>
<li>Click <strong>Save Changes</strong>.</li>
</ol>
<h4>Restrict to Google, Yahoo, and MSN</h4>
<p>Include only the organic visitors from Google, Yahoo, and MSN.</p>
<ol>
<li>On the <strong>Filter Manager</strong> page, select <strong>Add Filter</strong>.</li>
<li>On the <strong>Create New Filter</strong> page in the <strong>Filter Name</strong> field, enter <strong><span style="color: #808080;">Search Engine Visitors</span></strong>.</li>
<li>From the <strong>Filter Type</strong> box, select <strong>Custom Filter</strong> and choose <strong>Include</strong>.</li>
<li>In the <strong>Filter Field</strong> box, choose <strong>Referral</strong>.</li>
<li>In the <strong>Filter Pattern</strong> box, enter <strong><span style="color: #808080;">(google|yahoo|msn|live)\.[a-z]+</span></strong>. <em>This regular expression means</em>
<ol>
<li><em><strong><span style="color: #808080;">(google|yahoo|msn|live)</span></strong> match one of google, yahoo, msn, or live</em></li>
<li><em><strong><span style="color: #808080;">\.</span></strong></em><em> match a literal period (.)</em></li>
<li><em><strong><span style="color: #808080;">[a-z]+</span></strong> match 1 or more lower-case letters (for the TLD).</em></li>
</ol>
</li>
<li>In the <strong>Apply Filter to Website Profiles</strong> area, select <strong>Organic Search Ranking</strong> and click <strong>Add</strong> to apply the filter to the profile.</li>
<li>Click <strong>Save Changes</strong>.</li>
</ol>
<h4>Extract Search Ranking from URLs</h4>
<p>Extract the term and results page parameters from the referring search engine&#8217;s query string and output it to the User Defined report.</p>
<p>Google uses <strong>q</strong> to identify the term and <strong>start</strong> to identify the results page in the query string.</p>
<ul>
<li>Page 1:  <span style="text-decoration: underline;">http://www.google.com/search?client=opera&amp;rls=en&amp;<span style="color: #ff0000;">q=seo</span>&amp;sourceid=opera&amp;ie=utf-8&amp;oe=utf-8</span></li>
<li>Page 2: <span style="text-decoration: underline;">http://www.google.com/search?hl=en&amp;client=opera&amp;rls=en&amp;hs=QB0&amp;<span style="color: #ff0000;">q=seo</span>&amp;<span style="color: #ff0000;">start=10</span>&amp;sa=N</span></li>
<li>Page 3: <span style="text-decoration: underline;">http://www.google.com/search?hl=en&amp;client=opera&amp;rls=en&amp;hs=tB0&amp;<span style="color: #ff0000;">q=seo</span>&amp;<span style="color: #ff0000;">start=20</span>&amp;sa=N</span></li>
</ul>
<p>Yahoo uses <strong>p</strong> to identify the term and <strong>b</strong> to identify the results page in the query string.</p>
<ul>
<li>Page 1:  http://ca.search.yahoo.com/search?<span style="color: #ff0000;">p=seo</span>&amp;fr=yfp-t-501&amp;toggle=1&amp;cop=&amp;ei=UTF-8</li>
<li>Page 2:  http://ca.search.yahoo.com/search?<span style="color: #ff0000;">p=seo</span>&amp;ei=UTF-8&amp;fr=yfp-t-501&amp;xargs=12KPjg1ihSroGmmvmnEOOIMLrcmUsOkZ7Fo5h7DOV5CtdY6hNdE%2DIfXpP0xZg6WO8T7xvSy7HBreVFdJGu277WVk0qfeK%5FGr%5FM6c6Vk9AoNdukWnl3tOJ%5F0%2Dmdm6d%2DDA%2E%2E&amp;pstart=6&amp;<span style="color: #ff0000;">b=11</span></li>
<li>Page 3: http://ca.search.yahoo.com/search?<span style="color: #ff0000;">p=seo</span>&amp;ei=UTF-8&amp;fr=yfp-t-501&amp;xargs=0&amp;pstart=1&amp;<span style="color: #ff0000;">b=21</span></li>
</ul>
<p>MSN uses <strong>q</strong> to identify the term and <strong>first</strong> to identify the results page in the query string.</p>
<ul>
<li>Page 1: http://search.msn.com/results.aspx?<span style="color: #ff0000;">q=seo</span>&amp;FORM=MSNH11</li>
<li>Page 2: http://search.msn.com/results.aspx?<span style="color: #ff0000;">q=seo</span>&amp;<span style="color: #ff0000;">first=11</span>&amp;FORM=PERE</li>
<li>Page 3: http://search.msn.com/results.aspx?<span style="color: #ff0000;">q=seo</span>&amp;<span style="color: #ff0000;">first=21</span>&amp;FORM=PERE2</li>
</ul>
<ol>
<li>On the <strong>Filter Manager</strong> page, select <strong>Add Filter</strong>.</li>
<li>On the <strong>Create New Filter</strong> page in the <strong>Filter Name</strong> field, enter <strong>Search Ranking</strong>.</li>
<li>From the <strong>Filter Type</strong> box, select <strong>Custom Filter</strong> and choose <strong>Advanced</strong>.</li>
<li>In the <strong>Field A-&gt;Extract A</strong> box, select <strong>Campaign Term </strong>and enter <strong><span style="color: #808080;">(.*)</span></strong>.</li>
<li>In the <strong>Field B-&gt;Extract B</strong> box, select <strong>Referral</strong> and enter <strong><span style="color: #808080;">(\?|&amp;)(start|first|b)=([^&amp;]*)</span></strong>.
<ol>
<li><strong><span style="color: #808080;">(\?|&amp;)</span></strong> match <em>either a literal question mark(?) or an ampersand (&amp;)</em></li>
<li><em><strong><span style="color: #808080;">(start|first|b)</span></strong> match one of start, first or b; Google, Yahoo, and MSN use these to identify starting point in search results</em></li>
<li><em><strong><span style="color: #808080;">=</span></strong> match an equals sign (=)</em></li>
<li><em><strong><span style="color: #808080;">([^&amp;]*)</span></strong> match everything until an ampersand (&amp;).</em></li>
</ol>
</li>
<li>In the <strong>Output To-&gt;Constructor</strong> box, select <strong>User Defined</strong> and enter <strong><span style="color: #808080;">$A1 | page: $B3</span></strong>.
<ol>
<li><em><strong><span style="color: #808080;">$A1</span></strong> get the values from the 1st set of parenthesis in the <strong>Field A-&gt; Extract A</strong> box</em></li>
<li><em><strong><span style="color: #808080;">| page: $B3</span></strong> write a pipe character and page followed by the value from the 3rd set of parenthesis in the <strong>Field B-&gt; Extract B</strong> box.</em></li>
</ol>
</li>
<li>In the <strong>Apply Filter to Website Profiles</strong> area, select <strong>Organic Search Ranking</strong> and click <strong>Add</strong> to apply the filter to the profile.</li>
<li>Click <strong>Save Changes</strong>.</li>
</ol>
<h4>Format Page 1 Results</h4>
<p>The query string parameter identifying the results page parameter for Google, Yahoo, and MSN are all unset on the first page, so you need a special rule to format page 1 results.</p>
<ol>
<li>On the <strong>Filter Manager</strong> page, select <strong>Add Filter</strong>.</li>
<li>On the <strong>Create New Filter</strong> page in the <strong>Filter Name</strong> field, enter <strong><span style="color: #808080;">Page 1</span></strong>.</li>
<li>From the <strong>Filter Type</strong> box, select <strong>Custom Filter</strong> and choose <strong>Search and Replace</strong>.</li>
<li>In the <strong>Filter Field </strong>box, select <strong>User Defined</strong>.</li>
<li>In the <strong>Search String</strong> box, enter <strong><span style="color: #808080;">page:$</span></strong>.
<ol>
<li><em>The dollar sign means match page: where it appears at the end of the string. Without it, the filter would match every occurance of page:.</em></li>
</ol>
</li>
<li>In the <strong>Replace String</strong> box, enter <strong><span style="color: #808080;">page: 1</span></strong>.</li>
<li>In the <strong>Apply Filter</strong> area, select <strong>Organic Search Ranking</strong> and click <strong>Add</strong> to apply the filter to the profile.</li>
<li>Click <strong>Save Changes</strong>.</li>
</ol>
<h4>Format Page 2+ Results</h4>
<p>Match results pages starting at result #10 or #11 and change to page 2.</p>
<p>Google starts counting results at 0, so page 2 results start at #10. Yahoo and MSN start at 1, so page 2 results start at #11.</p>
<p>Off topic: you can hand edit the query strings to start anywhere you like letting you put result number 5487 first. So don&#8217;t trust screenshots showing top results in Google &amp; imitators.</p>
<ol>
<li>For every search results page you want to track, on the <strong>Filter Manager</strong> page, select <strong>Add Filter</strong>.</li>
<li>On the <strong>Create New Filter</strong> page in the <strong>Filter Name</strong> field, enter <strong><span style="color: #808080;">Page 2</span></strong> (or 3 for page 3, 4 for page 4 etc&#8230;).</li>
<li>From the <strong>Filter Type</strong> box, select <strong>Custom Filter</strong> and choose <strong>Search and Replace</strong>.</li>
<li>In the <strong>Filter Field</strong> box, choose <strong>User Defined</strong>.</li>
<li>In the <strong>Search String</strong> box, enter <strong><span style="color: #808080;">page: 1[0-1]$ </span></strong>(or <span style="color: #808080;"><strong>page: 2[0-1]$ </strong></span>for page 3, <strong><span style="color: #808080;">page: 3[0-1]$ </span></strong>for page 4 etc&#8230;).
<ol>
<li><strong><em><span style="color: #808080;">page: 1[0-1] </span></em></strong><em>match page 10 or 11</em></li>
<li><strong><em><span style="color: #808080;">$</span></em></strong><em> where it occurs at the end of a line.</em></li>
</ol>
</li>
<li>In the <strong>Replace String</strong> box, enter <strong><span style="color: #808080;">page 2</span></strong> (or <strong><span style="color: #808080;">page 3</span></strong> etc&#8230;).</li>
<li>In the <strong>Apply Filter</strong> area, select <strong>Organic Search Ranking</strong> and click <strong>Add</strong> to apply the filter to the profile.</li>
<li>Click <strong>Save Changes</strong>.</li>
</ol>
<h4>Check Filter Order</h4>
<p>Filters in the wrong order can mess up your results. Of particular concern are results from pages 10 or 11, 20 or 21, 30 or 31 etc&#8230;</p>
<p>Put your <strong>page: x</strong> rules in numerical order. If your page 10 or 11 rules comes before your page 2 rule, then page 10 or 11 results will be converted to <strong>(page: 10)</strong> or <strong>(page: 11)</strong> which will then match page:10 for Google or page: 11 for Yahoo and MSN. These will then be converted to page 2 when they pass through the Page 2 Search and Replace filter messing up your results.</p>
<p>Otherwise, filters are probably fine in any order because they act on different fields, in ways that are not mutually exclusive, or on fields that aren&#8217;t set until they pass through a filter. But I can confirm that the following order works:</p>
<ol>
<li>Organic Traffic</li>
<li>Search Engine Visitors</li>
<li>Search Ranking</li>
<li>Page 1</li>
<li>Page 2</li>
<li>Page 3 etc&#8230;</li>
</ol>
<p>To set filter order:</p>
<ol>
<li>From the <strong>Overview</strong> page, click <strong>Edit</strong> for the <strong>Organic Search Ranking</strong> profile.</li>
<li>On the <strong>Profile Settings: Organic Search Ranking</strong> page, scroll down to the <strong>Filters Applied to Profile</strong> section and click <strong>Assign Filter Order</strong> at the top right of the section.</li>
<li>Adjust filter order as necessary.</li>
<li>Click <strong>Save Changes</strong> to finish.</li>
</ol>
<h4>View the Results</h4>
<p>It takes about a day for Google to update your profile with the new filters.</p>
<p>To view the report:</p>
<ol>
<li>In the <strong>Overview</strong> page, select the <strong>Organic Search Ranking</strong> profile.</li>
<li>In the left sidebar, click <strong>Visitors</strong> to open the menu for all visitors pages.</li>
<li>At the bottom of the list of visitors pages, click <strong>User Defined</strong> to see the results.</li>
</ol>
<p>When you are done with this, you might want to check out my post on <a href="http://www.damongudaitis.com/analytics/segmenting-clean-serp-report.html">segmenting the ranking report by search engine</a>.</p>
<p><a href="http://www.damongudaitis.com/analytics/serp-report-google-analytics.html">Clean Rankings Report in Google Analytics</a> is a post from: <a href="http://www.damongudaitis.com">Damon Gudaitis</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.damongudaitis.com/analytics/serp-report-google-analytics.html/feed</wfw:commentRss>
		<slash:comments>54</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced) (user agent is rejected)

Served from: www.damongudaitis.com @ 2010-09-08 10:39:21 -->