Deprecated: Assigning the return value of new by reference is deprecated in /home/ophir/prusak.com/wp-settings.php on line 512

Deprecated: Assigning the return value of new by reference is deprecated in /home/ophir/prusak.com/wp-settings.php on line 527

Deprecated: Assigning the return value of new by reference is deprecated in /home/ophir/prusak.com/wp-settings.php on line 534

Deprecated: Assigning the return value of new by reference is deprecated in /home/ophir/prusak.com/wp-settings.php on line 570

Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1244

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/ophir/prusak.com/wp-includes/classes.php on line 1442

Strict Standards: Redefining already defined constructor for class wpdb in /home/ophir/prusak.com/wp-includes/wp-db.php on line 308

Deprecated: Assigning the return value of new by reference is deprecated in /home/ophir/prusak.com/wp-includes/cache.php on line 103

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /home/ophir/prusak.com/wp-includes/cache.php on line 431

Deprecated: Assigning the return value of new by reference is deprecated in /home/ophir/prusak.com/wp-includes/query.php on line 61

Deprecated: Assigning the return value of new by reference is deprecated in /home/ophir/prusak.com/wp-includes/theme.php on line 1109

Strict Standards: Declaration of Walker_Comment::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/ophir/prusak.com/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/ophir/prusak.com/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::start_el() should be compatible with Walker::start_el(&$output) in /home/ophir/prusak.com/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::end_el() should be compatible with Walker::end_el(&$output) in /home/ophir/prusak.com/wp-includes/comment-template.php on line 1266

Strict Standards: Redefining already defined constructor for class WP_Dependencies in /home/ophir/prusak.com/wp-includes/class.wp-dependencies.php on line 31

Strict Standards: Redefining already defined constructor for class WP_Http in /home/ophir/prusak.com/wp-includes/http.php on line 61

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/ophir/prusak.com/wp-settings.php:512) in /home/ophir/prusak.com/wp-content/plugins/wordpress-automatic-upgrade/wordpress-automatic-upgrade.php on line 92

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/ophir/prusak.com/wp-settings.php:512) in /home/ophir/prusak.com/wp-content/plugins/wordpress-automatic-upgrade/wordpress-automatic-upgrade.php on line 92

Strict Standards: Redefining already defined constructor for class ftp_base in /home/ophir/prusak.com/wp-content/plugins/wordpress-automatic-upgrade/lib/ftp_class.php on line 56

Strict Standards: Redefining already defined constructor for class ftp in /home/ophir/prusak.com/wp-content/plugins/wordpress-automatic-upgrade/lib/ftp_class_sockets.php on line 8
Does Website Optimizer Append or Merge?

Prusak.com

Online Since 1996

Does Website Optimizer Append or Merge?

Posted by ophir on October 30th, 2008

When running an A/B experiment Google Website Optimizer appends any parameters from the original page when redirecting to one of the test pages.

For example, the original page is index.php and the test page is index2.php.
If a user clicks on index.php?name=fred they will be redirected to index2.php?name=fred

So what happens if the test page URL already has a query parameter in it?

For example, the original page is index.php and the test page URL is index2.php?section=b
What will happen if the user clicks on index.php?section=d ?

About seven months ago I had a client with this exact scenario so I tested it.
The user was directed from index.php?section=d to index2.php?section=b&section=d
I found a work-around and didn’t think about it after that.

A few weeks ago I found out that Google was indeed aware of this “issue” and fixed the GWO code :)
Now GWO will merge the parameters from the two URLs, not just append them. The parameters defined during setup for the test page URL will get precedence over the parameters from the URL the user clicked on.

For example, the original page is index.php and the test page URL is index2.php?section=b
What will now happen if the user clicks on index.php?section=d&cat=22 ?

They’ll be redirected to index.php?section=b&cat=22

This doesn’t effect 99.99% of all A/B tests, but if it does effect you, Google’s fix is a life saver :)

3 Responses to “Does Website Optimizer Append or Merge?”

  1. Chris Goward Says:

    Good to know they fixed that, Ophir!

    Will it merge using Advanced A/B now too?

    Chris

  2. ophir Says:

    Currently Google’s instructions for advanced A/B does not merge.

  3. Fred Says:

    Thanks!!

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>