Updates to Optimizely Experiments and the Optimizely JavaScript Library

Updated as of 11:56 pm PT 6/5/2014

We’re launching three new settings to give you more control of your JavaScript file. Read more in our latest post.

Updated as of 5:39 pm PT 6/4/2014

Here is a little more detail on the changes we are making to allow you to manage what information is included in the Optimizely JavaScript library. There will be three changes:

  • an option to change descriptive names to numerical IDs for experiments, variations, goals, and audiences;
  • an option to exclude paused and draft experiments; and
  • an option to turn off the ability to force a variation to render.

We expect these changes to be available in your Optimizely account settings very soon, and will update this blog post as soon as they are.

Original post on 6/3/2014

Optimizely uses a client-side JavaScript code snippet to load all of your experiments. This makes our product simple to use, fast to load, and easy to integrate with third-party tools. (Technically the snippet loads your experiment information by referencing a JavaScript library where all of your experiment information is stored.)

Recently we’ve seen some questions about how visible the experiment information contained in the JavaScript library is, and we wanted to share our answers here.

JavaScript, a language used by most websites and many platforms, including Optimizely, is inherently transparent. This means that information stored in it is visible to anyone who uses “view source code” in the browser. Among other things, Optimizely stores your experiment name, variation names, goal names, and audience names in the Optimizely JavaScript library. In order to make integrations with third-party tools (like analytics platforms) simpler for our customers, we chose to use the same name that you see in the Optimizely dashboard in the JavaScript library. You can find more details about Optimizely’s JavaScript API and all the information stored in it our developer documentation.

To be very clear, experiment results and your account information are never available in the Optimizely JavaScript library; results are always password protected in your account. However, we recognize that some customers may prefer that their experiment and variation names not be visible in source code, even if it makes integrations with third-party tools a little bit harder.

To address this concern, our engineering team is working on an option for customers to mask Optimizely experiment, variation, goal, and audience names in the Optimizely JavaScript library. We expect this to be available very soon and will update this blog post as soon as we have specific timing.

Please feel free to contact us by emailing support@optimizely.com if you have any questions about this issue. Thank you.