The Amplitude integration is a bi-directional integration that enables the automatic tracking of events from Amplitude to Taplytics and the ability to push Experiment and Feature Flag data from Taplytics back into Amplitude.

On the newer versions of our Mobile SDKs, we are now sending Experiment and Feature Flag data as user properties! See the Taplytics to Amplitude section for more details.


Amplitude to Taplytics

The Amplitude integration allows you to leverage the same client-side events being sent from your App for Goal Creation on the Taplytics platform. These events will automatically flow into Taplytics and will be visible in the Code Event dropdown. For more information on goal creation, please see here.

571

Taplytics to Amplitude

The Taplytics SDK can automatically push Experiment and Feature Flag data back to your Amplitude instance so that you may continue reporting on your desired analytics platform.

To enable this feature, turn on the Amplitude toggle in the Push Experiments to Analytics Sources section located at the bottom of the Settings page.

1166

Android

On version 2.9.0 or above of the Taplytics Android SDK, Taplytics will send experiment/variation data to the Amplitude Android SDK as a user property called TL_Experiments. The new user property will contain an array of strings in the format:

["Experiment 1":"Variation3", "Experiment 2": "Variation 9", ...]

On version 2.8.3 and below of the Taplytics Android SDK, Taplytics logs experiment/variation events to the Amplitude Android SDK as follows:

HashMap<String, String> experimentsAndVariations = new HashMap<>();
experimentsAndVariations.put("Experiment 1", "Variation 1");
experimentsAndVariations.put("Experiment 2", "Variation 3");

Amplitude.getInstance().logEvent("TL_Experiments", experimentsAndVariations)

iOS

On version 2.52.0 or above of the Taplytics iOS SDK, Taplytics will send experiment/variation data to the Amplitude Android SDK as a user property called TL_Experiments. The new user property will contain an array of strings in the format:

["Experiment 1":"Variation3", "Experiment 2": "Variation 9", ...]

If you'd like to log them as an event with event properties instead of setting user properties, add the TaplyticsOptionAmplitudeExpsAsEvents start option on version 2.52.0+.

[Taplytics startTaplyticsAPIKey:@"SDK_KEY" options:@{
    TaplyticsOptionAmplitudeExpsAsEvents: @YES
}];
Taplytics.startAPIKey("SDK_KEY", options: [
    TaplyticsOptionAmplitudeExpsAsEvents: true
])

On version 2.51.2 and below of the Taplytics iOS SDK or if you've enabled the TaplyticsOptionAmplitudeExpsAsEvents start option, Taplytics will send experiment/variation data as events to the Amplitude iOS SDK as follows:

NSDictionary* experimentsAndVariations = @{
    @"Experiment 1": @"Variation 1",
    @"Experiment 2": @"baseline"
};

[[Amplitude instance] logEvent:@"TL_Experiments" withEventProperties:experimentsAndVariations];
let experimentsAndVariations = [
    "Experiment 1": "Variation 1",
    "Experiment 2": "baseline"
]

Amplitude.instance().logEvent("TL_Experiments", withEventProperties: experimentsAndVariations)

Web

On version 2.24.0 or above of the Taplytics JS SDK, Taplytics will send experiment/variation data to Amplitude as an event called TL_Experiments with the data attached to the event.

Taplytics tracks the event as follows:

expDic = {"Experment 1: Variation 1, …"}
amplitudeInstance.logEvent('TL_Experiments', expDic)