Manual testing

📘

Note

We recommend using our SDK wizard integration tool for testing

To successfully complete the test in this document, you must:

Test iOS SDK integration

The test consists of:

  1. Simulating an ad click and installing the app:
  2. Inspection the conversion data of the install.

Apps that implement ATT

Follow these instructions if you implement App Tracking Transparency (ATT) in your app.
Attribution will occur via ID matching if the following conditions are met:

  • The attribution link contains the idfa parameter
  • ATT is implemented and:
    1. requestTrackingAuthorization is called before start (by utilizing waitForATTUserAuthorization)
    2. User consent is given.

Step 1: Simulate ad click
Simulate an ad click via an attribution link. Structure the attribution link as follows:

https://app.appsflyer.com/<app_id>?pid=<media_source>
&idfa=<registered_device_idfa>

Where:

  • app_id is your AppsFlyer app ID (including id suffix)
  • pid is the media source to which the install should be attributed to
  • idfa is the registered device's IDFA.

Example
If your app ID is id123456789, the attribution link might look like this:

https://app.appsflyer.com/id123456789?pid=conversionTest1&idfa=1A2B3C4D-9128-4597-1234- 
04E23D654321

Step 2: Install the app
Enable debug mode and install the app on a registered test device.

Step 3: Execute test
Proceed to inspect conversion data.

Apps that don't implement ATT

Step 1: Simulate an ad click
Simulate an ad click via an attribution link. Structure the attribution link as follows:

https://app.appsflyer.com/<app_id>?pid=<media_source>

Where:

  • app_id is your AppsFlyer app ID (including id prefix)
  • pid is the media source to which the install should be attributed to.

Example
If your app ID is id123456789, the attribution link might look like this:

https://app.appsflyer.com/id123456789?pid=conversionTest1

Step 2: Install the app
Enable debug mode and install the app on any device–since the IDFA used to register the device isn't available, device registration has no effect in this case.

Step 3: Execute test
Proceed to inspect conversion data.

👍

Tip

More often than not, tests using attribution links are performed more than once. That's why it's recommended to use one of the attribution parameters to "version" your tests–it makes it easier to understand which link triggered which conversion.

In the above example, the value of pid is conversionTest1. In consecutive tests, increment the value of pid to conversionTest2, conversionTest3, and so on.

Inspect conversion data

After simulating an ad click and installing the app, follow these steps to inspect the install's conversion data.

Step 1: Retrieve install UID
Once the app is installed, In the Xcode terminal, search for conversions.appsflyer. Look for the uid parameter and copy its value.

2452

Step 2: Inspect conversion data
Go to the conversion data test API and fill in the required fields:

  1. app-id: Your app ID
  2. device_id: paste the value of uid from step 1.
  3. devkey - Application's devkey. Learn here how to get it.

Then, click Try it! to execute the test.

Expected results
If ATT is implemented and user consent is given, the result is a 200 response similar to (truncated for readability):

{
    ...
    "af_status" = "Non-organic";
    ...
    "match_type" = id_matching;
    "media_source" = conversionTest1;
    ...
}

Otherwise, attribution occurs probabilistically and the result is a 200 response similar to (truncated for readability):

{
    ...
    "af_status" = "Non-organic";
    ...
    "match_type" = probabilistic;
    "media_source" = conversionTest1;
    ...
}

If the install isn't attributed, the result is a 200 response with the following payload:

{
    "af_message" = "organic install";
    "af_status" = Organic;
    "install_time" = "2021-08-23 06:59:51.194";
    "is_first_launch" = 1;
}

📘

Note

It might take up to 30 minutes for installs to appear in the dashboard.

📘

Note

It might take up to 30 minutes for the install to appear in the dashboard.