Tool: Deep Link Tester

Deep Link Tester

Validate and debug deep links for iOS, Android, and web. Parse deep link URLs, detect platforms, and identify issues before launching campaigns.

Interactive Tool

Test your deep link

Supports iOS Universal Links, Android App Links, custom schemes, and regular web URLs

Why Test

Why test deep links?

Deep link testing is essential to ensure your app links work correctly across iOS, Android, and web. Broken deep links frustrate users and damage your campaign performance.

Consequences of broken deep links

  • Users land on wrong screen or home page
  • Campaign tracking data is lost
  • Lower conversion rates and engagement
  • Poor user experience and app uninstalls

Benefits of tested deep links

  • Catch issues before launching campaigns
  • Ensure campaign tracking works correctly
  • Improve conversion rates and user experience
  • Verify platform-specific behavior

When to test deep links

  • Before launching any campaign with deep links
  • When creating new deep link schemes or routes
  • After updating your app's deep link configuration
  • When adding new campaign parameters or UTM values
Common Issues

Common deep link issues

Missing AASA File (iOS)

The Apple App Site Association (AASA) file is required for Universal Links to work on iOS. Without it, links open in Safari instead of your app.

Solution:

Host an AASA file at https://yourdomain.com/.well-known/apple-app-site-association

Use the AASA Validator tool →

Missing assetlinks.json (Android)

Android requires an assetlinks.json file to verify the association between your app and domain. Without it, App Links won't work.

Solution:

Host an assetlinks.json file at https://yourdomain.com/.well-known/assetlinks.json

Use the assetlinks.json Validator tool →

Using HTTP Instead of HTTPS

iOS Universal Links and Android App Links require HTTPS. HTTP links won't work for verified deep linking and will fall back to browser opening.

Solution:

Always use https:// for deep links, not http://

Incorrect Scheme Name

Custom scheme deep links (myapp://) must match exactly the scheme registered in your app's configuration. Typos or mismatches cause the app not to launch.

Examples:

  • Your app registers: myapp
  • Deep link uses: myapp:// ✓ Correct
  • Deep link uses: my-app:// ✗ Won't work

Spaces in URLs

URLs with spaces are invalid and won't be recognized by browsers or apps. All spaces must be encoded as %20.

Example:

Wrong: myapp://products/summer sale
Correct: myapp://products/summer%20sale
How To Debug

How to debug deep links

Follow these steps to identify and fix deep link issues:

Step 1: Test with the Deep Link Tester

Paste your deep link URL into this tool to see if it parses correctly and check for obvious issues.

Look for:

  • • Invalid URL format
  • • Missing or incorrect components
  • • UTM parameter capture issues

Step 2: Verify Platform Configuration

For iOS: Check if your AASA file is properly configured and accessible.

Validate your AASA file

For Android: Check if your assetlinks.json file is properly configured and accessible.

Validate your assetlinks.json

Step 3: Test on Real Devices

The best way to test deep links is on actual iOS and Android devices. Install your app and try tapping the deep link from various sources (email, SMS, browser, etc.).

Note: Some deep link functionality (like Universal Links on iOS) only works when tapping links from external apps or browsers, not when testing in Xcode.

Step 4: Check App Logs

Review your app's logs to see if the deep link is being received by your app and parsed correctly. Add logging to your deep link handling code:

// In your app's deep link handler console.log('Received deep link:', url); console.log('Parsed parameters:', params); console.log('UTM source:', params.utm_source);

Step 5: Verify Analytics Integration

Make sure your analytics SDK is properly initialized and configured to capture deep link parameters. Test a deep link and check if the UTM data appears in your analytics dashboard.

Related tools and guides

Continue debugging and optimizing your deep links:

FAQ

Frequently asked questions

How do I test a deep link?

Paste your deep link URL into this tester tool, click "Test Link", and the tool will analyze it. It will show you the parsed URL components, detected platform, and any potential issues.

What are common deep link issues?

Common issues include: using http:// instead of https://, missing AASA file for iOS, missing assetlinks.json for Android, incorrect scheme names, spaces in URLs, and missing app configuration.

What is an AASA file?

The Apple App Site Association (AASA) file is a JSON configuration file that you host on your server at /.well-known/apple-app-site-association. It tells iOS that your app is associated with your domain, enabling Universal Links.

What is assetlinks.json?

The assetlinks.json file is an Android configuration file that you host on your server at /.well-known/assetlinks.json. It tells Android that your app is associated with your domain, enabling App Links.

Why isn't my deep link opening the app?

This can happen for several reasons: the app is not installed, the deep link scheme is not registered in the app manifest, the domain is not verified for Universal Links/App Links, or there's a URL encoding issue. Use this tester to identify the problem.

Debug Deep Links with Redirectly

Test deep links in real-time, track performance, and validate your app's deep linking configuration. Get a free API key.