The influence of iOS14.5-SkAdnetwork on Affiliate Network

Explanation of terms

ATT: AppTrackingTransparency, App Tracking Transparency, mandatory pop-ups alert users whether to allow advertising, which means developers need to get the consent of users over iOS14 to get IDFA from users. Historically, at least 60% of users choose to prohibit advertising recommendations.

IDFA: The full name Identifier For Advertising is an advertisement identifier launched by Apple to track users.

SKAdNetwork: SKAN is one of Apple's attribution solutions to help advertisers measure advertising activities while maintaining user privacy.With Apple's SKAdNetwork, ad networks can obtain attribution results for app installations even if IDFA is not available.

The launch of iOS 14.5 and changes brought about by the launch of new privacy features

On April 26, 2021, Apple launched iOS 14.5 and launched a new privacy feature.The new iOS 14.5 Privacy Policy requires that all applications must use the ATT framework. If you want to use IDFA advertising identifiers to track users of different applications, you must first ask the user for permission and the user can choose whether or not to accept personalized advertising tracking.If the user does not allow it, the device's IDFA value will be all zero and the developer will not be able to track the user.

It is worth noting that IDFA did not disappear first, and the iOS 14.5 rule does not mean that IDFA disappeared from then on, but that developers need user permission to get IDFA to track users.Apple's official attitude is to encourage accurate advertising, but it requires users to have the right to know to protect their privacy.Therefore, under the current iOS 14.5 rules, the rights of developers are based on the users'right to know and choose.

On the Apple side, developers are encouraged to seek deployment solutions, provided they comply with Apple's Developer Agreement, ATT Framework, and other rules and align with Apple's privacy policy direction. Apple's official SKAdNetwork is currently one of the possible solutions to address the attribution of App promotion downloads under iOS 14.5 privacy policy, but it can't be used for accurate advertising scenarios.

First, let's introduce the flow chart of advertising attribution in the IDFA Era

 

The original IDFA's advertising attribution flowchart can be simplified to the following:

  1. When an advertiser displays an advertisement to a user, the user clicks on the advertisement and the advertisement reports the IDFA to a third party.
  2. Users click on the ad to jump to Apple App Store and download andactivateApp.
  3. At this time, the application will report IDFA to the mobile attribution platform.
  4. In Mobile Attribution Platform, the IDFA when users click on an advertisement is matched with the IDFA they report. When both sides agree, the advertisement is considered transformed, otherwise it is not.

 

Of course, Apple has also provided an alternative to IDFA, which is to use SKAdNetwork provided by Apple for attribution, but there are many problems with this attribution mechanism. The detailed flowchart is as follows (App A is the source application for displaying advertisements, App B is the user-installed advertising application):

 

Picture source: Apple

 

SKAdNetwork attribution process follows these steps:

  1. For APP, there will be a signature ID to mark the whole process;
  2. When the advertisement is displayed and clicked by the user, jumps to the App Store and is activated for installation, the Apple register API will be called to report.However, Apple also provides other conversion values to record other behaviors, such as registration.
  3. There is a countdown mechanism here, when the Apple API is called to report events, Apple will tell the results to the ad platform within 0-24 hours after 24 hours;If new events are updated within 24 hours, a 24-hour countdown will be restarted and the results will be reported to the ad platform within 0-24 hours after 24 hours.
  4. If there is a docking mobile attribution platform, after Apple tells the ad platform the results, the ad platform sends SKAdNetwork data to the mobile attribution platform for processing.

 

Scenarios for using SKAdNetwork

If you are a developer in the following situations, you can try to connect to the SKAdNetwork framework:

If you have self-developed applications, you need to register on Apple's website to become an advertising network. Go to Apple's official website developer.apple.com to learn how to use the SKAdNetwork framework and see What's new with in-app purchase[15] for details.Here are also the steps we took to run the ad network we found on Apple's official website:

 

Register your ad network ID with Apple and provide it to developers for their actions:

https://developer.apple.com/documentation/storekit/skadnetwork/registering_an_ad_network?language=objc

For advertisements that provide signatures for source applications, you can refer to:

https://developer.apple.com/documentation/storekit/skadnetwork/generating_the_signature_to_validate_storekit-rendered_ads?preferredLanguage=occ

Receive installation validation notification validation postback via the URL filled in at the time of registration, and the relevant actions can be consulted:

https://developer.apple.com/documentation/storekit/skadnetwork/verifying_an_install-validation_postback?preferredLanguage=occ

 

These situations need to be dealt with by advertisers or developers who have their own research and development applications. The core issues that  Affiliate Network needs to deal with are: the reception of Postback, the third-party platform of Affiliate Network, and the tracking of Tracking data.

 

How Offerslook helps users solve core problems

For third-party platforms that serve affiliate network users, the main core is to help users solve the problem of correct connection of parameters and accurate data tracking. Avoid the upgrade of iOS14.5, which affects the connection of users, thereby affecting business flow, reconciliation and checkout issues.

Due to the upgrade of iOS 14.5, the parameters of Postback cannot be attributed to the user level and the click_id value will not be passed.Therefore, the Offerslook platform can only attribute the {click_id} of Destination URL, Postback URL, and Tracking Link roughly with other parameters.The following is a comparison of the parameter docking flow instructions:

Normally:

  • When affiliatesends a click to us via Tracking link, a click unique identification parameter click_id value is passed to us. We use the {aff_sub1} parameter to receive the click_id value of the affiliate.When we post the transformation through Postback, the click_id value saved by {aff_sub1} will be sent back to the affiliate for affiliate
  • We receive a click from the affiliate, randomly generate a unique click_id value for that click, and send the click_id value to the advertiser via Destination URL. Advertisers who post the conversion via Postback will send back the click_id value they received when the click was sent to us for attribution.

After iOS 14.5 upgrade:

  • {aff_sub1} will not receive the click_id value of the affiliate, so we have to use {offer_id} and {aff_id} for rough attributions.

The iOS14 parameters for Tracking Link, Destination URL, and PostBack URL

 

Tracking Link

To the affiliate Tracking Link, must include the following four parameters:

  • {offer_id}
  • {aff_id}
  • {aff_sub1}

Tips: {aff_sub1} is used to connect affiliate click_id value, because we cannot guarantee that the user must be operated with iOS 14, also can be used to ensure that other conditions.

  • {agent}

To facilitate reconciliation with sub affiliate, we recommend adding the {source_id} parameter.

Tracking Link Example:

http://XXX.com/index.php?aff_sub1={clickid}&offer_id=XXX&aff_id=XXX&agent={agent}&source_id={source_id}

Tips: aff_sub1={clickid}. The left side of the equal sign is the parameter of the Offerslook, and the right side is the parameter of the affiliate system.

 

Destination URL

These six parameters must be included when the advertiser gives us the Destination URL:

  • {offer_id}
  • {aff_id}
  • {click_id}
  • {agent}:

Tips: Our system standard is to use the parameter {agent} to receive the agent value of the advertiser, if you want to use aff_ sub1、aff_ Sub2 or other extension parameters are OK.

  • {ip}
  • {accept_lan}

To facilitate reconciliation with sub affiliate, we recommend adding the {source_id} parameter.

Destination URL Example:

http://xx.xxx.com/offer?offer_id={offer_id}&aff_id={aff_id}&clickid=

{click_id}&agent={agent}&ip={ip}&accept_lan={accept_lan}&source_id={source_id}

Tips: offer_id={offer_id}. The left side of the equal sign is the advertiser's system parameters, and the right side is the parameters of the Offerslook.

 

Postback URL

To the advertiser Postback URL, must include the following four parameters:

  • {offer_id}
  • {adv_id}
  • {aff_id}
  • {click_id}

To facilitate reconciliation with sub affiliate, we recommend adding the {source_id} parameter.

Postback URL Example:

http://XXX.com/advBack.php?click_id={click_id}&adv_id={adv_id}&aff_id={aff_id}&offer_id={offer_id}&source_id={source_id}

Tips: offer_id={offer_id}. The left side of the equal sign is the parameters of the Offerslook, and the right side is the parameters of the advertiser system.