Application Support:Mobile App Tracking
From HasOffers
With Mobile App Tracking you can now create offers to track installs of mobile applications on Android and Apple iOS for iPhones and iPads. Windows Mobile is currently in development. Mobile App Tracking offers users advanced tracking technology with device fingerprinting to accurately attribute installs and other conversions to the right affiliate or ad network responsible.
The issue with standard conversion tracking using pixels or postback URLs is that users are directed to a marketplace in which tracking can not continue. Cookie-based tracking with pixels can not be used because users are directed from a mobile browser, to a marketplace to download the mobile app, and then the user installs the mobile app. However, the mobile app can not read the cookies set in the mobile browser which is why cookie tracking won't work. Standard cookieless tracking methods utilizing postback URLs would seam like an appropriate solution. However, when a user a directed to a marketplace to download the mobile app, a tracking token (transaction ID / click ID) can not be passed to the marketplace and onto the mobile app. Since the mobile can't receive a tracking token that was created in the mobile browser, it can't load a postback URL to record the conversion. Mobile App Tracking uses a proprietary tracking technology to allow advertisers to accurately track installs and conversions.
Contents |
Mobile Apps
An application refers the Android APK file. For each application you want to advertise, you should add it to Mobile App Tracking. You'll need to setup an Application so unique tracking information can be tracked for each. Unique tracking links will be generated for each Application along with optional impression pixels which you'll need to include them in your advertising campaigns. This way we can track the installs and only credit the appropriate publishers or ad network that influenced the install.
Note that installs are a type of conversion. A conversion can be any action defined by an advertiser including leads and sales or making it to level 2 of a game.
Adding Mobile App
Start entering the name of your application. Then provide details on the actual application. You can edit these settings later. After you add this application, start advertising it on multiple networks and/or leveraging affiliate relationships.
- Name: Name of the application displayed in your interface and reporting.
- Location: If the application is listed in the official Android Market and the Install URL is a link to the marketplace, then additional tracking can be used for increased accuracy.
- Package Name: Name of actual Android package (application). This is usually formatted like "com.appname.version". If your application is listed in the marketplace, the package name must match exactly with what's specified in the APK.
Managing Mobile App
The Application index page lists the mobile apps you have loaded into your account. It provides some summary stats and allows you to view each to update their settings.
Events
Each application has events. Events are the actions that define a conversion. By default an Install event is created for each application. The install event is required part of tracking. The install event can be called anytime in the install / registration process but its must happen first before any other additional events.
The Install event uses the trackInstall method while all other events use the trackAction method.
Adding Event
Add an event which the application will call to associate conversions with. You'll only need to create additional events to track additional conversions after the install event. This could be an event for Completed Registration or Level 2 Complete.
You'll only need to define a name for the event. Mobile App Tracking will create an event ID and key to be used to track it with.
- Name: Name of the event displayed in your interface and reporting.
Tracking Installs and Events
Tracking installs and events is a core functionality for Mobile App Tracking. Our engineers have created SDKs for Android and iOS to make it easy for you to track mobile app installs and other in-app events. The SDKs collect parameters from the user's device and then load a conversion URL to notify tracking servers to record a conversion.
You can download and use our Android SDK and iOS SDK. Or for advanced use, you can simply collect the required and optional parameters and load them in the Conversion URL for your mobile app. Learn more about Conversion URLs below.
Android SDK
The HasOffers Android SDK provides basic application install and event tracking functionality for developers of Android mobile apps. To track installs, you must integrate the Android SDK. Once the Android SDK is integrated to track installs, you can add and track other in-app events.
How to install and use HasOffers Android SDK.
iOS SDK for iPhone and iPads
The HasOffers iOS SDK provides basic application install and event tracking functionality for application developers of iOS mobile apps. The iOS SDK is provided in the form of a framework and header file to include in your iOS project. It is compatible with iPhone, iPad and iPod Touch devices.
How to install and use HasOffers iOS SDK.
Windows Mobile SDK
An SDK for Windows Mobile is TBA.
Conversion URL
The SDKs track conversions - installs or other events - by requesting a URL with parameters. By default the URL include an encrypted string of data to ensure the values are not tampered with.
The current Android SDK along with the iOS SDK for iPhone and iPads and Windows Mobile SDK in development will use the same conversion URL. Just how the SDKs get the values on their respective platforms will be different. Thus, eager developers can develop their own code with the conversion URL to track on Apple iOS and Windows Mobile.
The SDKs are developed to collect the data from the device and pass it into the conversion URL appropriately. This is an example of a conversion URL called from the Android SDK on an Android device.
http://tracking.hasoffersmobile.com/?action=conversion&brand_id=20&event_id=125&key=78d441217a8ff20ad855b9ce2bd85dbb&install_referrer=bar&device_id=123456&device_name=htc&device_carrier=verizon&device_type=htc&os_version=2.2&country_code=us&language=en&package_name=com.hasoffers.test&app_name=Test&app_version=1
Predefined Parameters:
- action
- 'conversion' is the only option
- brand_id
- ID of account
- event_id
- ID of event displayed in interface
- key
- Key of event displayed in interface
- package_name=
- set based on application
- app_name=
- set based on application
- app_version=
- set based on application
User Parameters based on install:
- install_referrer
- Referral URL to install. Encoded value.
- Example value: http%3A%2F%2Fitunes.apple.com%2Fus%2Fapp%2Fdeath-at-fairing-point%2Fid445898565%3Fmt%3D8
- device_id
- ID of device / UID
- Example value: 72a09d3bafb02e84ea920dab1754f4cc
- device_name
- Model of device
- Example value: iphone
- device_carrier
- Carrier for device
- Example value: att
- device_type
- Example value: htc
- os_version
- OS of device
- Example value: 2.2
- country_code
- Lower case two letter country code
- Example value: us
- language
- Lower case two letter language abbreviation
- Example value: en
Publishers
Publishers are the various ad networks that you advertiser your applications with. We have integrated tracking with the default networks. This way when this system records installs, the appropriate ad network that influence the install will be notified so they can record the install in their system and attribute it to the corresponding ad. Any custom publisher you add, you'll need to manually setup conversion tracking with them.
Adding Ad Network
Mobile App Tracking is already integrated with several mobile ad networks. This means that when the SDK tracks a conversion, Mobile App Tracking tracking servers will determine which ad network or publisher was responsible. If an ad network was responsible for the conversion, then Mobile App Tracking will allocate them credit and notify the ad network. Mobile App Tracking notifies the ad network via integrations we've already completed with them. Either their SDK or server postback URL is loaded depending on the integration. This way you don't need to worry about tracking conversions and attributing them to the appropriate ad networks responsible.
You can add one of the integrated ad networks as a publisher by clicking the add button from the publishers page. Then from the Ad Network menu, select one of the ad networks listed. Learn more about how to setup your campaigns with these ad networks in the Integrated Ad Networks section.
Adding Affiliate or other Publisher
You can easily add affiliates or other publishers into your Mobile App Tracking account. These publishers will track just like the integrated ad networks. The only difference is that we don't have integrations setup for them and you'll need to setup postback URLs to notify them of any conversions if needed.
You can add an affiliate or other publisher by clicking the add button from the publishers page. Then from the Ad Network menu, select Other from the options. By selecting Other, you'll then be prompted to name the publisher. Simple enter a name and you can create the account.
Third-Party Postback URLs
This is the URL that can be to notify a third-party system of a conversion. You can an Postback URL for a publisher on all applications - global postback URL. Or you can add the postback URL for a single application event. Remember that by default every application has the Install Event and then could have an additional events you've added.
Postback URLs can only be added for publishers that are not predefined ad networks because we've already setup the third-party conversion tracking for these ad networks. Learn more about these ad networks below in the Integrated Ad Networks section.
You can add a postback URL for a publisher by viewing the publisher. In the Postback panel click the add button. You then need to select which application event the postback URL should be loaded for and specify the actually URL.
This is a sample postback URL with optional parameters.
http://tracking.internalsystem.com/conversion.php?creative={source}&sub_id={info1}
Optional Parameters The postback URL can include the value of various parameters tracked by the ad servers. Simply include the placeholder for the parameters. Prior to calling the postback URL, the placeholders for the parameters will be replaced with their values.
The parameters below can be included in the tracking link. To include the value of source, update the postback URL with "&variable={source}".
- {publisher_id} - ID of publisher in system.
- {app_id} - ID of application in system.
- {event_id} - ID of event in system.
- {source} - Value of Source parameter included in tracking link on click.
- {info1} - Value of the Info 1 parameter included in tracking link on click.
- {info2} - Value of the Info 2 parameter included in tracking link on click.
- {info3} - Value of the Info 3 parameter included in tracking link on click.
- {info4} - Value of the Info 4 parameter included in tracking link on click..
- {info5} - Value of the Info 5 parameter included in tracking link on click
- {tracking_id} - ID of the tracking session created by the ad servers.
- {session_user_agent} - Useragent for the device that started on the tracking session.
- {conversion_user_agent} - Useragent for the device that created the conversion.
- {device_id} - ID of the user's (phone) recorded on conversion. This value can be an ESN, IMEI or MEID.
- {device_ip} - IP address of the user's device (phone) recorded on conversion.
- {device_name} - Model for the user's device (phone) recorded on conversion such as "Droid Pro".
- {device_type} - OS for user's device (phone) such as "Android" or "iOS".
- {device_carrier} - Carrier (service provider) for the device such as "Verizon Wireless".
- {os_version} - Version of operating system on the user's device (phone).
- {country_code} - Two character abbreviated country code that user is located in on conversion.
- {language} - Name of the language used on the user's device (phone).
- {package_name} - Name of the package such as "com.zynga.words".
- {package_app_name} - Name of application defined in the package like "Words with Friends".
- {package_app_version} - Version of the application defined in the package like 2.1.
- {install_referrer} - URL for the install referral if application was download from Android Market.
Tracking Links
Tracking links are the main tracking mechanism required to track installs. In order for an ad network, affiliate or other publisher to get credited for an install or other event, the user will have had to click or be directed through a tracking link. By redirecting the user from the advertising campaign through a tracking link and then to the download page, Mobile App Tracking can start a tracking session. When a user installs an application, we look to see if they have an active tracking session. If there is an active tracking session, the publisher responsible is credited for the conversion. If a user doesn't have an active tracking session (meaning they never went through a tracking link), then these conversions are tracked as Organic. Organic refers to these conversions being no-paid.
You can generate tracking links from either an application view page or publisher view page. From the application view page, in the Tracking panel at the top select the publisher to generate the tracking link for. The tracking link will then be generated for the application and selected publisher. From the publisher view page, in the Tracking panel at the top select the application to generate the tracking link for. The tracking link will then be generated for the publisher and selected application
Basic Tracking Link
A basic tracking link includes just the offer_id (offer ID) and the aff_id (affiliate ID). These values are backend values and not directly correlated with the application ID and publisher ID displayed in the Mobile App Tracking interface.
http://demo.go2jump.org/aff_c?offer_id=423&aff_id=1098
Source and Sub IDs
A source parameter and up to five sub ID parameters can be added to tracking links. You can easily define the value of these parameters dynamically. The parameters can be added to basic tracking links without having to generate the link in the interface.
The source is used to define where the publisher's traffic is coming from. The value is usually a group and not a unique user value. If the publisher was Admob, the source value could be "Campaign123".
Sub IDs are used for specific and generally a unique value. Its best to store unique tracking IDs from other systems in the sub ID parameter or other user information.
This is an example tracking link with the source set and five sub ID parameters.
http://demo.go2jump.org/aff_c?offer_id=423&aff_id=1098&source=Campaign123&aff_sub1=verizon&aff_sub2=andoird&aff_sub3=htc&aff_sub4=ad123&aff_sub5=click789
Impression Pixel
The impression pixels can be used with your own creatives to track the views of them. Simply include the impression pixel with any creative code you have. The impressions will be linked with any corresponding clicks.
<img src="http://demo.go2jump.org/aff_i?offer_id=423&aff_id=1098" width="1" height="1">
If you tracking link included source and sub ID parameters, you need to append the same parameters on to the end of the URL in the impression pixel.
Reporting
Mobile App Tracking reporting gives great detail and insight on your installs.
Installs that were not attributed to any publisher show up in reports as publisher Organic.
Performance Report
Provides click and conversion activity in the same report. Can be grouped by publisher, application and event. Then drill down into performance by source or sub ID.
Click Report
Provides logs of all clicks on tracking links. Includes user's IP, user agent, referral URL and requested URL.
Conversion Report
Provides logs of all conversions request. Conversions that are approved are valid and payable to publishers responsible. Rejected conversions are invalid for various reasons. View the status messages for insight on why conversions were rejected.
Postback Report
Provide insight on third-party postback loaded. These postbacks are loaded when Mobile App Tracking records an approved conversion. The postback for the publisher responsible is then loaded. Since setting up these postbacks can be difficult, this report give you insight if they were called or not, and the if they were loaded, the response the third-party system returned. This is great report for debugging tracking integrations.
HasOffers Affiliate Integration
Mobile App Tracking is strictly a mobile app tracking solution. There is no affiliate interface. Since Mobile App Tracking was created and powered by HasOffers, your Mobile App Tracking account can by linked to HasOffers. This way you can provide publishers and affiliates with a dashboard to login, generate tracking links, review their performance and monitor payments.
Your applications loaded in Mobile App Tracking will be synced as Offers in HasOffers. Your publishers loaded in Mobile App Tracking will be synced as Affiliates in HasOffers. While detailed data about installs and other events is only available in Mobile App Tracking, basic click and conversion data is synced and reported with HasOffers.
To setup the integration between your Mobile App Tracking account and HasOffers, contact your account manager. Its easily for our team to get the integration activated for you.
Ad Network Integrations
admob
adfonic
Required parameter
- adfonic_application_id
Jumptap
Required parameters
- jumptap_app
- jumptap_event
LeadBolt
Millennial Media
Required parameter
- millenial_goal_id
mobclix
Offermobi
When buying traffic from Offermobi, they'll be setting up an offer for your application on their network.
Step 1: Generate them a tracking link for them in your system. You need to have pass in their transaction_id value as an affiliate sub ID into the tracking link. {transaction_id} is placeholder their system uses for tracking.
http://youraccount.go2cloud.org/aff_c?offer_id=1&aff_id=15&aff_sub={transaction_id}
Step 2: Have Offermobi create an offer in their system using the link above. Have them setup the offer in their system to use Server Postback with Transaction ID.
Once Offermobi has your application setup as an offer in their system, they can start sending you traffic.
Radium One / gWallet
Required parameter
- gwallet_affiliate_name
SponsorPay
Required parameter:
- sponsorpay_program_id
Tapjoy
Required parameters:
- tapjoy_app_id
- tapjoy_app_secret_key
Support Questions
No related support questions
Email this page to a friend or co-worker