Production SKAdNetwork postbacks remain version 3.0 instead of 4.0

We are investigating SKAdNetwork attribution for a production iOS app distributed through the App Store.

Bundle ID: com.stencilstudio.app App Store ID: 6760613806

We receive real winning SKAdNetwork postbacks directly from the App Store at our attribution endpoint. The raw Apple payloads consistently contain:

version: "3.0" campaign-id: 25 did-win: true

Some postbacks also include a valid fine conversion value, for example:

conversion-value: 1

However, we have not received postbacks containing:

version: "4.0" source-identifier postback-sequence-index coarse-conversion-value

The advertising network is Meta.

The advertised app is App Store distributed and has an iOS deployment target of 16.1.

We are trying to understand one specific technical point:

What determines whether the resulting production attribution postback is SKAdNetwork 3.0 or 4.0?

In particular:

Is the postback version determined by the SKAdNetwork version used by the ad network when signing the winning ad impression? Can anything on the advertised-app side, such as an entitlement, App Store Connect setting, build configuration, registration state, or SDK configuration, cause an attribution to remain on version 3.0? Is there any advertiser-side diagnostic that allows the advertised-app developer to determine which SKAdNetwork version the winning impression was signed with? Given that the postbacks themselves explicitly contain version: "3.0", is there any other condition we should verify on the advertised-app side before asking the ad network to investigate how its impressions are being signed?

Example raw postback received directly from the App Store:

{ "app-id": 6760613806, "fidelity-type": 1, "conversion-value": 1, "campaign-id": 25, "did-win": true, "version": "3.0", "ad-network-id": "v9wttpbfk9.skadnetwork", "redownload": false }

We can provide additional production postbacks if useful.

Production SKAdNetwork postbacks remain version 3.0 instead of 4.0
 
 
Q