Type [Library][api.type.library]
Revision Release 2020.3619
Keywords analytics, attribution, AppsFlyer
Platforms Android, iOS


The AppsFlyer is the world's leading mobile attribution & marketing analytics platform, helping app marketers around the world make better decisions.


Check out init parameter hasUserConsent and also setHasUserConsent method to enable GDPR data collection restrictions.


Before using this plugin, you'll need to register with AppsFlyer to receive an app ID and Developer Key.


According to Facebook's privacy policy, AppsFlyer (or any other 3rd party mobile measurement partner) cannot provide user-level attribution for Facebook installs unless you accept Facebook's Terms of Service. More info here.

If you choose not to accept the Terms of Service, Facebook Mobile Ads installs are categorized as ‘Organic’ and you are unable to receive the user level data for Facebook installs.


local appsflyer = require( "plugin.appsflyer" )



Project Settings

To use this plugin, add the following entry into the plugins table of build.settings. When added, the build server will integrate the plugin during the build phase.

settings =
    plugins =
        ["plugin.appsflyer"] =
            publisherId = "com.coronalabs"

For iOS, when submitting your app to the App Store, follow these guidelines:

  • Make sure you select yes when asked if your app uses the Advertising Identifier (IDFA).
  • Ensure that the Attribute this app installation to previously served advertisement box is checked.
  • For installs from iOS to be counted, the app must be installed from the Apple App Store.

For Android, the following permissions/features are automatically added when using this plugin:

  • "android.permission.INTERNET"
  • "android.permission.ACCESS_NETWORK_STATE"
  • "android.permission.ACCESS_WIFI_STATE"