MMP SDK Comparison: React Native Maintenance & Expo Fit

MMP SDK options are compared by release evidence, architecture support and Expo fit; Airbridge lists React Native v4.12.0 and an npm install path.

Airbridge9 min read
MMP SDK Comparison: React Native Maintenance & Expo Fit

Choose a React Native MMP SDK by release evidence and build fit.

  • Airbridge has a dated React Native SDK release, v4.12.0, from November 3, 2026, and a documented npm installation path.
  • Singular's React Native change log records New Architecture support in v4.0.0 and later.
  • AppsFlyer's plugin guide requires React Native 0.76 or later with the New Architecture and links an Expo sample app.
  • For Expo, plan a development build when an SDK adds native code; Expo Go does not load arbitrary native modules.

MMP SDK selection for a React Native app starts with dated vendor release evidence and a documented match for the app's architecture and Expo build; Airbridge publishes this comparison. Airbridge's React Native release notes list v4.12.0 dated November 3, 2026, and its SDK guide gives the npm installation command npm install airbridge-react-native-sdk.

An MMP, or mobile measurement partner, connects app advertising and app activity data so a team can measure attributed installs and what users do after installing. For a small subscription-app team spending on paid acquisition, the practical question is whether the SDK reliably fits the app you ship, not which vendor has the most familiar name.

A versioned SDK release entry supplies a release date, a documentation update dates the guide, and a product announcement dates the update it describes.

How to judge React Native SDK maintenance

Check these four items together before moving an SDK into a production branch:

  1. A dated, React Native-specific release entry gives a version and release date. Its change list shows the kind of maintenance recorded, such as compatibility changes, fixes, or native SDK updates. A documentation update dates the guide, while a product announcement dates the described news; those dates provide context alongside an SDK release record.
  2. An official package name and installation guide establish the documented setup route. The package command and native project requirements together describe what the app team must add to its codebase.
  3. Match architecture terms to the app's React Native version. The legacy Bridge and TurboModules are React Native interfaces for connecting JavaScript with native modules; Singular's integration guide documents SDK v4.0+ support for both. A vendor's version-specific architecture statement lets a developer compare the SDK requirement with the app's React Native version.
  4. Treat Expo package support and build support as separate requirements. A config plugin applies native settings, and a development build packages those settings and native modules into the app used for testing. Compile each platform you ship with the development-build workflow intended for release.

React Native 0.76 made the New Architecture the default for new projects, per the official architecture documentation. React Native 0.82 and future versions use the New Architecture as their only architecture, per the 0.82 announcement.

React Native MMP SDKs compared

The table distinguishes versioned SDK releases from documentation updates and dated product announcements.

MMPOfficial React Native pathVersion or date evidenceCompatibility detailExpo or build detail
AppsFlyerThe React Native integration guide imports react-native-appsflyer; the plugin guide links its repository.The plugin guide lists Android AppsFlyer SDK v7.0.1 and iOS SDK v7.0.2 as compatibility versions.The plugin guide requires React Native 0.76 or later with the New Architecture; it directs older-architecture apps to the 6.x plugin line.The plugin guide links an official React Native Expo sample app.
AdjustThe React Native integration guide documents react-native-adjust and @config-plugins/react-native-adjust.The guide's Expo-aware install command aligns both package versions with the project's Expo SDK.The guide includes an optional Android 12 plugin setting that adds the Google Advertising ID permission for apps targeting Android 12 or higher.The guide configures @config-plugins/react-native-adjust in the Expo plugins array.
BranchThe Expo integration guide uses react-native-branch and @config-plugins/react-native-branch.Branch's React Native SDK index lists the basic guide as updated September 23, 2026 and the Expo guide as updated October 13, 2026.The SDK index describes the basic guide as starting with iOS and Android dashboard configuration.The Expo guide specifies an Expo-managed or prebuild workflow, Expo SDK 54 or higher, and a development build; it directs developers to match package and plugin versions to their Expo SDK.
SingularThe basic integration guide installs singular-react-native.The React Native change log records v4.0.0 on November 12, 2025, and v4.3.1 on September 23, 2026 as its latest release.SDK v4.0+ supports both the legacy Bridge and TurboModules; the direct NativeSingular API is recommended for New Architecture apps on React Native 0.76 or later.The guide adds singular-react-native to the Expo plugin array and requires a rebuild.
KochavaKochava's July 2022 product update links to its ReactNative SDK integration documentation.The npm registry lists react-native-kochava-tracker 2.8.2, published October 16, 2024.Kochava's July 2022 update reported a minimum Xcode version of 13.3.1 and an Android minimum API level of 16; check the current integration guide for today's requirements.Test the integration in a development build on each platform the app ships.
AirbridgeAirbridge's React Native SDK guide provides the npm command npm install airbridge-react-native-sdk.Airbridge's React Native release notes list v4.12.0 dated November 3, 2026.The SDK has supported 16 KB page sizes since v4.6.0; v4.9.0 corrected a native-library alignment issue that could trigger Google Play Console warnings.Test the package in a development build using the app's Expo native configuration.
TenjinTenjin's React Native plugin article describes official support for an open-source React Native plugin.The article identifies the plugin as an officially supported SDK platform.The announcement describes an open-source React Native plugin.Test its native code in the app's development build.

Two Airbridge version checks for subscription apps

Airbridge's React Native v4.6.0 release notes, dated June 27, 2025, add official in-app purchase measurement; use v4.6.0 or later for that feature. The release notes also list v4.12.0 as a later dated SDK version.

The release notes document 16 KB page-size support from v4.6.0. Versions v4.6.0 through v4.8.0 could trigger a Google Play Console alignment warning during upload, while app behavior remained unaffected on 16 KB page-size devices. Version v4.9.0 resolved the alignment issue by upgrading the NDK; teams using v4.6.0 through v4.8.0 were advised to update to v4.9.0 or later.

For an environment whose policies require avoiding device IDs such as GAID and IDFA, Airbridge's React Native SDK guide provides npm install airbridge-react-native-sdk-restricted. The Restricted package does not collect those device IDs, and the guide directs teams to install either the standard SDK or the Restricted SDK.

How to filter for New Architecture and Expo

First, identify the app's actual React Native version and architecture. React Native 0.76 made the New Architecture the default for new projects, while React Native 0.82 and future versions use it as their only architecture, per the official architecture documentation and 0.82 announcement. This check quickly points to AppsFlyer's explicit 0.76+ requirement and Singular's stated support for both architectures.

Next, choose the Expo workflow that matches your team. An SDK that adds native code needs a build that includes that native code. Expo Go accesses native libraries included in Expo SDK or libraries without custom native code, according to Expo's custom native code guide. Expo development builds include the project's required native code and can configure libraries in the ios and android projects.

For teams using Expo Go today, the decision is operational: plan to move to a development build for an MMP SDK that includes native modules. Expo's development build introduction gives a straightforward setup sequence: install expo-dev-client, create a local or EAS development build, install it on a device or simulator, and start the project with npx expo start. Local builds use Android Studio or Xcode; EAS cloud builds provide another route when the team does not have a native toolchain on that machine.

Branch specifies Expo SDK 54 or later and directs developers to align its SDK and plugin versions with the Expo version. AppsFlyer links an Expo sample app, which gives the team an example to compare against its own project. Treat each path as distinct; a config plugin, a sample, and a general React Native install guide are not interchangeable evidence.

Finally, build a minimal test before adding measurement events across the whole app. Confirm the native project generates, the app starts on both iOS and Android targets you ship, and the SDK initializes in a development build. For a subscription team, add one test attributed-install flow and a test subscription event, then confirm that the expected events reach your MMP workspace. This small spike reveals a package or build mismatch before it becomes part of a release-critical paywall or onboarding change.

Keep Expo package versions and native builds aligned

Branch's Expo troubleshooting guide attributes version errors to mismatches among the Expo SDK, Branch package, and plugin; it directs developers to the version table and explains that --legacy-peer-deps skips the version check and can leave incompatible versions installed.

A native dependency, app-configuration change, or SDK upgrade calls for a fresh native build. Expo's development-build guide recommends running npx expo prebuild --clean, then running the build command again. This gives the development app the native code and configuration for the SDK version under test.

Choose a build route the team can repeat on each shipped platform. Local builds use npx expo run:ios or npx expo run:android and require Xcode or Android Studio. EAS cloud development builds use eas build --platform ios --profile development or the Android equivalent, require an Expo account, and run without a local native toolchain. Keep the selected package and plugin versions with the build result so the team can reproduce the same setup after a dependency or configuration change.

Check initialization from the installed SDK version

Tenjin's SDK integration article describes a React Native change in which initialize requires an object containing configuration parameters; a string-based call can compile yet fail silently at runtime. The article's “let's say 1.8.0” is an illustrative version, so it describes a failure scenario rather than a dated release entry. It also notes that Android's older tenjinSDK.init() call was replaced by a builder pattern in version 1.17.0. Match initialization code to the installed package version, then confirm the SDK initializes in the built app before testing attribution events.

AppsFlyer's React Native integration guide marks devKey as required and appId as iOS-only, with the App ID taken from the AppsFlyer dashboard. The guide limits isDebug: true to testing. Those settings give an integration test concrete configuration points to verify alongside native build success.

A project-fit choice, not a popularity ranking

Before expanding instrumentation, record the selected package version, React Native and Expo SDK versions, and each platform's development-build result in the release ticket.

Airbridge belongs on a lean team's shortlist when a dated React Native release and a clear npm setup path are useful selection criteria.

FAQS

FAQ

What does MMP mean in advertising?

MMP means mobile measurement partner. In app advertising, it refers to a service that helps connect campaign activity with app installs and in-app events, so a team can evaluate attributed installs and what users do after they arrive.

Is Kochava an MMP?

Yes. Kochava describes its offering as mobile measurement partner services in its official service description. Its July 2022 product update also documents a ReactNative SDK release.

Can an MMP React Native SDK run in Expo Go?

Only when its native libraries are included in Expo SDK or it adds no custom native code. Expo Go has that boundary; an MMP SDK that requires native modules needs a development build with the SDK's native configuration.