简体   繁体   中英

How can a mobile ad network track app installs without requiring modifications to the advertised app?

while doing a research on the question I found pretty much a duplicate on Quora:

http://www.quora.com/How-can-mobile-app-installs-for-a-campaign-be-tracked-without-integrating-the-networks-API-SDK

but all the answers there are quite old and I'm wondering if anything has changed.

So far, I came up with only one possible solution that wouldn't require ANY changes in the advertised app (assuming that it has some reporting service already embedded, like Google Analytics):

  • Mobile ad network sends an ad
  • User clicks on the ad, his IDFA is collected and sent back to mobile ad network, when it is stored, reconciliation pending.
  • User is redirected to the app store, downloads the app and opens it.
  • Assuming that the app has already some reporting service embedded, this service collects IDFA and and sends it to the reporting server.

Now, from the advertisers point of view everything is ok, he/she can log in to their reporting service and see that their app was installed.

However, how would the mobile ad network know that the app was installed from their advertisement? The only way I can think of is that the mobile ad network would communicate with the reporting service and compare their IDFA records for the specific app. Do services like Google Analytics, Appsflyer, Kochava etc offer something like this? Do they do it behind my (advertised app owner) back or do I release this information somehow?

On Android installation campaigns can be tracked without AdId collection. On iOS Google Analytics needs IDFA to provide campaigns attribution. On Android the campaign flow is something like this:

  1. App marketer creates an URL that contains the campaign. Google provides a campaign URL builder at the bottom of their campaign dev guide: https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder

  2. App marketer runs the ad campaign with the created URL. The campaign is encoded as &referrer= parameter on the ad URL.

  3. When user clicks on the URL the click is intercepted by Goole Play Store and Google Play Store app receives the campaign params. I believe that this would work even if the user clicks on the campaign from desktop/laptop computer as long as the browser is logged in to the Google Account.

  4. The Google Play Store shows some UI to confirm the installation.

  5. When the user accept to install the app, Google Play Store installs that app.

  6. When the app is launched for the first time on the device, Google Play Store broadcasts "com.android.vending.INSTALL_REFERRER" intent with the campaign data added to the intent.

  7. The app needs to have receiver for "com.android.vending.INSTALL_REFERRER" intent registered. Google Analytics provides an implementation of the receiver and dev guide on how to register the received in the app: https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-implement

  8. Once Google Analytics campaign receiver gets the campaign, it processes it and the campaign is send to Google Analytics with the next hit.

  9. Google Analytics server receives the campaign parameters (name, source, medium, etc) and provides the report.

Advertiser Id doesn't appear anywhere in this flow. Google Analytics can also be configured send send advertiser id with its data: https://developer.android.com/reference/com/google/android/gms/analytics/Tracker.html#enableAdvertisingIdCollection(boolean) . That adds demographics to the Analytics reports but its not required for installation campaign reporting.

On iOS the flow is similar but involves redirect through Google Server:

  1. App maker creates an URL that contains the campaign params using the iOS campaign builder: https://developers.google.com/analytics/devguides/collection/ios/v3/campaigns#url-builder

  2. App marketer runs the ad campaign with the created URL. The campaign is encoded as bunch of parameters on the redirect url hosted on https://click.google-analytics.com/redirect

  3. When user clicks on the URL the browser opens the campaign URL and send the campaign params to https://click.google-analytics.com/redirect

  4. Google Analytics records the ADID and the click parameters and redirects the browser to the redirect URL provided when the campaign url was built, usually https://itunes.apple.com/us/app/my-app/id123

  5. iTunes intercepts the UR and offers UI for installing the app. When the user accepts the app is installed.

  6. The app must have IDFA collection enabled https://developers.google.com/analytics/devguides/collection/ios/v3/#idfa . When the app send data to Google Analytics the hit also includes the app id and IDFA.

  7. Google Analytics get the IDFA from the first hit send and joins IDFA + apid with the recorded campaign data from the redirect URL and provides the installation campaign reports.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM