Braze (formerly Appboy) is a marketing automation platform that allows customers to engage with end users via contextual messaging sent at all points throughout the user journey. Braze can be used in conjunction with Apptimize to streamline product releases, A/B tests, messaging and user lifecycle management, and to provide retargeting and re-engagement.

Use Cases

With Braze and Apptimize together, you can leverage both platforms in conjunction to create powerful end-to-end experiences:

  • Synchronize the in-app and CRM marketing experiences for a custom promotion.
  • Test a new onboarding experience in Apptimize, and use Braze to nurture users throughout the new flow.
  • Concurrently test product feature configurations alongside their appropriate user messaging.
  • Tailor in-app experiences and their appropriate messaging for different segments of end users.

How It Works

Braze and Apptimize can be integrated together to pass data from SDK to SDK. You can sync active Apptimize A/B test groups back to Braze, allowing you to retarget the users in a particular Apptimize test within Braze via push, email, or In-App Messaging.

We have sample integration code which demonstrates how the Braze and Apptimize SDKs can pass data to power custom targeting and segmentation in Braze based on Apptimize experiment data.

This sample integration will set custom attributes on your users’ Braze User Profiles for the following Apptimize data:

  • The full list of active experiments that the user is currently enrolled in.
  • The full list of experiments the user has ever been enrolled in, including completed experiments.
  • The variant(s) the user has seen as part of an experiment participation.

Note: Feature Flags are considered experiments where the only variant is when the Feature Flag is on. If the Feature Flag is off, no data will be reported.

In addition, this integration will log an Braze Custom Event for the first participation event of an experiment. This can be done in one of two ways:

  • A custom event is generated with property data denoting the experiment name, the experiment ID, the variant name and the variant ID.
  • An attribute array is generated with entries for every participation that has occurred. Each participation is formatted as experiment_id_EXPERIMENT_ID:variant_id_VARIANT_ID:experiment_name_EXPERIMENT_NAME:variant_name_VARIANT_NAME

You can then use Braze’s Action-Based Delivery Campaigns or Canvases to send follow-on messages to users in real-time when these events are triggered.

Integration Specifics

The integration sample code is available for both iOS and Android. These can be downloaded from the Braze documentation page.


In order to integrate with your app, import the Braze-Apptimize.m and Apptimize-Braze.h files into your Xcode project, import the Braze-Apptimize.h header into your AppDelegate implementation and add the following to didFinishLaunchingWithOptions after initializing both Braze and Apptimize:

[ApptimizeBraze setupExperimentTracking];


Import the class into your app and in your main Activity implementation, create a private member BrazeIntegraton:

private ApptimizeBraze BrazeIntegration;

Then in your onCreate method, after initializing Braze and Apptimize:

BrazeIntegration = new ApptimizeBraze();