SKAdNetwork Testing via DSP Test App

This is a guide for DSPs to end-to-end test their SKAdNetwork setup on Digital Turbine to ensure installs with Apple's SKAdNetwork framework can be tracked properly. DT has two ways for DSPs to test SKAdNetwork on DT's DSP Test App:

  • Option 1: Manually test SKAdNetwork bid response setup
  • Option 2: Programmatically test your SKAdNetwork bid response setup by triggering a bid request, response to your DSP integration

Option 1 - Manual

Follow the instructions below to test your setup:

  1. Install DT's latest iOS IPA file on your device. This ensures your SKAdNetwork ID is present on our test app
  2. Open DT's DSP Test App web tool and selectScreen_Shot_2021-03-11_at_1.22.34_PM.png 
  3. Click the Screen_Shot_2021-03-09_at_12.28.19_PM.pngbutton to add a new creative
  4. Add a description for your creativeScreen_Shot_2021-03-09_at_12.59.08_PM.png
  5. Add the following extra properties by clicking the + button Screen_Shot_2021-03-09_at_12.59.16_PM.png next to the search

  6. Add the following Key-Values:
    • Source App: If you use source app ID = 0 - error event 851 is returned. Please ignore this error and check if the postback was sent after proceeding with steps 7-17
    • Nonce: Nonce value must be unique each time you test and cannot be zero's. We suggest using  nonce =str(uuid.uuid4()) to generate a new nonce every time you test 
    • Signature: Valid signatures are usually 72 -76 characters when using p192 private key with p192 constant
    For Testing SDKAdNetwork v2.0 / 2.1
    Key Value
    bid.ext.skadn.sourceapp Your source app or 0
    bid.ext.skadn.itunesitem Your itunesitem Your SKAdNetwork ID
    bid.ext.skadn.nonce Your nonce
    bid.ext.skadn.signature Your signature
    bid.ext.skadn.version 2.0 or 2.1
    bid.ext.skadn.campaign Your Campaign ID
    bid.ext.skadn.dfs Enter “a” to override DT's SKAdNetwork setup with your own
    bid.ext.skadn.timestamp Your timestamp
    For Testing SKAdNetwork v2.2

    Using a "Fidelity" based bid response:

    Key Value
    bid.ext.skadn.sourceapp Your source app or 0
    bid.ext.skadn.itunesitem Your itunesitem Your SKAdNetwork ID
    bid.ext.skadn.version 2.2
    bid.ext.skadn.campaign Your campaign ID
    bid.ext.skadn.dfs Enter "a" to override DT's SKAdNetowrk setup with your own

    Add the following to test a single "fidelity" type (SDKdImpression or SKAdNetwork for StoreKit:

    Key Value
    bid.ext.skadn.fidelities[0].nonce nonce
    bid.ext.skadn.fidelities[0].signature Signature
    bid.ext.skadn.fidelities[0].timestamp Timestamp
    bid.ext.skadn.fidelities[0].fidelity When testing SKAdImpression, enter a vlaue of 0. When testing SKAdNetwork for StoreKit, enter a value of 1

    Add the following to test both "fidelity" types together:

    Key Value
    bid.ext.skadn.fidelities[0].nonce The nonce for SKAdImpression Fidelity
    bid.ext.skadn.fidelities[0].signature The signature for SKAdImpression Fidelity
    bid.ext.skadn.fidelities[0].timestamp The timestamp for SKAdImpression Fidelity
    bid.ext.skadn.fidelities[0].fidelity Enter a value of 0. This captures your SKAdImpression fidelity
    bid.ext.skadn.fidelities[1].nonce The nonce for StoreKit Fidelity
    bid.ext.skadn.fidelities[1].signature The signature for StoreKit Fidelity
    bid.ext.skadn.fidelities[1].timestamp The timestamp for StoreKit Fidelity
    bid.ext.skadn.fidelities[1].fidelity Enter a value of 1. This captures your StoreKit fidelity
    1. Click the checkbox after adding each Key-Value is entered
    2. After adding 5 properties, adjust the rows from 5 rows to 10 rowsScreen_Shot_2021-03-09_at_12.32.30_PM.png
    3. Paste in your ad markup in the bottom grey box
    4. Click on the blue Save button at the bottom of the screen Screen_Shot_2021-03-09_at_12.59.50_PM.png
    5. Open the DT Test App from your mobile device
    6. Scan the QR code that just popped up after saving your creative

    7. On the Test App, click Load Ad, then click Show Ad
    8. Click on the ad’s CTA button
    9. Install the app on the App Store
    10. You should receive a postback to your designated SKAdNetwork endpoint, if the bid response has been configured properly

    Using Apple’s SKAdNetwork Profile shortens the conversion value update and postback window from 24-48 hours to 5-10 minutes.

    The technical setup of Option 1, allows you to:

    • Manually configure data on the web tool
    • Send data to DT's Test App by scanning the QR code
    • Send data to DT's servers, which ping our internal bidder
    • By adding bid.ext.skadn.dfs to the Key/Value, you are able to override DT's internal SKAdNetwork setup and allow our SDK to fire your SKadNetwork parameters, so you'll receive postbacks to your endpoint 

    Option 2 - Programmatic

    Follow the instructions below to test your setup:

    1. Install DT's latest iOS IPA file on your device. This ensures your SKAdNetwork ID is present on our test app
    2. Set up a test campaign with SKAdNetwork on your DSP
      • Target your test devices on the campaign
      • Test devices must have DT's latest test app version and iOS 14+ installed
      • We recommend installing the SKAdNetwork profile on your test device, which reduces the conversion value and postback window to 5-10 minutes from 24-48 hours
      • If you use the SKAdNetwork profile, you must set source app to 0
    3. Open DT's DSP web tool and select Screen_Shot_2021-03-11_at_1.22.38_PM.png
    4. Open DT's DSP Test app on your device and tap the QR code icon

    5. Scan the QR code on the web tool
      • This triggers a sample bid request to your DSP
      • Your DSP is the only participant in the auction
      • Your DSP should return an SKAdNetwork bid response using parameters since the campaign is targeting the test device 
    6. Tap on Interstitial and then Load Ad, and then Show Ad
    7. Click on the ad's CTA and install the app on your test device
    8. You should receive an install notification from Apple at your designated endpoint, if your setup is correct
    9. If you receive an 851 error, reach out to your dedicated account manager who should be able to pinpoint the parameter(s) causing the error with DT's debugging tools

    Feel free to reach out to the Digital Turbine team if you have any questions along the way!

    For details of the Marketplace Demand Test App, click here.

Back to Top ⇧