Deep Link Tracking on Mobile App using Adobe Analytics

What is Deep Linking in Mobile app?

Deep linking is the use of a hyperlink that links to a specific, generally searchable or indexed, piece of web content on a website. In case of mobile app, Deep linking consists of using a uniform resource identifier that links to a specific location within a mobile app rather than launching the app. Deferred Deep Linking allows users to deep link to content even if the app isn’t already installed.(source- wikipedia)

Example- TestApp://menshoes/123456

Why do we need Deep Linking?

Many companies encourage users to view the content from search engine/email marketing or social media platform in the Mobile app rather than creating an another of web browser view. Recently, I got an email from Instagram as-


When I clicked “Open in App” button then this picture opened in my Instagram app instead of requesting me to log in again on a mobile web browser. It is a challenge for marketers to “bucket” a user in an appropriate “retention channel”. Spending money in marketing of the products on mobile app are tricky. So, It is important to track the “acquisition” of such users.

How It Works ?


When user redirects to app-store in case they don’t have app installed on the mobile then that type of link is termed as deferred links. It will allow user to download the app on their mobile.

Track Deep Links on Mobile App

Follow the steps below to track deep link urls using adobe analytics:

  1. To enable deep linking, go to the Xcode project. In the URL Types section, click on the + button, and then add an identifier and a URL scheme. Ensure that the identifier and URL scheme you select are unique. Take note of the URL scheme you enter, as this is how iOS knows to open a link in your app.
  2. Tag all your campaigns that redirects to Mobile App. Use the URL scheme from the step-1. Just try the scheme on your browser to confirm that the deep link is working- “your-url-scheme://”
  3. Handling the opening URL- Ask your developer to override appropriate method. In case of launch, need to override appdelegate. Add (key,value) context data with source name along with trackAction call.
  4. Map that context data using processing rule to an eVar.

For more details on approach and custom code, feel free to reach out to


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s