Conversant conversion tracking works by informing Conversant that an application launch has occurred.
While direct integration with Conversant will provide greater optimization opportunities for your campaigns, we also support the following third-party download tracking services.
If you do not see your preferred service in this list please contact Conversant with a certification request.
Conversant download tracking works by informing Conversant via a 'postback' that your application has been launched on a specific device. This information is sent in the background as part of application start-up. Because this request will be made in a separate thread, if Conversant cannot be reached for whatever reason (ex. device has limited or no network connectivity) your application will still be able to proceed smoothly. Once Conversant has been successfully informed of the download, the download tracking code will no longer attempt to contact Conversant on application start-up.
Client-Side download tracking is available for both the iOS and Android mobile operating systems:
Both iOS and Android Client-Side files can be downloaded on GitHub using the button below:
Integrate our download tracking code in three simple steps:
After your updated app is available to the public in the App Store you can work with your Conversant account manager to set your download campaign live.
The first step is to add our class files for our download tracking function. In the ios-client-side folder, you will see two files
Add these files to you Xcode project, then import this class into your AppDelegate.m:
The second step is to call our tracker function with your Conversant download tracking ID (a.k.a. Application ID) ("CM_APP_ID") for the application being tracked. Your Account Manager should have provided this via email.
At the end of your UIApplication Delegate’s
application:didFinishLaunchingWithOptions call this static selector:
This will run on a background thread, confirming the app activation with our server. Once we’ve successfully tracked the app activation this will become a no-op and will no longer contact our server.
Before releasing your app:
Set up download tracking code in four simple steps:
CMDownloadTracker.javato your application code.
After your updated app is available to the public you can work with your Conversant account manager to set your download campaign live.
The first step is to add our class files for our download tracking function. In the android-client-side folder, you will see a java class file
CMDownloadTracker.java to your Eclipse project then import the package into your start-up Activity:
CMDownloadTracker.java, be sure to update the Android package on line 1
package com.conversantmedia.android; to your app package's name.
Conversant uses the hashed Android ID for matching downloads. Call the following tracker method during your main Activity’s onCreate method, passing in your app’s Context and the download tracking ID (appID) String provided by your Conversant account manager.
Before releasing your app:
Conversant Server-Side Download Tracking records app installs via a server-to-server postback, rather than directly from the app itself. This requires that the client is already collecting this information on their server, and that they are receiving the necessary ID(s) to enable Conversant's correlation.
Publishers who choose not to use client-side integration may use the server-to-server (or “server-side”) solution by firing our postback for each first-time app launch.
We accept individual postbacks or batch requests for download conversion tracking.
If you are planning on batching the requests, we require that you report a given download to Conversant within 24 hours of the actual download. To better optimize your campaign in real-time, we recommend that batch requests be sent every hour.
Work with your Conversant Account Manager to come up with a postback implementation that works best for you.
We require that there is only a single postback per user, i.e. don't fire the postback every time a given user launches the app, as this would create unnecessary load on our servers.
If you choose Server-Side implementation over Client-Side Implementation, please notify us as soon as your release is live so that we may verify the integration is configured correctly.
All variables below are highlighted in bold and uppercase.
|Parameter Name||Parameter Value||Comment|
||Google Advertiser ID (Android)||Device ID (Android) provided by Google. Do not hash this value.|
||SHA-1 Hashed ANDROID_ID (Android)||Device ID (Android). Send the value hashed (SHA-1).|
||IDFA (iOS)||Device ID (iOS). Required as of June 2013. Do not hash this value. Requires AdSupport.framework|
||Conversant Download Tracking ID
|Contact your Conversant Account Manager for your download tracking ID|
||dl||"dl" records the action as a download. This parameter is always the same|
* Note: UDID and Hashed MAC address for iOS have been deprecated.
Heads Up! All hashed values must be hashed using SHA-1 hex encryption so that the values sent to us match the values we have recorded from the click on the ad.
For more information on SHA-1, click here. We can provide sample code and examples upon request.
Example postback for an Android app:
Example postback for an iOS 6 app: