This article will help you:
  • Integrate Amplitude to read data from Optimizely
  • See reporting on Optimizely experiments in Amplitude

If you use Amplitude analytics to track user actions in your app, you can include Optimizely experiment and variation names directly into Amplitude reports. Optimizely will automatically populate an Amplitude User Property to all events triggered for a particular user. Measure the impact of your experiments by segmenting your Amplitude funnels, retention, etc. by variations your users were exposed to.

Prerequisites

  • The latest Optimizely SDK must be installed.
  • The latest version of the Amplitude SDK must be installed.

Installation Instructions

  1. Locate API Keys
  2. Initialize Amplitude and Optimizely SDKs in code AppDelegate (iOS) or MainActivity (Android)
  3. Enable Amplitude in Optimizely.

Locating your API keys

  1. To find your app’s Amplitude API Key, you must login and proceed to your Account Settings page in Amplitude. You will find the API key listed next to your app’s name, as shown below. 
  2. To generate an Optimizely API Key, log into your Optimizely Account with Administrator permissions and generate an API Token.

Integration Setup

After both the Optimizely and Amplitude SDKs are both installed and you have your API Keys available, you simply call these functions in your app’s AppDelegate with the API Keys inserted.  As of v1.4 of the Optimizely iOS SDK, the activateLocalyticsIntegration call is not required.  The order of these functions is important, so be sure to call them as follows:

[Amplitude initializeApiKey:@"AMPLITUDE_API_KEY"];

[Optimizely startOptimizelyWithAPIToken:@"OPTIMIZELY_API_KEY" launchOptions:launchOptions];

// The next line of code is only required for versions of the Optimizely SDK 1.3.2 and below
[Optimizely activateAmplitudeIntegration];

 

Once the integration is set up, Amplitude will automatically set user properties in the form of [Optimizely] {ExperimentName} : {VariationName} when the user has visited a given experiment.

Android users will need to add the gradle dependency:

dependencies { 
    compile('com.optimizely:amplitudeintegration:+@aar') 
}
 

Enable Amplitude Integration in Optimizely

To enable the Amplitude integration, go to the Integrations tab on the Home page. Select Amplitude and toggle the button to ON.

View Optimizely data in Amplitude

Once you start your experiment from Optimizely, data being returned should become available to Amplitude within minutes.

To segment by your Optimizely experimental groups in Amplitude, simply use the Segmentation sidebar to add your experimental groups. The name of the User Property is the name of the experiment prefixed with “[Optimizely]” and the values are your variation names. (i.e. “[Optimizely] {Experiment Name}”: “{Variation Name}”)


Below is an example of using Amplitude to evaluate the funnel conversion rate differences between Variation A and Variation B of an experiment.


 

You can also view the impact of an experiment on user retention, as seen below.