Architecture update: leaner, meaner and faster A/B tests

Posted in A/B Split Testing, News on April 5th, 2010

In our mission to be the best A/B testing platform on earth, we have recently updated Visual Website Optimizer architecture. This blog post updates what has changed and why.

Prelude: phasing out of optional page tagging code

In addition to tag-less testing which required no code changes, VWO had optional code for people who liked to tag their pages with code (like other free testing tools). As we all know it, tagging is frustrating, cumbersome and error-prone. So, we have dropped it all together from VWO. No user used this feature and it only created confusion.

Meaner: multiple tests on a SINGLE page possible now

Until now you could run only one test per page. While this is the way it should actually be, some advanced users ran a site wide test (for example, on footer or sidebar) and then they wanted to test a specific page also. With old architecture, one could run only one test per page so VWO only ran the most recent test on that specific page. The old architecture also meant that if one of the site pages is a test goal, you couldn’t run a different test on that page. This was especially frustrating to users who ran multiple A/B tests across their funnels.

But ALL this has changed. You can now run multiple tests on a single page or run tests on a page which is a conversion goal for a different test. A note of warning: we actually discourage multiple tests on a single page because it jeopardizes statistical significance of those tests. It is best to avoid such a condition.

Faster: asynchronous content loading

Now onwards, the content of test variations will be loaded asynchronously without stalling browser. This means while VWO is fetching variation content, browser can keep loading your rest of the page. This feature will make the tests noticeably faster, especially if you had lots of content in your variations.

Leaner: 10% smaller JavaScript code

We used Google’s excellent Closure Compiler to shorten the code by 10%. The current size of shortened, gzipped code stands at about 26.5 KB. Most of this code is JQuery, which VWO uses quite heavily (because it so awesome!).

Smaller JavaScript file means less data to download for your visitors and hence faster tests.

Overall Thoughts

We are committed to faster loading tests for your visitors. Every millisecond of delay frustrates visitors and we perfectly understand the importance of page load time for your business. Rest assured our engineers are fanatics about optimization (in all senses of the word). Do let us know your feedback on the updates and if you have any ideas/suggestions on making the test loading even faster.

Tags

4 Comments
Niyaz
April 5, 2010

Any specific reason for not taking JQuery from the Google servers?

Paras Chopra
April 5, 2010

JQuery is tightly coupled with the app and the namespace is different too. So, we can’t use it from a different server, independently of our code.

Parag Arora
April 6, 2010

js/jquery-1.3.2.min.js
to http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js

Decrease latency, increase parallelism and use better caching for probably already cached jquery file client side. Just try to change and see the change if any comes if you currently are not hosted on any other cdn.

Eric Clemmons
April 11, 2010

I agree what jQuery is awesome, but I do wonder what the weight of the code would be w/o jQuery? Or, at the very least, we could trim down jQuery to just the essentials needed for the A/B testing.

Leave a comment
Required
Required - not published

Notify me of followup comments via e-mail.

RSS feed for comments on this post. TrackBack URL

Stay up to date

Latest Posts

Latest Tweets

Send us a message, quickly!

Your Name

Your Email

Your Message

Or, contact us through email info@wingify.com