Disclaimer: This website requires JavaScript to function properly. Some features may not work as expected. Please enable JavaScript in your browser settings for the best experience.

The availability of features may depend on your plan type. Contact your Customer Success Manager if you have any questions.

Dev guideRecipesAPI Reference
Dev guideAPI ReferenceUser GuideLegal TermsGitHubDev CommunityOptimizely AcademySubmit a ticketLog In
Dev guide

Introduction

Developer documentation for Optimizely Feature Experimentation.

🚧

Important

Optimizely has recently announced the sunset of the previous version of Feature Experimentation, called Full Stack.

This documentation is for Feature Experimentation.

Feature Experimentation is the default for new projects created after February 2021. Feature Experimentation projects:

For documentation on Full Stack (legacy) projects created before February 2021 or have selected Use Legacy Experience on project creation, refer to the Full Stack portion of the documentation by selecting Full Stack Experimentation in the drop-down list above.

For information, refer to the article on Optimizely Feature Experimentation application migration.

Optimizely Feature Experimentation is a feature flagging and experimentation platform for websites, mobile apps, chatbots, APIs, smart devices, and anything else with a network connection.

You can deploy code behind feature flags, experiment with A/B tests, and use targeted deliveries to roll out or roll back flags immediately. This functionality is available with microsecond performance impact through easy-to-use, open-source SDKs.

📘

Note

Optimizely Rollouts is the free plan for Optimizely Feature Experimentation, designed for startups and teams looking to get started. It comes with free feature flags and the ability to run one A/B test simultaneously.

Sign up for Free Feature Flagging.

Client-side and server-side SDKs

See the following architectural diagram for an overview of Optimizely Feature Experimentation's server-side SDKs:

server side implementation of Feature Experimentation

And the Feature Experimentation client-side SDKs, highlighting the mobile SDKS:

client side implementation of Feature Experimentation

For more detailed diagrams, see Implementation checklist.

Overviews

Review the following resources for an overview of Optimizely Feature Experimentation.

ResourceDescription
Introducing our new flags-first experience7-minute video describing flags and flag rules and how they differ from the older experience of rollouts and feature tests.
Roll out with feature flags60-second, high-level video
Flappy Bird interactive tutorial3-minute interactive gameplay tutorial. Click through the steps to experiment with features in the game.
5 Powerful Capabilities of Optimizely4-minute video explaining key features.

Supported functionality

Feature Experimentation's SDKs are built for developers and support:

  • Feature flags and experimentation – The Optimizely SDK framework natively integrates feature flags and product experimentation, so you can roll features out, roll them back, and continuously iterate your flags by learning from each release.
  • Remote configuration – Update your app in real time without a code deployment. Toggle flags on and off, and even make changes to your experiments while they are running.
  • Low latency – In-memory bucketing means no blocking network requests. Test in performance-critical code paths, secure environments, and more.
  • Real-time results – Optimizely's Stats Engine provides best-in-class statistical modeling and immediate, trustable results without waiting for long, manual data queries.
  • Cross-platform experimentation – Run server-side or client-side on any connected device—mobile apps, websites, TV apps—with consistent bucketing across different languages.

Get started

Learn more about major concepts in Optimizely Feature Experimentation or jump into creating your first experiment:

  1. Use the Quickstarts to install and instantiate the SDK in your code. If you do not want to install an SDK, you can use the JavaScript (Browser) HTML script quickstart method. Or take a look at the SDK reference guides.
  2. Define feature flags that you will use to roll out feature code gradually, make remote configurations, or run experiments. Choose user IDs, target audiences with attributes, track events, and preview flag variations.
  3. Use your feature flag to run A/B tests without deploying code.
  4. Analyze the results of your experiment.

See the SDK reference guides for details about each API method, such as required arguments, return values, and side effects.

See the implementation checklist section for recommendations and considerations when implementing an Optimizely Feature Experimentation SDK.

📘

Note

To build a company-wide experimentation program, consider pairing Optimizely's server-side experimentation product, Optimizely Feature Experimentation, with the client-side experimentation product, Optimizely Web Experimentation. See Optimizely's knowledge base article: Experiment end-to-end with Optimizely Web Experimentation and Optimizely Feature Experimentation.

If you have any questions, contact Optimizely Support or your Customer Success Manager.