Overview
This guide documents important changes to click handling logic for our demand partners using SKAdNetwork and iOS 14 and above.
Below, we cover various click handling logic changes for VAST 2.0, VAST 2.0 CompanionAds, and Display ads, including MRAID 2.0, Javascript and HTML ads.
Video Click Logic
Video
For iOS 14 and above only, when the demand partner returns BidResponse.seatbid.bid.ext.skadn
object with a valid itunesitem
,
For VAST 2.0 Videos
- Fyber will continue to supprt click tracking through the VAST
<ClickTracking>
and<ClickThrough>
element, and we stop redirecting once we reach the App Store URL or another non-redirect response.
* Non-redirect responses include any internal or external browser links
For VAST 2.0 CompanionAds
- Fyber supports click tracking through the VAST
<CompanionClickThrough>
, and we stop redirecting once we reach the App Store URL or another non-redirect response. - The same logic applies for static, iFrame and HTML end cards
For VAST 2.0 CompanionAds
<CompanionClickTracking>
.- Fyber will continue to support click tracking through the VAST
<CompanionClickTracking>
and<CompanionClickThrough>
elements. - The same logic applies for static, iFrame and HTML end cards
Display Click Logic
Display
For iOS 14 and above only, when the demand partner returns BidResponse.seatbid.bid.ext.skadn object with a valid itunesitem.
Display creatives may use various methods to implement clicks:
- Call mraid.open(), if the creative supports MRAID
- Call window.open(), if the creative supports Javascript
- Update window.location, if the creative supports Javascript
- Use < a href="https://someurl" >< /a >, for regular HTML creatives
Once the user clicks, Fyber calls loadProduct() and shows the iOS StoreKit according to the itunesitem (bundle) we receive on the bid response. In parallel, Fyber’s SDK iterates on the click redirect, and once it reaches a URL that leads to the App Store or is a non-redirect URL it stops redirecting.
Refer to the diagram below to see how Fyber handles Display Ad clicks. We use MRAID as an example, but all of the above display click methods follow the same flow:
What is the User Experience for Video and Display?
The user is not aware of any of the redirects, the user only sees the iOS StoreKit app content while the redirects occur in the app’s background
Note
Demand Partner feedback is highly encouraged, contact your account manager if you have any questions or recommendations.
Future Enhancements to Click Handling
Warning
The following is currently unsupported by Fyber. We are awaiting DSP feedback to determine if this solution works best for our partners.
For phase 2 support of SKAdNetwork click handling, Fyber suggests using the below specifications. We are also working closely with the IAB SKAdNetwork working group to collect DSP feedback on the below bid response extension for more clean and efficient click handling:
BidResponse.seatbid.bid.ext.link
Attribute | Definition | Type | Example |
---|---|---|---|
url | Landing URL of the clickable link. For SDKAdNetwork, should be omitted. | String: Required | “appname://path/to/location" |
urlfb | Fallback URL for deep link to be used if the URL specified in URL is not supported by the device. | String | “https://www.appwebsite.com/” |
trkr | List of third-party tracker URLs to be fired on click | String array: Required | "trkr": ["https://clickurl.dsp.com/sessionid"] |
ext.deepling | A boolean value indicating when a deep link is used | Boolean | 1 |
Custom Product Page
Fyber Marketplace supports Custom Product Pages (CPP), a feature available in iOS 15, as of SDK v8.1.5.
The Custom Product Pages feature allows app developers to create up to 35 versions of each App Store product page on iOS 15/iPadOS 15 and above to emphasize different features or content within their application.
For demand partners to leverage CPP with Fyber, they must pass back the PPID appended to the click URL (see Apple's example below).
Click URL with PPID: https://apps.apple.com/us/app/mountain-climber/id12345678?ppid=45812c9b-c296-43d3-c6a0-c5a02f74bf6e
With the bid response, the Fyber Marketplace SDK parses the query parameters of the click URL. Once the CPP identifier is found the SDK uses it with the StoreKit controller, thus the custom product page is shown to the user instead of the default AppStore page.
Fyber has enabled this feature on its test application on the App Store so you can easily test it with your creative: