SKAdNetwork postback is an essential part of the SKAdNetwork framework. They are used to transmit aggregated ad attribution data in a privacy-preserving way. This includes Conversion Values that are used for advertising measurement and as an optimization signal for ad networks. It’s crucial for advertisers to understand how postbacks work.
What are SKAdNetwork Postbacks?
SKAdNetwork postbacks are notifications sent from Apple to an ad network’s server whenever an app install or in-app event is attributed to a specific ad campaign. These notifications contain limited information, such as the campaign ID and timestamp, and are designed to protect user privacy by not sharing any personally identifiable information.
How Do SKAdNetwork Postbacks Work?
SKAdNetwork postbacks work by leveraging a cryptographic signature to ensure the validity of the attribution data. When an ad is served, the advertiser includes a unique source identifier ID in the ad’s metadata. When a user installs or performs an in-app event within the app, the Apple sends a postback to an ad network’s server, which includes the same campaign ID.
Why Are SKAdNetwork Postbacks Important?
SKAdNetwork postbacks are important because they enable ad networks to optimize served traffic and provide advertisers with a way to measure the effectiveness even when users opted out from receiving tailored ads (via App Tracking Transparency pop-up). SKAdNetwork postbacks is the only data source for SKAdNetwork campaings.
SKAdNetwork postback example
{
"version": "4.0",
"ad-network-id": "com.example",
"source-identifier": "6724",
"app-id": 512939461,
"transaction-id": "1bafb7b5-0570-41b5-gbe4-fe71dedf1e30",
"redownload": false,
"source-domain": "example.com",
"fidelity-type": 1,
"did-win": true,
"conversion-value": 63,
"postback-sequence-index": 0,
"attribution-signature": "MEUCIGRmSMrqedNu6uaHyhVcifs118R5z/AB6cvRaKrRRHWRAiEAv96ne3dKQ5kJpbsfk4eYiePmrZUU6sQmo+7zfP/1Bxo="
}
SKadNetwork postback parameters:
- version – version of the SKAdNetwork, defines the postback format and type of transmitted data
- ad-network-id – unique id provided by Apple at the time of registration of ad network with SKAdNetwork. The list can be accessed in Ad monetization guide.
- source-identifier – before SKAN 4 known as campaign id, can consist of 2-4 digits. The number of digits will depend on the postback data tier. We are going to talk about it below in a separate section.
- app-id – App Store’s id of the app where the user was acquired. You can cross reference the app if you add the id to the App Store URL using the following format https://apps.apple.com/us/app/id512939461. In this case, you can see that the source app is Subway Surfers.
- transaction-id – is an id generated by Apple for every unique transaction. It’s used for de-duplication.
- redownload – shows whether or user downloaded the app for the first time. The parameter can be populated by one of these two values:
- true
- false
- source-domain (for web ads) – indicates the website domain where the user was acquired.
- source-app-id (for in-app ads) – App Store’s id of the app where the user was acquired. You can cross reference the app if you add the id to the App Store URL using the following format – https://apps.apple.com/us/app/id512939461. In this case, you can see that the source app is Subway Surfers.
- fidelity-type – shows whether or not the user clicked on or viewed the ad. The parameter can be populated by one of these two values:
- ‘0’ means a view,
- ‘1’ indicates a click.
- did-win – indicates if the install was attributed to the source-identifier and ad-network-id from the postback. The parameter can be populated by one of these two values:
- true
- false
- conversion-value – Read more about Conversion Values on the dedicated page . 0-63 (fined-grained) is going to be sent for high postback data tiers. If the postback data tier is not high enough, a coarse conversion value is going to be sent. There are there available values for coarse conversion values:
- low
- medium
- high
- postback-sequence-index – Indicates the order of the postback. More about this is in the separate section below. The possible values for this parameter are
- ‘
0
‘ – first postback - ‘
1'
– second postback - ‘
2'
– third postback
- ‘
- attribution-signature – cryptographic signature to ensure the security of transmitted data. See more on the official Apple documentation.
What is the postback data tier?
The postback data tier relies on SKAdNettwork Crowd anonymity to determine what dataset to include in the postback.
It takes into account the number of users (crowd size) associated with the app or domain displaying the ad, the advertised app, and the hierarchical source identifier the ad network provides. Apple is not providing the exact number of how many installs advertisers need to reach each tier. However, this can be determined experimentally by advertisers. Bear in mind the number is not static and can change over time. iSkadnetwork documents the number of crowd size anonymity per ad network. Here are Unity Ads and Google as an example.
Levels of Postback data tiers
Advertisers receive the following per level:
Tier 0
- A source identifier with two digits
- No conversion values in the postback
- No further postback
Tier 1
- A source identifier with two digits
- The coarse-grained conversion value
Tier 2
- A source identifier with two, three, or four digits in the first postback
- A source identifier with two digits in postbacks 2 and 3
- The fine-grained conversion value in the first postback
- The coarse-grained conversion value in postbacks 2 and 3
Tier 3
- A source identifier with two, three, or four digits in the first postback
- A source identifier with two digits in postbacks 2 and 3
- The fine-grained conversion value in the first postback
- The coarse-grained conversion value in postbacks 2 and 3
- The source-app-id (for in-app ads) or source-domain (for web-to-app ads)
How many SKAdNetwork postbacks are there?
Starting from SKAdNetwork 4, ad network can potentially receive 3 postbacks. When the postbacks are send are determined by the conversion windows:
- First postback – 0-2 days
- Second postback – 3-7 days
- Third postback – 8-35 days
Сonversion window is the date range when the conversion event takes place. Additionally, advertisers need to take into account random postback timer that Apple applies to preserve user’s anonimity. The duration of the randome timer:
- First postback: 24-48 hours
- Second and third postback: 24-144 hours
How to get SKAdNetwork postbacks sooner?
In order to receive conversion postback sooner advertisers can lock the conversion values before conversion window elapses.
An app developer needs to call updatePostbackConversionValue(_:coarseValue:lockWindow:completionHandler:)
to lock conversion value before the conversion window ends.
After receiving a locked conversion value, SKAdNetwork does not wait until the end of conversion window. The postback needs only to go through the random postback delay before it’s going to be send to ad network and advertiser.
How to set up direct SKAdNetwork postback?
Advertisers can also set up to receive a copy of the postback to their own server or MMP. This is often required to validate ad networks’ reporting and gain access to additional data (some ad networks are not sharing all the data they receive from Apple. Google is a good example of that).
In order to send the postback copy to the advertiser, app developer needs to define the endpoint in the info.plist filter – official instruction from Apple. The same endpoint is used by MMPs for reporting on their side.
The copies of the postbacks are sent only for iOS 15+ users.
This form is currently undergoing maintenance. Please try again later.