Search specific term/phrase surrounded by double quotes. e.g. “deep linking”
Exclude records that contain a specific term prefixed with a minus. e.g. Android -Firebase

SEO App Attribution

Attribute downstream app events from organic search traffic using Branch.

Overview

Branch is a true cross platform solution working in a mobile ecosystem which is notoriously hard to make sense of when the users are interacting with dozens of channels and are ending up in the app. Some customers see Branch as “GA for Apps” and rely on our data to be as complete as possible when it comes to seeing where their users are coming from and which channels are driving the performance.

While we have a great coverage of Paid and Organic channels where a Branch link can be used or attribution can be retrieved, one key missing component of a user journey which we would not be able to report on is Organic Search.

To satisfy the recommended requirement of deep linking from Google Ads our customers are recommended to enable the native Universal Links / App Links on their top level domain. This would also directly impact the organic search results which means less visibility to the SEO team. In addition, potential transactions which would previously be accounted for on web tools now show up in app analytics as organic. Branch's SEO App Attribution of mobile search engine traffic exposes the app's organic user blind spots and completes the picture for marketing campaigns.

Organic Search is responsible for more than 20% of commerce traffic generation on average so is a major source of visits and revenue which we would be missing.

How does it work?

  1. User clicks on a link from a search engine (ex. Google, Yahoo, etc.).
    • The Links/URLs are indexed through the search engine.
  2. Branch collects specific signals on app open.
  3. The Branch SDK simulates a click.
  4. Branch attributes app users to the organic search results.

What does it look like?

The Branch Dashboard will surface all of your channels and campaigns. Once SEO App Attribution is enabled, you will be able to view Organic Search performance on the Summary Reports

👍

Dashboard Reports

For a full guide on Dashboard Reports and how to customize them, view our guide here.

Analytic Tags

The Branch Dashboard and Data APIs will report Organic Search traffic through the following tags:

Analytic Tag

Value

Example

Data API Field

~feature

organic search

organic search

last_attributed_touch_data_tilde_feature

~channel

search engine name

  • Google
  • Bing
  • Yahoo
  • Naver
  • Ask
  • DuckDuckGo
  • Yandex
  • Daum

last_attributed_touch_data_tilde_channel

~organic_search_url

organic search URL

    example.com/category/sectionlast_attributed_touch_data_tilde_organic_search_url

    Prerequisites

    In order to enable SEO App Attribution, you need to have completed the following:

    1. Created a Branch Dashboard.
    2. Enabled SEO App Attribution for your Branch account.
    3. Implemented the latest version Branch SDK into your mobile app (iOS | Android)

    Integration Guide

    🚧

    Developer Required

    iOS & Android developers are required to enable SEO App Attribution.

    1. Verify that your Branch iOS SDK version is v1.39.4+

    2. Verify that your Branch Android SDK version is v5.0.12+

    3. Enable Universal / App Links on the top-level brand domain.

    iOS Universal Links and Android App Links are required on your top-level domain in order for organic search traffic to deep-link users to in-app content.

    👍

    Universal Links & App Links

    In order to enable SEO App Attribution, you only require either iOS Universal Links or Android App Links enabled on your top-level domain (having both Universal Links and Android App Links is recommended). Enablement of the deep linking mechanism will enable attribution for that platform. For example, if you enable Universal Links and not Android App Links, SEO App Attribution will only show data for iOS and not Android.

    Additionally, when setting up Universal Links & App Links, please keep in mind specific inclusions/exclusions paths that determine which links open the app & route to content. Some links (ex. password reset, privacy policy, etc.) should be web-only links that should not open the app.

    4. Enable SEO in Branch

    In the Branch Dashboard, navigate to the SEO page on the left. If you're already logged into the Branch Dashboard, you can also click here to go there directly.

    Click the Get Started button

    5. Enter SEO Domains

    In the field, enter your SEO domains. List each of the domains you want to enable SEO Attribution for.

    Wildcard characters are not supported, so you need to specify the exact domain, like "www.branch.io".

    Make sure you include the URL scheme. For many URLs, this is the www part.

    6. View Analytics

    Once complete, you can view your SEO App Attribution analytics in its own section in the Branch Dashboard called SEO Analytics. Here you'll be able to measure Trends and Performance through the graphical charts and tables respectively.

    👍

    Analytics

    SEO App Attribution has the same reporting capabilities as Branch's Universal Ads product. For a detailed overview of ad analytics and how to customize them, view our guide here.

    Organic Search URL

    You can also utilize Branch's Dashboard Reports or Exports (through the Dashboard Custom Exports or through the Custom Exports API) to obtain the organic search URL for your conversion.

    • For Dashboard Reports, you'll need to add the Organic Search URL column to the events table.
    • For Dashboard Custom Exports, you'll want to make sure you are exporting the Organic Search URL Column.
    • For Custom Exports API, you'll want to make sure you are exporting the last_attributed_touch_data_tilde_organic_search_url field.

    Testing & Troubleshooting

    Checking Universal/App Links

    If you have completed all the setup steps above and are still running into issues, you should first verify that iOS Universal Links and Android App Links are working properly.

    1. Grab a URL that would look like a search result. Ex. https://www.skyskanner.com/
    2. Copy/paste that URL into a Universal/App Links compatible editor (ex. Slack)
    3. Make sure that the app is installed.
    4. Click on the link from the compatible editor.
    5. Does the app open?
      • Yes: Then continue.
      • No: Then there's an issue with your Universal or App Links setup. Please refer to iOS and/or Android docs.
    6. [Advanced] Use Charles Proxy to double-check the domain being sent to Branch in the v1/open request.
      • Look for universal_link_url and android_app_link_url
      • Is the URL present and does it match the original URL you clicked on?
        • Yes: Then Universal/App Links is set up properly.
        • No: Then there's an issue with your Universal or App Links setup. Please refer to iOS and/or Android docs. Make sure the developer did NOT exclude some specific URLs from being sent to Branch.

    Checking the Referrer Domain

    In order for Branch to attribute conversions from SEO, you should confirm that the SDK is receiving the correct signals.

    1. Find a Google search result for the app that matches the URL pattern you registered with Branch.
    2. Click on the Google search result.
    3. Does the app open?
      • Yes: Then continue.
      • No: Then there's an issue with your Universal or App Links setup. Follow the troubleshooting steps for Checking Universal/App Links.
    4. [Advanced] Use Charles Proxy to double-check the domain and referrer being sent to Branch in the v1/open request.
      • Look for initial_referrer. Does it match google.com?

    Note: Chrome is not supported on iOS.