Integrations

Please note that our integrations are currently only supported in our Android and iOS SDKs.

Analytic Integrations

Apptimize can automatically capture event and attribute data that you have already instrumented with analytic frameworks. When you enable one of our analytics ingegrations, our SDK makes a copy of the data you are sending to that provider and sends the copy to Apptimize. These integrations allow you to analyze the impact of A/B experiments without any additional analytic setup work.

These integrations are contained entirely within the Apptimize SDK. By simply having both the Apptimize SDK and the analytics platform SDK in your app, data will start flowing between the two.

Integration Import Events Import User Info Export Detail
Adobe Marketing Cloud (Omniture) Yes Manual Manual
  • State & Action Events
  • User Identifiers
Amplitude Yes Yes Manual
  • Events
  • Revenue [1]
  • RevenueV2 [2]
  • User Properties
Firebase Yes Yes Manual
  • Events
  • User ID
  • User Properties
Flurry Yes Yes Manual
  • Events [3]
  • Gender/Age/UserId
Google Analytics Yes Manual Manual
  • Events
Localytics Yes Yes Yes
  • Standard and Custom Events
  • customerValueIncrease [1]
  • Dimensions
Mixpanel Yes Yes Manual
  • Events
  • Super Properties

Manual Integration: you can manually move the data between SDKs by:

Integration Kits

We also support using Apptimize through integration kits. These are packages that you install using CocoaPods or Maven to add support for a particular third party integration.

When using an integration kit, the kit will handle import and initialization of the Apptimize SDK and will control whether the SDK should be exporting or importing data automatically from other third-party services. For example, mParticle disables all event exporting and importing within the Apptimize SDK to ensure that all data flows through mParticle and is not bypassed from the Apptimize SDK. Refer to the third-party integration kit documentation to determine exactly what the behavior of that kit is.

Integration Import Events Import User Info Export Details
Segment.io Yes Yes Yes
  • Track, Screen
  • Identify
mParticle Yes Yes Yes
  • Log Events
  • UserAttributes

Customer Engagement Integrations

Our integrations with customer engagement products allow Apptimize experiments to be coordinated with relevant messaging campaigns. These integrations send user-level data related to experiment participation to the provider which can then be used for audience targeting.

Integration Integration Type Import User Info Export Details
Airship Automated No Yes
  • Tags
Braze Sample Code No Yes
  • Custom Attributes

Disable Integrations

By default, both importing and exporting integrations are enabled. To turn off importing and exporting:

iOS (Objective-C)
// If you're using the zero line setup (ApptimizeAppKey set in plist)
// Set following Keys to false in Info.plist
ApptimizeEnableThirdPartyEventExporting
ApptimizeEnableThirdPartyEventImporting

// If you're using the in code setup (Apptimize startApptimizeWithApplicationKey)
// Add the following ApptimizeOptions to setup
NSString *apptimizeAppKey = @"[YOUR_APP_KEY]";
NSDictionary *apptimizeOptions = @{ApptimizeEnableThirdPartyEventImportingOption : @NO,
                                   ApptimizeEnableThirdPartyEventExportingOption : @NO};
[Apptimize startApptimizeWithApplicationKey:apptimizeAppKey options:apptimizeOptions];
iOS (Swift)
// If you're using the zero line setup (ApptimizeAppKey set in plist)
// Set following Keys to false in Info.plist
ApptimizeEnableThirdPartyEventExporting
ApptimizeEnableThirdPartyEventImporting

// If you're using the in code setup (Apptimize startApptimizeWithApplicationKey)
// Add the following ApptimizeOptions to setup
let apptimizeAppKey = "[YOUR_APP_KEY]"
let apptimizeOptions = [ApptimizeEnableThirdPartyEventImportingOption : false,
                        ApptimizeEnableThirdPartyEventExportingOption : false]
Apptimize.start(withApplicationKey: apptimizeAppKey, options: apptimizeOptions)
Android
String apptimizeAppKey = "YOUR_APP_KEY";
ApptimizeOptions apptimizeOptions = new ApptimizeOptions();
apptimizeOptions.setThirdPartyEventExportingEnabled(false);
apptimizeOptions.setThirdPartyEventImportingEnabled(false);
Apptimize.setup(context, apptimizeAppKey, apptimizeOptions);

[1](1, 2) Apptimize will import the corresponding double value included for Results calculations
[2]Note that revenueV2 event names are tracked but the corresponding double value is not available within Apptimize
[3]Note that if logError and logEvent are used in timing methods, they will not be automatically imported to Apptimize