URL Scheme Testing Guide

How to Test URL Scheme and Deep Links on Mobile

URL Scheme and deep link bugs are hard to debug because the failure can happen in the browser, WebView, operating system, app registration, redirect chain, or callback URL. This guide gives you a real-device workflow for testing each layer without guessing.

DebugAnywhere tools menu for URL and WebView debugging on iPhone
Start URL Scheme testing from the exact mobile page or WebView entry point where the redirect is triggered.

Quick answer: how do you test URL Schemes?

Test a URL Scheme by separating the direct scheme launch from the full redirect flow. First open the scheme directly on the device. Then test the same scheme from a mobile browser, from the target WebView page, and after every redirect that can modify query parameters. Confirm whether the app is installed, whether the scheme is registered, whether the callback URL keeps its state, and whether the WebView blocks external navigation.

When URL Scheme testing matters

  • A payment, login, OAuth, or SSO redirect fails only on mobile.
  • A button opens the app from Safari but not from an in-app WebView.
  • The target app opens but loses callback parameters.
  • Android and iOS handle the same link differently.
  • A fallback web page appears even when the app is installed.

URL Scheme testing workflow

1. Test the raw scheme first

Begin with the smallest possible URL. If the raw scheme does not open the app, the problem is not the web page. Check app installation, scheme registration, platform rules, and whether the scheme was typed or encoded correctly.

myapp://open
myapp://open?screen=profile&id=123

2. Test the encoded URL from a tool page

Use the URL Scheme testing tool to encode, decode, and open test links. This avoids mistakes caused by double encoding, missing separators, or unsafe characters in query values.

3. Test the full mobile page flow

Open the real page on the phone and trigger the same button or redirect the user will use. The full flow may add tracking parameters, login state, callback URLs, or platform-specific fallback behavior.

4. Compare browser and WebView behavior

Safari, Chrome, and an app WebView can handle external navigation differently. If the scheme opens in Safari but not in a WebView, inspect whether the host app intercepts navigation, blocks unknown schemes, or requires a whitelist.

5. Verify callback state

The target app may open successfully but fail to return the user to the expected page. Log every redirect URL and make sure the callback keeps tokens, state, order IDs, and original page parameters.

Common URL Scheme examples

PatternExampleWhat to verify
Open app screenmyapp://product?id=42App opens and navigates to the expected screen
Web callbackmyapp://pay?callback=https%3A%2F%2Fexample.com%2FdoneCallback URL survives encoding and redirects
Fallback URLhttps://example.com/open?target=myapp%3A%2F%2FhomeFallback only appears when the app cannot open

Common URL Scheme failures

SymptomLikely causeNext check
Nothing happensScheme is not registered or WebView blocks external navigationTest raw scheme and WebView navigation policy
App opens wrong screenMissing query parameter or route mismatchDecode final URL and inspect app route mapping
Callback failsState parameter lost in redirect or encodingTrace each redirect URL
Works in Safari, fails in WebViewHost app intercepts, blocks, or rewrites navigationCompare browser and WebView behavior

URL Scheme testing checklist

  • Is the target app installed on the test device?
  • Does the raw scheme open outside the web page?
  • Is the URL encoded exactly once?
  • Does the WebView allow external scheme navigation?
  • Are callback, state, and order parameters preserved?
  • Does fallback behavior match installed and not-installed states?

Test mobile links with DebugAnywhere

DebugAnywhere helps you open test URLs on real devices, compare WebView behavior, inspect runtime state, generate QR codes, and validate URL Scheme flows from the same mobile environment where the bug appears.