Test your deep links

Before using deep links in a campaign, test them to make sure they’re set up correctly, open the intended in-app content, and are measured by Adjust. The test process depends on the link type and the user scenario: whether the user already has the app installed, is installing it for the first time, or should be reattributed.

This guide covers testing for:

  • Adjust deep links
  • Universal links
  • Direct deep linking
  • Deferred deep linking
  • Reattribution

If you run into issues during testing, check the Deep link FAQs for more information.

Before you begin

Use this checklist before testing any deep link.

For all platforms

  • Create the correct link for the environment you’re testing.
  • Create a dedicated test link so you can clearly identify whether the install or session is attributed as expected.
  • Test in the same environment where the campaign will run, especially for JSR links.

For iOS and universal links

  • Test the app version where the link has been implemented.
    • For example, if universal links are only implemented in a debug build, test on that build.
  • If you’re testing a debug iOS app and need help from Adjust Support, consider releasing a TestFlight version and inviting the team.
Note:

If your app uses Adjust’s SDK Signature, test on a real device. If you don’t use SDK Signature, you can test with an emulator.

Build a test page

Host your links in a web environment for testing. We recommend adding the link to a simple HTML page and opening that page on your test device.

This is required for universal links because they must be opened from Safari or Chrome and won’t work as expected if you paste the link directly into the browser address bar.

Example HTML:

<!DOCTYPE html>
<html lang="en">
   <head>
      <style>
         a {
         font-size: 100px
         }
      </style>
   </head>
   <body>
      <a href="https://app.adjust.com/abc123?deep_link=myamazingapp%3A%2F%2Fsuper%2Fexclusive%2Fpromotion">Deep Link</a>
   </body>
</html>

Use the appropriate link format:

Adjust deep link example:

<a href="https://app.adjust.com/abc123?deep_link=myamazingapp%3A%2F%2Fsuper%2Fexclusive%2Fpromotion">Deep Link</a>

Universal link example

<a href="https://example.go.link/category/product/67890?adj_t=abc123">Deep Link</a>

How to test

The test process is determined by the type of link and scenario it is used in. For example, your link should behave differently for a user who already has the app installed compared with someone who does not.

Test as an existing user

Use this test to check direct deep linking for a user who already has the app installed.

  1. Build a test page.
  2. Add your deep link or universal link to the page.
  3. Install the app on your test device.
  4. Open the app at least once. If the app has welcome screens, clear them. Log in if required.
  5. On your test device, open your browser and navigate to the test page.
  6. Click the link.

Expected result: The app opens automatically and sends you to the correct in-app location. If this works, your setup is ready to measure campaigns with this link.

Troubleshooting

  • If the app opens but not in the correct location, check that the app can handle the deep link path correctly.
  • For universal links, if the app doesn’t open, test the raw universal link. If it returns a 404 URL not found error, revisit the universal links integration setup.

Test as a new user

Use this test to check deferred deep linking for a user who doesn’t have the app installed. Deferred deep linking happens when a user clicks a deep link before they have the app installed. After they install and open the app, Adjust passes the deep link information so the app can send them to the intended in-app screen.

  1. Make sure the app isn’t installed on your test device. If it is, uninstall it.
  2. Forget your device in the Adjust Testing Console.
  3. On your test device, open your browser and navigate to the test page.
  4. Click the link.
  5. Download and install the app from the app store.
  6. Open the app.

Expected result: When the app opens, you’re sent to the specific in-app location defined in the deep link.

For universal links, create the link with the relevant advertising ID parameter before testing:

https://example.go.link/category/product/67890?adj_t=abc123&adj_idfa=8C6CBCOD-5F43-4765-A6E6-84DFF3D24707

Test Optimized Deferred Deep linking

If you have Optimized Deferred deep linking enabled, please follow the steps listed on the relevant page

Troubleshooting

If the deferred deep link doesn’t open the correct page, first test the same link as an existing user. If the existing-user test works, check whether the app scheme in AppView is correct for universal links, or whether the deep link parameter was cut off or incorrectly encoded for Adjust deep links.

Reset your device between new-user tests

If you run multiple deferred deep link tests, reset your device between tests to avoid previous clicks or installs affecting your results.

  1. Uninstall the app from your test device.
  2. Clear the advertising ID from Adjust.
  3. Install the app without clicking any links.
  4. Check the Adjust Testing Console and confirm the install appears as organic.
  5. If the install isn’t organic, repeat steps 1–3.
  6. Uninstall the app again.
  7. Clear the advertising ID again.

Test reattribution

Use this test to check whether an existing user can be reattributed through your deep link.

  1. Set the reattribution inactivity period to 0 days on your test link.
  2. Create a deep link without an advertising ID parameter.
  3. Clear your test device’s advertising ID from Adjust.
  4. Install the app without clicking any links.
  5. On your test device, open your browser and navigate to your test page.
  6. Click the deep link.
  7. Use the Adjust Testing Console to confirm the device is attributed or reattributed to the test link.
Important:

If you changed the inactivity window at app level, revert it to your preferred setting after completing the test.