Apple Search Ads



Branch can help track your Apple Search Ads campaigns by fetching the Apple Search Ads Attribution API. You can then use the parameters you've set in the Apple Search Ads dashboard, parameters such as the campaign name, and take special action in your app after an install, or simply track the effectiveness of a campaign in the Branch dashboard, along with your other Branch statistics, such as total installs, referrals, and app link statistics.

SDK Set Up

Update the Branch SDK to iOS v1.39.0+. The new SDK will automatically retrieve a token on your behalf, our servers will use that token to call the Apple Search Ads Attribution API.
Note: If you are using Cocoapods, you need to manually import AdServices Framework


AdServices Framework

On SDK v1.39.1+, we recommend you import AdServices Framework to leverage the Apple Ads Attribution API.

Server to Sever Setup

  • For S2S integrations, you will need to retrieve the new token and send to Branch on the install as apple_attribution_token This is necessary only if you send installs S2S. No need to complete this step in case installs are recorded by Branch iOS SDK.

Please refer to the new AdServices developer documentation on how to retrieve the token.

  1. 导入 AdServices.framework
  2. 请求归因令牌(请参见示例代码)。Apple 应该在 50 毫秒内响应。
  3. 令牌具有 24 小时 TTL,因此请在该时间内发送给 Branch,以便将其用于归因。

请参阅获取 Apple 归因令牌的示例代码:

func appleAttributionToken() -> String? {
        if #available(iOS 14.3, *) {
            return try? AAAttribution.attributionToken()
        return nil
+ (NSString *)appleAttributionToken {
    if (@available(iOS 14.3, *)) {
        NSError *error;
        NSString *appleAttributionToken = [AAAttribution attributionTokenWithError:&error];
        if (!error) {
            return appleAttributionToken;
    return nil;


  1. Navigate to the partner management tab and search for Apple Search Ads
  2. 点击 Sign in With Apple
  1. 使用您的 Apple 帐户登录。登录后,同意授权并选择 Grant Access
1146 1958
  1. 在 Branch 操作后台上,选择相关的广告帐户
  1. 击中 Save




代理商管理的 Campaign

Apple Search Ads 数据已映射到 Branch

Branch 从 Apple Search Ads 归因 API 接收并映射以下参数:

Apple Search Ads 参数Branch 映射字段


All the attribution can be visible on the Branch Dashboard summary page. All installs and opens registered from this channel will automatically be tagged with the channelApple App Store and the Ad PartnerApple Search Ads. The campaign will be set to the Campaign Name you've configured in the Apple Search Ads dashboard.

  • 安装可能不准确,但安装+打开事件应与 Apple Search Ads 报告的内容相匹配。
  • 由于 API 的限制,设备可能需要30天才能完全归因。

请注意,这些统计信息是仅限于页面顶部的日期范围 。如果您需要,可以扩大范围。




Please see our guide on Attribution Windows.

关键字 ID

With the new framework, keywordId is also passed to Branch , and you may use that in your Compare Bys to measure your campaign performance.


This is also available in Branch's Query API in the last_attributed_touch_data_tilde_keyword_id field in all EO topics.

Keyword Name and Ad Set Name

With the new framework, Branch is now able to retrieve keyword names and Ad set names for Apple Search Campaigns, and you may use that in your Compare Bys to measure your campaign performance.


与 Apple Search Ads 操作后台 (Dashboard)对比产生的安装差异

Apple Search Ads 差异可能有几种原因。由于 Apple Search Ads 归因设置的可定制性较低,因此即使性能可能可靠并且报告可能会按预期运行,Apple Search Ads 上的差异通常也比其他平台更高。尝试与 ASA 安装和 Branch 进行对帐的最佳方法是查看 'New Download' 计数,但减去通过在报告中对 LAT 进行分组来发现的用户的 LAT 百分比。这将估算关闭 LAT 时的新下载量,而 Branch 报表会首先从这些下载中打开。

  • 时区。确保您的 Apple Search Ads 时区(在 Settings > Overview > Account Information 中)与您的 Branch 操作后台 (Dashboard) 时区(在 Account Settings 下可见)匹配。
  • Limit Ad Tracking (LAT) On. Apple Search Ads doesn't report installs to third parties if the user has Limit Ad Tracking. However, the Apple Search Ads dashboard shows all installs by default, regardless of limit ad tracking state. If the newer framework is properly set up, attribution will still be provided for LAT-on or ATT opted-out users and this will not be a source of discrepancy, but if the new framework is not set up properly this may still cause a difference in numbers.
  • 归因窗口 (Attribution Windows)。 Apple Search Ads 会将所有安装归因于 Apple Search Ads 点击其自身30天内。 Branch 的默认点击安装归因窗口为7天。您可以修改 Branch 的点击以安装窗口。您可以在 Branch 中修改 Apple Search Ads 归因窗口。
  • 最终点击归因 (Last-click attribution)。 Apple Search Ads 会将所有安装归因于 Apple Search Ads 点击其自身30天内。Branch 将归因于其归因窗口中的最终点击,而归因窗口通常可能是与 Apple Search Ads 不同的来源。
  • 重新安装 (Reinstalls)。 Apple Search Ads 的操作后台 (Dashboard)在其默认视图中将重新安装显示为转化,但 Branch 称这些安装为 “REINSTALLS”。在Apple 操作后台 (Dashboard)中,在列选择器中选择“新建下载”或“重新下载”以对齐数据。
  • 归因 API 超时或延迟 (Attribution API timeouts or delays)。 Apple Search Ads Attribution API 响应速度可能很慢。尽管客户可以编辑超时,但是上面代码中的默认 Branch 超时仅超过1秒。如果Apple Search Ads 在此超时后做出响应,则 Branch 不会将安装归因于 Apple Search Ads。
  • 打开与安装 (Opens vs. installs)。 Branch 将第一个打开认为安装。 Apple Search Ads 认为用户下载应用的时间为安装时间。这可能会导致计数和安装日期不一致。

向 Apple Search Ads 添加深度链接

Since this integration doesn't utilize Branch links, options for deep linking are limited. We'll pass back the value you use for campaign in the Apple Search Ads dashboard. Since this value is controlled by you, you can put anything there, but it will reflect on the Branch dashboard. We will track installs regularly.

安装或转化事件在 Branch 操作后台 (Dashboard)中显示时没有关键字

Apple Search Ads 有 KeywordSearch Match 匹配来源。搜索匹配功能会自动将您的广告与 App Store 上的相关用户搜索进行匹配,而不是预先分配的关键词。归因于“搜索匹配”的安装没有与之关联的关键字。可以在 Apple Search Ads 操作后台 (Dashboard)的广告组一级启用和禁用 Search Match。

Using TestFlight app or Developer App

If you are using the new ASA framework and are debugging or testing your app using the TestFlight app or developer app, Apple Search Ads returns dummy values of test campaign data with Campaign ID as 1234567890 which will be visible in the Branch Dashboard. Please ensure to filter it out when looking at your ASA attributed campaign data in the Dashboard.


If you ever need to restart your integration with Apple Search Ads, you must do so by clicking the Reset Settings button in the Apple Search Ads settings in the Branch Dashboard. Clicking the Disable button at the bottom will not reset your integration.