Google experiments A/B test Variant links don't work - google-analytics

I want to test two landing pages in Google experiments,
However each time I run the test all of the links on the variant B page redirect back to variant B rather than going to the correct URL. The original page is working as it should.
Any ideas as to why this might be happening?

The experiment javascript code should only be put in he 'original' variant. Not on all pages, otherwise links in the variant will keep redirecting to itself.

Related

I'm unable to run experiments accross subdomains using Universal Analytics

I'm currently running an experiment without redirect, using Google Analytics, but I'm running in some issues.
The case
I work for a company that has two websites, with two separate brands, selling the same product. Today, we are plaining a merge of the brands, one of the reasons being the low costs of maintanance.
To see how this would affect sales, we are doing an a/b test. The test consists of changing the logo of the sites, and displaying an information about the merge of brands in the variant. The original is the website without changes.
We have some requirements to do it:
We use a CMS that has no support to the Google Analytics Experiment tag (we get some errors when we install it to the , and are unable to run it)
We need to run it through all pages of our websites. We have also a subdomain in each site, that the user is redirected to place an order.
We doesn't have time to wait for the experiment to end for itself. So, we came up with the idea to track the rejection and sales using a duplicate pageview with "/variant" in the url and in the title.
To do that, I used the Content Experiments without redirects, with the Google Tag Manager.
Configuration of the Experiment
In Google Tag Manager, I load the Content Experiment Javascript API and define the choosenVariation variable in all pages of both websites and subdirectories.
I track the "gtm.load" event, to see when the page finished loading all elements and change the DOM in three ways: changing the logo, adding the content about the merge and add an item to the main menu. All of this, through Javascript.
Along with the changes of the DOM, I add a datalayer called VirtualPageView, and pass the corresponding url with "/variant" and the title with "Variant".
When the datalayer fires, I send a new Pageview with the variant information.
The problem
The experiment is running right, but when a user gets the B variant of the experiment and procceed to a subdomain of our websites to place an order, it seems that it's somehow running another test, and happens to the user get the A variation.
We are trying to persist the original session and the client Id through the domain and subdomain, in order to the user that saw the different logo, continue in his way to order.
I saw this page about Running Experiments across Subdomains, but its about the Classic Analytics and the classic experiment, and we are using the Universal Analytics with the Content Experiment without redirects.
I don't know if my explanation was clear enough, so if someone have doubts, please ask me. I don't have a profound knowledge of Google Analytics or the Content Experiments either. So, if you have a better way to do this, please, tell me.
I came up with a solution to our problem. We agreed to use the experiment only in the pages of the main domain, so I can change the content otherwise in the pages of the subdomain:
When a user visits our main domain, through Google Tag Manager, I created a cookie that says what the result of the variation chosen for the user (0 for the original and 1 for the variation).
When this user goes to our subdomain to place an order, still via GTM I check the cookie to see its value. If its equal to 1 (a variation), I change the logo and the menu, according to our previous configuration, and I send a virtual pageview to help us check the data.
Until now, this is working properly.

Google Analytics Experiments - Bypassing A/B Test

I'm running an A/B test on a landing page using Google Analytics' Experiments feature (Universal Analytics). Is it possible to bypass the experiment and always show the original version of the page, though a query string added to the URL or some other similar method?
I'm imagining it being something like site.com/landing-page/?experiment=disabled, but I haven't come across anything in the documentation.
If you append the utm_expid code generated to the experiment page you want to view, it will bypass the redirect.
For example: www.example.com/index.html?utm_expid=121130413-11.qQUH2leXTuCxQsqdgxk9Rw.1 would always return the first page in the experiment.

Google Analytics Content Experiments: Possible to setup Variations for Multiple Pages at once?

I've recently learned about the new Google Analytics Content Experiments which looks interesting. ( http://analytics.blogspot.nl/2012/06/helping-to-create-better-websites.html )
The standard usecase seems to be that for a certain page, say a product detail page, you supply variations (different urls) and select a percentage of users that are included in the test. Such a user will be presented a variation of the product-detail page (and will continue to be presented the same variation over and over for continuation/ux reasons, based on cookies presumably) .
All fine and good.
However, say I have 100 products on my site. Just testing a variation on 1 of those products has imho the following disadvantages:
slow progressing tests because of lower nr of visitors.
the test isn't isolated. I.e: since other product detail pages aren't included in the test, displaying a variation-page for 1 product-detail page while all other product-detail pages show the original can (will) lead to a confusing experience (and thus skewed conversion statistics) for the user that browses multiple products, which most of them do.
To me it seems far better to be able to dynamically include all products of a certain type into the same test (e.g: all TV's) , for example by enabling to set some regular expression or other filter on urls to include in the test.
Is such a thing possible currently, scheduled, useful, or completely missing the point?
EDIT
Part of the solution seems to be "relative urls"
https://support.google.com/analytics/bin/answer.py?hl=en&answer=2664470
Taking the previous example one step further, we can see how the use
of relative URLs lets you easily run an experiment on a set of
different original pages, and test visual alternatives across that
group of pages (e.g., the product pages in an e-commerce site).
Remaining question: How to dynamically tag which pages belong to the experiment (e.g: based on regex)
Thanks.
The solution is to use relative url for the variation page.
E.g. you have a number of product pages:
www.mysite.com/products/eggs.html
www.mysite.com/products/cheese.html
www.mysite.com/products/bread.html
etc.
For each page you have a matching variation page:
www.mysite.com/products/eggs.html?var=bigpicture
www.mysite.com/products/cheese.html?var=bigpicture
www.mysite.com/products/bread.html?var=bigpicture
etc.
You want to use all the product pages in 1 experiment.
Go To google Analytics Content Experiments:
For the orginal page choose ONE of the many product pages (e.g. www.mysite.com/products/eggs.html) (This is just to get the experiment code and provide GA with an example page)
For the variation page choose relative url and put ?var=bigpicture
Then place the javascript required for the experiment on ALL the original product pages you want in the experiment
For more information see: http://support.google.com/analytics/bin/answer.py?hl=en&answer=2664470&topic=1745208&ctx=topic
Use the Javascript API as described here:
https://developers.google.com/analytics/devguides/collection/gajs/experiments#pro-server
You can set the experimentid programmatically in your code, on every page. Of course you need first to create the experiment in GA, in doing so provide GA fake urls for each variation, discard the GA generated code, ignore the validation errors.
And just use the experimentid as described in the link above.
OK, so a solution to this is:
Create experiment.
Chose a placeholder url for your original url. Something like www.example.com/products/eggs. Set variations as relative urls eg ?var=large_heading, ?var=small_price
Have some mechanism on the server-side which determines if the current user is part of the experiment. A simple cookie is good enough. If this cookie is present show a variation of the page.
If the user visits a product page but isn't in an experiment then show the javascript given when you created an experiment.
Add something to your product page which checks for the querystring var=[something]. When detected show the appropriate variation as well as setting the cookie which tells marks the user as being in an experiment.
You can hack around the JavaScript that Google gives you to make this a bit easier. Something like:
var variation = utmx('variation_code', 'A/B');
if (variation) { set_a_cookie(variation); }
utmx('url', 'A/B');
This is largely cribbed from the GWO Techie Guide. http://static.googleusercontent.com/external_content/untrusted_dlcp/www.google.com/en//websiteoptimizer/techieguide.pdf
There is also a way to the A/B testing with GA without experiment API if you really want to keep things simple. The idea behind it is to create your own split parameter and than you can pass it to GA as a custom variable. So you can yous your own development tools to differentiate the content in the groups and you don't have to use redirect. Here is a simple tutorial how to do this: link.
I recently implemented a GA experiment to test out different text on a nav bar across many pages. This is what worked for me:
Set up the experiment in GA for a single page. E.g. index.html and
index.html?var=menu2.
Implement the solution across multiple pages. Specifically,
insert the GA experiment code in all the pages
that you want to run
the test. Then ensure that your page(s) can render the page
variation based on the parameter passed. My php code went something
like this: If var=menu2, display page with menu2; otherwise,
display original menu.

Like button incorrectly reports zero likes for some pages

On a fairly simple website, all of the user-facing pages have the Facebook like button on them, using the iframe embed method. Thing is, on some of the pages the like count is always reported as 0; on other pages, the like count is reported correctly. This is particularly odd, given that the working and non-working pages share the same page template, and therefore have the same code.
So far, I have:
Used the FB Lint tool to confirm that the non-working pages validate correctly with no errors
Confirmed that the og:url tag is pointing to the correct URL for the page
Confirmed that the Like button actually works (liked content shows up on FB)
Confirmed (via the query API) that FB actually is counting the likes, and that the likes are >0
Confirmed that the issue seems to be page-specific; in other words, the like button always fails on the same pages, and always works on the same pages
Anyone know what might be causing this?

Will Googlebot follow _escaped_fragment_ HTTP redirect?

I have an ajaxified website, and I want all my content to be crawlable. I have a photo gallery, which only loads the photo using ajax, without refreshing the whole page. My root URL is this:
http://mysite/photos
and whenever a photo thumbnail is clicked, it displays the photo, and hash becomes #!/photo/photoid/phototitle, or when you are searching for a criteria, it becomes #!/photos/f-number/1.8/iso/640 e.g. for searching for photos with f/1.8 at ISO 640 (and more criteria can be appended this way). When a user opens up a URL like http://mysite/photos/#!/photos/f-number/1.8/iso/640 the landing page, using a javascript, will redirect the user to http://mysite/photos/f-number/1.8/iso/640 (without the hashbang), and again, there, the page loads http://mysite/Dynamic/PhotoThumbnails.aspx?f-number=1.8&iso=640 using ajax (yes, javascript looks at the location path and parses it according to that format). For the first case (link of a photo itself rather than a search), using again, only javascript, the page loads the photo itself (along with some extra tables showing technical info about photo) from the url http://mysite/Dynamic/RenderPhoto.aspx?ID=123 (where 123 the ID of the photo).
Given this information, my problem is simple: I am planning to (on my masterpage load event) redirect all requests with _escaped_fragment_s to the appropriate RenderPhoto or PhotoThumbnails page, by parsing the _escaped_fragment_ at server side. Will that work? My main concerns are;
Will Google follow the HTTP redirect? (301 or 302)
Will I get into any trouble (such as being removed from index) as I am not showing the exact same content to Google? (a browser will load a side mavigation bar, and all those fancy css styles visually-nice-looking page etc. and then load the real content into a pane at that page, where Google will be getting the "true" content only. My base page, sidebar content thumbnail list page, and photo renderer are COMPLETELY different pages which implement their OWN logic, so I cannot ever merge them)
If there is a risk of being removed due to the reasons above, what are my alternatives (no, I cannot merge the pages, it is NOT an option)? Do you recommend taking regular snapshots of pages and cache them and sending those to Googlebot?
Here is the current BETA of my website (yeah I know about lots of bugs), just to give you the idea how it will work: http://canpoyrazoglu.com/photos
I'm on ASP.NET 4.0, and using jQuery, if it helps.
A new answer to an old question. Yes it will follow it. However you may end up with both the clean and #! URLs. However, check this out (from Google Developer Guides):
Note that if you use a permanent (301) redirect, the url shown in our
search results will typically be the target of the redirect, whereas
if a temporary (302) redirect is used, we'll typically show the #! url
in search results.
This is the Google Developer Guide link:
https://developers.google.com/webmasters/ajax-crawling/docs/faq#redirects
Yes, I'm pretty sure it will follow a redirect. The Facebook open graph debugger does, and this blog post advocates implementing redirects: http://www.yearofmoo.com/2012/11/angularjs-and-seo.html

Resources