iOS & iPadOS / tvOS / watchOS

Apptimize supports experimentation and release management on iOS & iPadOS, tvOS, and watchOS through three separate SDKs. They are managed and released together and the installation instructions are very similar.

SDK Installation

Sign in to the Apptimize dashboard. You’ll see a welcome page that asks for the name of your app. After entering all your info, you’ll see these installation instructions again.

You have three options for installing the SDK(s):

  1. Manual (Zero-Line) Installation
  2. CocoaPods
  3. Segment or mParticle Integration Kit

Manual (Zero-Line) Installation

The SDK switched from static to dynamic at version 2.18.0. Please remove the SDK from your project and follow the installation instructions below to upgrade.

  1. After you’re signed in, you’ll be able to download the Apptimize SDK. Unzip it, then drag and drop Apptimize.framework (iOS/iPadOS), ApptimizeTV.framework (tvOS), or ApptimizeWatch.framework (watchOS) into your project. You’ll probably want to check the Copy items if needed option.
  1. Select the project from the Project navigator.
  2. Select the target application. For watchOS this will be your watch application’s Extension target.
  3. Go to the General tab. Drag the Apptimize.framework, ApptimizeTV.framework, or ApptimizeWatch.framework from the project browser into the Embedded Binaries section at the bottom of the page.


Refer to CocoaPod’s Getting Started Guide for detailed instructions.

  1. Once you have created your Podfile, insert pod 'Apptimize' (iOS/iPadOS), pod 'Apptimize-tvOS' (tvOS), or pod 'Apptimize-watchOS' (watchOS) to import Apptimize as a dependency.

    Once you have done so, re-run pod install from the command line. Apptimize.framework is compatible with use_frameworks! for other dynamic and Swift dependencies.

Initializing Apptimize

  1. Open your project’s Info.plist (typically found in the Supporting Files folder), navigate to the Editor menu, and choose Add Item. If Add Item is grayed out, make sure to click the main window.

Make sure to name your new entry ApptimizeAppKey.

  1. Add your application key, which is a 31 character key that can be found on the installation instructions while logged in or in your app settings.
  1. In order to release on the App Store, you will need to strip all simulator architectures from the framework. In the Build Phases of your project target, click the + sign and select New Run Script Phase.

Be sure the new run script is below the Embed Frameworks build phase.

Then, add the following code to the newly created Run Script:

if [[ ! "${SDKROOT}" == *Simulator* ]]; then
  lipo Apptimize -verify_arch i386 && lipo -remove i386 -remove x86_64 Apptimize -output Apptimize || echo "Simulator architectures already stripped"
  lipo Apptimize -verify_arch i386 || { echo "Simulator architectures missing - clean and rebuild for simulator!"; exit 1; }
  1. Build your app to make sure that SDK was installed correctly. Verify that the SDK is loading by running your app and checking the Xcode console for the message Apptimize: Version x.x.x.

    You’ve finished the Apptimize installation and are ready to configure your first A/B experiment!

Segment or mParticle Integration Kit

You can install our iOS SDK via our Segment or mParticle Integration Kits. You might want to use this option if you’re already tracking similar data with other services. This way, you can send your data to Segment or mParticle and with a flip of a switch, it will show up in Apptimize as well.

Learn more about our Integration Kits here!