---
title: MMP SDKs for Cordova: Plugins Compared
description: Which MMPs publish an official Cordova plugin: npm package, licence, minimum platform versions, deprecation notes and docs for 9 vendors, checked 2 Nov 2026.
url: https://mmpsdk.com/frameworks/cordova/
---

[Home](https://mmpsdk.com/) / [Frameworks](https://mmpsdk.com/frameworks/) / Cordova

# MMP SDKs for *Cordova*

Attribution plugins for Apache Cordova apps, from npm and each vendor's docs, including which plugins are deprecated or only maintained by the community.

**Short answer**

7 of the 9 MMPs tracked here publish an official Cordova SDK: Adjust, Airbridge, AppsFlyer, Branch, Kochava, Linkrunner and Singular. AppMetrica and Tenjin have community packages only.

## Cordova pinout: one pin per MMP

Filled pins have an official SDK. Pins are in A to Z order.

- 1 [Adjust](https://mmpsdk.com/mmp/adjust/)
- 2 [Airbridge](https://mmpsdk.com/mmp/airbridge/)
- 3 [AppMetrica](https://mmpsdk.com/mmp/appmetrica/)
- 4 [AppsFlyer](https://mmpsdk.com/mmp/appsflyer/)
- 5 [Branch](https://mmpsdk.com/mmp/branch/)

**FW-CD** **Cordova** 7 of 9 official

- 6 [Kochava](https://mmpsdk.com/mmp/kochava/)
- 7 [Linkrunner](https://mmpsdk.com/mmp/linkrunner/)
- 8 [Singular](https://mmpsdk.com/mmp/singular/)
- 9 [Tenjin](https://mmpsdk.com/mmp/tenjin/)

Official Vendor-documented Community only None found

## Cordova SDKs compared

Last checked 2 Nov 2026. Package, version and licence from npm; minimum OS from podspecs, Gradle files and vendor docs.

| MMP | Status | Package | Registry | Version | Licence | Minimum OS | Repo | Install docs | Notes |
|---|---|---|---|---|---|---|---|---|---|
| [Adjust](https://mmpsdk.com/mmp/adjust/) | Official | [com.adjust.sdk](https://www.npmjs.com/package/com.adjust.sdk) | npm | 5.8.0 | MIT | Not published | [Source](https://github.com/adjust/cordova_sdk) | [Install docs](https://dev.adjust.com/en/sdk/cordova) | Ionic users install via @awesome-cordova-plugins/adjust plus the same plugin. |
| [Airbridge](https://mmpsdk.com/mmp/airbridge/) | Official | [airbridge-cordova-sdk](https://www.npmjs.com/package/airbridge-cordova-sdk) | npm | 4.4.2 | MIT | Not published | Not public | [Install docs](https://help.airbridge.io/en/developers/deprecated-cordova-sdk-v4) | Deprecated: critical fixes only from 1 Oct 2026, all support ends 1 Oct 2028. |
| [AppMetrica](https://mmpsdk.com/mmp/appmetrica/) | Community only | [cordova-plugin-appmetrica](https://www.npmjs.com/package/cordova-plugin-appmetrica) | npm | 1.0.2 | Apache-2.0 | Not published | [Source](https://github.com/Talla2XLC/cordova-plugin-appmetrica) | Not found | Yandex's own plugin (yandex-appmetrica-plugin-cordova 1.0.0, 2019) is discontinued and its repo yandexmobile/metrica-plugin-cordova is archived. |
| [AppsFlyer](https://mmpsdk.com/mmp/appsflyer/) | Official | [cordova-plugin-appsflyer-sdk](https://www.npmjs.com/package/cordova-plugin-appsflyer-sdk) | npm | 7.0.4 | MIT | cordova-android 13+, cordova-ios 7.1.1+; OS not published | [Source](https://github.com/AppsFlyerSDK/appsflyer-cordova-plugin) | [Install docs](https://github.com/AppsFlyerSDK/appsflyer-cordova-plugin/blob/master/docs/Installation.md) |  |
| [Branch](https://mmpsdk.com/mmp/branch/) | Official | [branch-cordova-sdk](https://www.npmjs.com/package/branch-cordova-sdk) | npm | 6.6.1 | MIT | iOS 12.0; Android not published | [Source](https://github.com/BranchMetrics/cordova-ionic-phonegap-branch-deep-linking-attribution) | [Install docs](https://help.branch.io/developer-hub/cordova-phonegap-ionic) |  |
| [Kochava](https://mmpsdk.com/mmp/kochava/) | Official | [cordova-plugin-kochava-measurement](https://www.npmjs.com/package/cordova-plugin-kochava-measurement) | npm | 5.0.0 | Proprietary (Kochava terms) | iOS 15.5; Android API 21 | [Source](https://github.com/Kochava/cordova-kochavameasurement-releases) | [Install docs](https://support.kochava.com/articles/cordova-sdk/) |  |
| [Linkrunner](https://mmpsdk.com/mmp/linkrunner/) | Official | [cordova-linkrunner](https://www.npmjs.com/package/cordova-linkrunner) | npm | 1.5.3 | MIT | iOS 15; Android not published | Not public | [Install docs](https://docs.linkrunner.io/sdk/cordova?utm_source=mmpsdk&utm_medium=referral&utm_campaign=frameworks-cordova) | Source repository is not public. |
| [Singular](https://mmpsdk.com/mmp/singular/) | Official | [singular_cordova_sdk](https://www.npmjs.com/package/singular_cordova_sdk) | npm | 1.9.0 | MIT | Not published | [Source](https://github.com/singular-labs/Singular-Cordova-SDK) | [Install docs](https://support.singular.net/hc/en-us/articles/8586543222683) | Built against iOS SDK 12.14.0 and Android SDK 12.16.0 per README. |
| [Tenjin](https://mmpsdk.com/mmp/tenjin/) | Community only | [cordova-plugin-tenjin](https://www.npmjs.com/package/cordova-plugin-tenjin) | npm | 2.0.1 | MIT | Not published | [Source](https://github.com/tenjin/cordova-sdk) | [Install docs](https://tenjin.com/docs/other-plugins/) | Tenjin lists it under 'Unofficial Plugins'; last published 2018 and pins TenjinSDK ~> 1.7.8. |

"Not published" means no primary source states the value; it does not mean there is no minimum. Registry and repo links are for reference.

## What the SDK needs from you

The setup steps that apply to any attribution SDK in a Cordova app. Each vendor datasheet lists that vendor's own requirements.

- **Install**
  `cordova plugin add <package>`. Check the plugin's `plugin.xml` for the `cordova-android` and `cordova-ios` engine versions it needs.
- **Deprecation**
  Check the vendor's support notice before you start. Airbridge, for example, gives critical fixes only from 1 Oct 2026 and ends support on 1 Oct 2028.
- **Android permissions**
  Declared through the plugin's Android library; confirm `AD_ID` in the merged manifest when targeting Android 13 or later.
- **Play Install Referrer**
  Comes through the native Android SDK the plugin wraps.
- **ATT prompt**
  Add `NSUserTrackingUsageDescription` through `config.xml` ( `edit-config`) and show the prompt before the SDK starts if you want the IDFA.
- **Deep links**
  Universal links need Associated Domains in the iOS project; App Links need an intent filter. Several vendors' Cordova plugins add these from `config.xml` preferences.

## Questions

**Which MMPs have an official Cordova SDK?**

7 of the 9 MMPs tracked here publish an official Cordova SDK: Adjust, Airbridge, AppsFlyer, Branch, Kochava, Linkrunner and Singular. AppMetrica and Tenjin have community packages only.

**How do I install an MMP SDK in a Cordova app?**

cordova plugin add the package, then rebuild both platforms.

**Is Cordova still supported by MMPs?**

Mostly yes, but coverage is shrinking. Seven of the nine vendors here have an official or vendor-documented Cordova plugin, Airbridge's is deprecated, and Tenjin and AppMetrica rely on community plugins.

**Should I move from Cordova to Capacitor for attribution?**

Only if the vendor you need has a Capacitor plugin. Check the Capacitor table first: some vendors with a Cordova plugin publish no Capacitor equivalent.

**What is an MMP SDK?**

An MMP SDK is the library a mobile measurement partner asks you to add to your app. It records the first open, in-app events and deep link opens, and sends them to the MMP so installs can be matched to the ad or link that drove them.

**Is every MMP SDK open source?**

No. Many wrappers and SDKs are MIT licensed, but some native SDKs are proprietary: AppsFlyer's native iOS and Android SDKs, Kochava's SDKs and AppMetrica's Flutter plugin are published under proprietary terms. The licence column in each table shows what the registry or repository states.

## Other frameworks

- [FW-RN **React Native** npm install the vendor package, then run pod install in the ios folder. Autolinking wires up the native side. *9 of 9 official*](https://mmpsdk.com/frameworks/react-native/)
- [FW-FL **Flutter** flutter pub add the package, then check the iOS deployment target in the Podfile and minSdk in android/app/build.gradle. *8 of 9 official*](https://mmpsdk.com/frameworks/flutter/)
- [FW-EX **Expo** npx expo install the package, add its config plugin to app.json, then npx expo prebuild and run a development build. Expo Go cannot load these native SDKs. *6 of 9 official*](https://mmpsdk.com/frameworks/expo/)
- [FW-UN **Unity** Add the package by Git URL in Unity Package Manager or import the .unitypackage, then resolve native dependencies (often with EDM4U) before building for iOS and Android. *8 of 9 official*](https://mmpsdk.com/frameworks/unity/)
- [FW-CP **Capacitor** npm install the plugin, then npx cap sync to copy it into the iOS and Android projects. *4 of 9 official*](https://mmpsdk.com/frameworks/capacitor/)
- [FW-IOS **iOS (native)** Add the Swift package in Xcode or the pod to your Podfile, then initialise the SDK early in the app's launch. *9 of 9 official*](https://mmpsdk.com/frameworks/ios/)
- [FW-AND **Android (native)** Add the artifact to your Gradle dependencies (and the vendor's Maven repository if it is not on Maven Central), then initialise the SDK in Application.onCreate. *9 of 9 official*](https://mmpsdk.com/frameworks/android/)
- [FW-WEB **Web** Add the vendor's script tag or npm package to the site, then initialise it with your app or project key. *7 of 9 official*](https://mmpsdk.com/frameworks/web/)
