The Optimizely Blog
The Optimizely Blog

A/B Testing You'll Actually Use

Search

June 22nd, 7:23pm 19 comments

Optimizely Open-Sources Guiders.js, a Library to Help You Guide New Users

Today we’re open-sourcing a JavaScript library for visually enhancing your web application with guiders, available at https://github.com/jeff-optimizely/Guiders-JS.

A guider is a dialog box that guides a user through your application.  This improves the user experience of a web application by visually introducing the user to important features.  Enough text, let’s show you what we mean.  Here are a couple examples:


This example guider is not attached to any element and has an overlay between it and the page.


Screen_shot_2011-06-22_at_6

An example guider attached to the "Add Variation" button in Optimizely.


Guiders can be attached to an element on your web page, or they can be centered on their own.  Attaching a guider to an element on your page is as simple as using the appropriate jQuery selector and a position value 1-12.  The position value determines which direction the guider attaches to the element, according to the numbers on an analog clock.  For example, the following guider is attached with a position value of 2.


Two_oclock_guider

Developers can attach a guider to an element on their web page at any of the clock positions.

The motivation for guiders on our web app was to ease new users in to the service.  Optimizely offers website A/B testing software-as-a-service.  New visitors can try the service with either a 30 day free trial, or by testing it out without even registering.  Rather than drop new visitors into the editor on their own, we wanted the ability to take them on a guided tour of the product.  So we implemented a series of guiders to introduce visitors to the application.  You can see it by entering a URL on the Optimizely homepage and clicking the call-to-action button.

We ran an A/B test using guiders on Optimizely.  Half of the traffic saw guiders upon first use, the other half didn't.  One of our goals, user engagement, saw a statistically significant increase with guiders.  This makes sense since the guided tour causes users to click something on the page.  Another of our goals was triggered upon successful user registration.  We've seen an increase in that goal too, however at this point in time the increase is not statistically significant enough for us to declare it a success.

The Guiders library can also be used to introduce new features to existing customers.  For example, Google Apps often uses promo dialogs in this way.


Promo_gmail

Example of a promo dialog in Gmail.  The Guiders library can be used for these, too.

You can check out Optimizely and Guiders right now by clicking this direct link to the Optimizely editor.  A link to the start the "Guided tour" is in the top right corner.  Enjoy!

Posted by Jeff Pickhardt

Comments (19)

Jun 22, 2011
AbhimanyuG said...
WOW, Looks awesome. I'm gonna give it a try right now.
Jun 22, 2011
snakie said...
Looks awesome and really useful!

But from what I've seen at demo page -- is there some way to prevent a tip from being partially invisible? If the tip is connected to element that is close to the viewport/screen/browser window border, a piece of tip is extended beyond the visible area.

Jun 22, 2011
AbhimanyuG said...
Just FYI, It doesn't work with jQuery 1.4.x.
Jun 22, 2011
Dan Siroker said...
AbhimanyuG, thanks for the heads up. We'll investigate and see if we can get it working with jQuery 1.4.x!
Jun 22, 2011
Jeff Pickhardt said...
Yep, there was a bug with old versions of jQuery. It's fixed now. You can redownload the project if jQuery 1.4.x is important for your application.
Jun 23, 2011
jacobespa said...
Thanks for sharing! I hope to put this in our webapp soon.
Jun 24, 2011
seanodotcom said...
Straightforward to use, and looks good... except in IE. Even v9. Fix coming? Thanks.
Jun 24, 2011
Jeff Pickhardt said...
It should work fine in IE. I just checked it again to confirm. You might want to check, if you're running the README.html file locally, that you've allowed scripts to run. By default, IE doesn't let local html files execute JavaScript.

I also made a few minor css changes for IE <= 8, to make it look better. You won't have some fancier styles like rounded corners or gradients in IE <= 8, but it'll still look pretty and be functional.

Jun 26, 2011
dttg said...
Awesome
Jun 27, 2011
nanoxi said...
Looks good, we will give a try to it
Jun 28, 2011
AbhimanyuG said...
We've deployed this in our new startup: http://testcollab.com and now it seems we're 10x more user friendlier than before.
Jun 28, 2011
Jeff Pickhardt said...
Awesome! Can I get in the private beta to check it out? -> jeff+pickhardt@optimizely.com  :)
Jul 11, 2011
hsamarin said...
Great tool...one question I couldn't glean the answer to. What happens if one of the features we want a user to "try" within the glider tour is on a separate page vs. a modal actions from the page the glider tour is initiated? Does the glider tour re-engage on the forwarding page or is this tech limited to one page with modal features?
Jul 11, 2011
Jeff Pickhardt said...
@hsamarin - Good question.

You'd implement guiders on both pages, then route them from the first page to the second page with a hash tag such as #guider=second.

If you download the source code, there are some comments in README.html that explain this further.

Jul 16, 2011
AbhimanyuG said...
@Jeff just sent you the access via email. Let me know if you didn't get it.
Jul 16, 2011
abailiss said...
Awesome plugin. Cheers :-)!
Jul 28, 2011
yipbit said...
I noticed that the plugin does not work for a fluid template. I logged a bug at github, but was wondering if you had any insight.
Jul 28, 2011
Jeff Pickhardt said...
@yipbit -- I just replied on GitHub. The Guiders.js library checks the element's live position before attaching, however version 1.1.1 has a new offset option that may also help if it's not positioning right for you.
Sep 02, 2011
brechtify said...
I just downloaded this and I am psyched. I've been wanting to offer a free trial of my SAAS product but it's a financial data product that is somewhat technical/dry so users typically commit (pay) and then go through a user guide etc before they stick. I'm going to use this to implement a guided free trial period. The readme.html file and code is so dead simple. Thank you!

Leave a comment...