Branch 方法概述


There are several mechanisms Branch makes available for customers to pass data through to the app and attribute app sessions back to the source (where customers determine that such use is consistent with applicable law and relevant platform policies). We always use the method with the highest confidence rate. When we are 100% confident, the deep link data will contain the variable +match_guaranteed=true



When implementing data-sensitive use cases (ie auto-login, PNR visualization), the mobile app logic should parse the flag +match_guaranteed from the SDK initialization callback and deep link users only when its value is true

Post-iOS 14, +match_guaranteed will usually be false on install events, unless users opt-in to IDFA collection.



If the app is currently installed on the phone, and you've configured your Branch links with your app's URI scheme (myapp://) or to use Universal or App Links, we will open the app immediately and pass a click identifier through to our native library. This click identifier is then sent to the Branch servers to retrieve the dictionary of data associated with the link.

For example, we'd call myapp://open?link_click_id=123456 to open the app immediately. The Branch native library parses out link_click_id: 123456 and passes it back to the Branch API to retrieve the data dictionary associated with that link click.

Deferred Deep Linking using iOS NativeLink™

With the introduction of iOS 15 & iCloud+ Private Relay, Branch released deferred deep linking via the iOS pasteboard. By enabling NativeLink™, you will be able to guarantee deferred deep linking to work with 100% accuracy (+match_guaranteed=true). Users will be presented with a Deepview that enables users to continue their user experience in an app by clicking on the main CTA.


To implement iOS NativeLink™, follow the instructions in our developer documentation.

Install Referrers

An Install Referrer is a mechanism to support deterministic matching/attribution on Android devices downloading apps in specific app stores.


Branch Android SDK

In order to have support for Install Referrers, make sure your Branch Android SDK is updated to the latest version and is implementing the required dependencies.

How do Install Referrers work?

  1. Advertiser integrates with App Stores (Google Play, Huawei, Samsung, & Xiaomi) and releases the app.
  2. Advertiser delivers an app download ad with an install referrer on the specific App Store.
  3. Publisher app requests and displays the ad.
  4. User clicks the ad in the app and can choose to download and install the advertiser's app.
  5. The App Store writes the install referrer to an API
  6. The Branch SDK initializes and collects the referrer from the App Store via API
  7. The app install event is reported in Branch's attribution system.

Supported Install Referrers

Install Referrer


Google Play Store

  • Google Play App v8.3.73+

Huawei AppGallery

  • EMUI v3.0+
  • HMS Core v2.6.5+

Samsung Galaxy Store

  • Galaxy Store v4.5.20.1+

Xiaomi GetApps

  • GetApps v22.6.0.0+

跨 Branch 平台的设备 ID

当用户与集成了 Branch SDK 的 App 和网站互动时,Branch 的归因引擎算法得到了改进,该算法可以在 Branch Link 点击时收集的浏览器 Cookie 和用户与 App 互动时收集的设备标识符之间建立连接。

当用户点击 Branch Link 以打开使用 Branch SDK 的 App 时,如果我们先前看到平台上的该用户点击了 Branch Link,并且已经将其 Branch 浏览器 Cookie 与其设备 ID 进行配对,则 Branch 可以确定性地归因该用户。这意味着当他们安装该 App 且设备 ID 可用时,我们可以 100% 确信他们是点击该设备浏览器上的 Branch Link 的同一用户。

随着数以亿计 App 用户使用 Branch 点击 Branch Link,我们的平台继续建立更多的浏览器与 App 之间的连接,您可以通过我们的归因引擎提高归因准确性,该归因引擎会在每次在浏览器和 App 之间连接终端用户时进行优化..



自定义用户登录Branch's mobile & web SDKs allow developers to assign their own custom user IDs to web & app events, which we can then use as an additional data point to attribute events back to the same user. Branch takes great care to educate all developers to never use personal identifiers in these fields, but when available, these allow us to augment our methodology with anonymous data specific to the app using them.
平台整合Branch has direct integrations with Apple, Facebook, Google, Twitter, and Snap, where the platforms will directly confirm if a specific user engaged with an ad on their platform. Branch is then able to compare these touch points against all other user interactions sourced by Branch links, to enable a greater level of attribution accuracy across organic & paid platforms.
SKAdNetworkBranch 支持 Apple 的 SKAdNetwork 框架进行 campaign 级的归因。尽管这不会显示用户级别的洞悉,但由于所有 app store 的安装均已在 Apple 的 campaign 层级进行了验证,因此这些数字具有100%的准确性。


Predictive Modeling engine across the Branch Platform

当用户点击 Branch Links 以打开使用 Branch SDK 的 App 时,我们的归因引擎可能已将其 Branch 浏览器 Cookie 与设备 ID 配对,以确定性地归因该用户。但是,即使没有可用的设备 ID,我们也可以将浏览器 Cookie 与其他关联的设备元数据(例如 IP 地址和用户代理)配对,以确定性地归因该用户。

随着数以亿计的 App 用户使用 Branch 点击 Branch Link,我们在将 App 行为连接回浏览器触点时,可以通过这些连接驱动我们的预测建模引擎,以提供更高的归因准确性。


Branch collects limited device-level information when a user is in the browser -- via a click on a Branch link -- and then after they open the app. This includes IP Address (including v6), OS, OS version, device model, user agent and other parameters described in our Privacy Policy.



如果您担心使用相同的匿名 metadata可能会混淆不同的用户,那么如果正在考虑两组相同的 metadata,则可以选择让 Branch 不执行任何操作。

On the Dashboard's Link Settings page, under advanced options, you should set Match Type to Unique


You can also modify the attribution windows for any integration by following these instructions in the dashboard. Attribution windows essentially define your acceptable timeframes for how long any downstream conversions can be attributed back to a corresponding link click or ad impression.


The Branch Web SDK is used for web-to-app use cases and attribution for conversions that happen on mobile web.

Note: Be sure to implement the Web SDK on multiple pages (homepage, product detail pages, etc.) to ensure proper user experience and measurement.


When a user lands on a page with the Branch Web SDK initialized, the SDK makes a request to specific Branch endpoints (v1/open and v1/pageview). A cookie is stored in local storage with data that will be used to initialize a Journeys banner (if applicable). Full details on what is captured is outlined in Branch's Privacy Policy.

Additionally, the Web SDK can utilize the same deterministic matching technique of custom user login for matching.

Click to Event Matching

Using Branch's Predictive Modeling (PREM), the Web SDK can create a match between a link click and an event that happens on web. On link click, PREM observes characteristics like IP, User Agent, etc., in order to best match the click to the web session that contains the Branch Web SDK-captured characteristics like IP. Subsequent events tracked by the user on web will also be tied to what PREM is able to probabilistically match.

ITP Impact

Branch's Web SDK does use localstorage and sessionstorage to store some data that are important to how we do attribution for Safari users. If this data gets wiped on a particular user’s Safari browser Branch maybe be forced to create a new browser ID for that user, resulting in fragmentation. The impact of ITP is minimal because the Branch Link Graph is based on first-party interactions with deep links, and is able to reconnect these identity fragments in a privacy-friendly way as ITP creates them. Even with the most recent update, which blocks all third-party cookies and puts a 7-day cap on all script-writable storage, the impact is minimal.