SKAdNetwork: Error while updating conversion value

Hello!

I make use of the new iOS 15.4 SKAdNetwork.updatePostbackConversionValue feature:

SKAdNetwork.updatePostbackConversionValue(0) { error in
                if let error = error {
                    print(error.localizedDescription)
                }
            }

I am not sure why, but I always see this error message in the console:

SKAdNetwork: Error while updating conversion value: Error Domain=SKANErrorDomain Code=10 "(null)"

The operation couldn’t be completed. (SKANErrorDomain error 10.)

Any idea what’s going on there? What does Error Code 10 mean? Couldn't find anything in the documentation about that so far.

I have the NSAdvertisingAttributionReportEndpoint key with domain (https://api2.branch.io/v1/skadnetwork/advertiser_app) in my .plist.

From SKANError.Code.unknown: An unknown error occurred. case unknown = 10

If this error appears, continue processing the ad; an ad impression may succeed despite this error.

I am also seeing that error when calling updatePostbackConversionValue. Is this related to the app not being installed from the app store but directly from XCode/an .ipa file? Will it go away once the app is released and installed from the app store instead? The documentation is not really helping as there isn't any ad impression going on at all...

same error + 1

Same error + 1

Same error (SKAN 4.0)

ditto ... +1

So, my current experience with this.

I am advertising my ios app with Google Ads app campaign. Whenever user does this one thing on the app, I log an event to Firebase/Google Analytics. That event there shows up fine with proper count.

Then I export this event to Google Ads, and also make a SKAdNetwork mapping. This event shows up in Google Ads as a conversion action definition, but with status "No recent conversions".

I want it to show "Active".

I have also set AppsFlyer to receive winning SKAN postback copies (its a bit easier to read them there in the "SKAN Overview" section). I do see the app instals there, meaning I am getting SKAN postback copies, but the column "Null conversion value rate" is always 100% - meaning, each received postback has conversion value as NULL.

Now, it is my understanding, that in order to update that Conversion Value (CV), we have 2 approaches:

  1. Directly:
SKAdNetwork.updatePostbackConversionValue(5) { error in
    if let error = error {
        // Report production error to Sentry
    }
}
  1. Indirectly:
SKAdNetwork.updatePostbackConversionValue(3, coarseValue: .high, completionHandler: { error in
    if let error = error {
        // Report production error to Sentry
    }
})

It is my understanding that Firebase/AppsFlyer and other libraries call one of those methods.

So I am trying to update that value manually to take 3rd party libraries out of the equation. The 2nd approach is what I have currently tried (the advantage of it is that it can later hold more information).

A couple of days have passed and, unfortunately I still receive SKAN postbacks with null CV values (my install base is couple hundred, so CV values shouldn't be withheld by Apple).

However - due to me now calling the update method manually, I also log potential errors to Sentry.

And what do you know - I get "SKANErrorDomain: Code: 10", which, as already mentioned, means "unknown".

Well - shit.

What now?

SKAdNetwork: Error while updating conversion value
 
 
Q