Enable Snap (New)

Prev Next

Overview

Snap is a mobile-first social platform for running campaigns across Snapchat and the Snap Audience Network. Branch's Snap integration tracks attribution for installs and post-install events, imports cost data, and supports SKAdNetwork (SKAN) for iOS.

Snap is a self-attributing network (SAN), which means Snap runs its own attribution and reports results back to Branch via API rather than receiving traditional postbacks from Branch.

For more information about integrating ad partners in general, visit our Ad Partner Integration Guide.

Note: this guide is for new Branch

Please note that this guide is about integrating Snap in the new Branch experience. For information on Snap in legacy Branch, visit our legacy guide.

Partner capabilities

Capability

Details

Company type

Self-attributing network (SAN)

Deep linking

Limited:

  • URI scheme pass-back via the Snap DEEPLINK URI field is supported

  • Universal Links and App Links are not supported in Snap paid media campaigns

Attribution

Click-through attribution, View-through attribution

Ad campaign types

Drive Traffic to App (installs and re-engagement), Snap Audience Network

Supported platforms

iOS, Android

Cost ingestion support

Supported (via API)

Pricing models

CPM, CPC, CPA

Engagement Builder Ad Partner Integration

Available

Before you begin

To set up the Snap integration, you need:

  • Branch's Performance product enabled for your Branch account. Contact your Branch account manager or visit https://branch.io/pricing.

  • A Branch account with access to Configuration > Ad Partners and admin permissions to enable and configure integrations.

  • A Snap Business Manager account with admin access and at least one Snap App ID configured.

Enable Snap

Setting up Snap in Branch requires three steps:

  1. In Snap: Locate your Snap App IDs in Snap Business Manager.

  2. In Branch: Connect with Snap and enter your App IDs in Account Settings.

  3. (Optional) In Branch: Enable Snap Advanced Conversions for iOS privacy-preserving measurement.

Find your Snap App IDs

Snap App IDs are generated in Snap Business Manager. Each Snap App ID is tied to your advertiser organization. You need one App ID per platform (iOS and Android). Learn more about generating a Snap ID in Snap’s documentation.

Important: Only a single Branch user can authenticate the Snap integration. That user must have access to all Snap ad accounts you want to connect.

Connect Snap to Branch

  1. In Branch, navigate to Configuration > Ad Partners > Snap.

  2. Select Connect with Snap and sign in with your Snap account.

  3. In Account Settings, enter your Snap App IDs:

    • iOS App ID

    • Android App ID

  4. Select Save.

Note that Snap terms and conditions are accepted once per Branch organization. If a teammate has already accepted them, they will appear pre-signed in the Manage account panel.

Enable Snap Advanced Conversions (optional)

Snap Advanced Conversions is Snap's privacy-preserving conversion measurement for iOS. When enabled, Branch sends hashed conversion data to Snap for users who have opted out of ATT, allowing Snap to model conversions without tying them to individual users. Advanced Conversions is disabled by default.

To enable Snap Advanced Conversions, toggle on the feature in Event config:

  1. On the Snap page, select the Event config tab.

  2. Under Advanced Conversions, toggle Enable Snap Advanced Conversions to on.

  3. Select Save.

See Snap privacy frameworks below for a full explanation of how Advanced Conversions works and how to pass hashed PII for Advanced Matching.

Configure attribution

To configure attribution windows, select the Attribution windows tab on the Snap page.

Important: Snap attribution windows are configured per account in the Snap advertising interface and vary by advertiser. To minimize discrepancies when comparing Branch and Snap reporting, match your Branch attribution windows to the settings in your Snap account. Contact your Snap account manager for your current window settings.

Attribution type

Default

Click to conversion event

1 day

Click to install

7 days

Click to start session

28 days

Household measurement window

2 days

Impression to conversion event

1 day

Impression to install

1 day

Impression to start session

1 day

Configure events

To configure event mappings, select the Event config tab on the Snap page.

Follow Configure events in the general Ad Partner Integration Guide for the event mapping flow. The full Branch-to-Snap event name reference is in Data mappings below.

Snap supports up to 5 custom event slots (CUSTOM_EVENT_1 through CUSTOM_EVENT_5). You can map any of your Branch Standard Event or Custom Event to these slots in the Event config tab.

Verify your data

After your integration is connected and events are flowing, you can verify data is reaching Snap and Branch:

  • In Branch Liveview: confirm events from your app appear in real time. This is the fastest way to confirm SDK events are firing.

  • In Branch Analysis dashboards: review attributed installs and events where Ad Partner Name = Snap.

  • In Snap Ads Manager: confirm that conversion events appear in your campaign reporting under Ads > Reporting.

Snap privacy frameworks

SKAdNetwork

Snap supports SKAN for iOS via direct SKAN postbacks. To receive SKAN data in Branch and enable Snap to use Branch event names for conversion value optimization, you need to add Branch as an MMP in Snap:

  1. In Snap Ads Manager, navigate to Snap App Details.

  2. In the Please share postbacks with this MMP dropdown, select Branch.

  3. In Branch, confirm that the events you use for SKAN conversion values are mapped to the corresponding Snap event names in the Event config tab. Snap requires Snap event names (not Branch event names) for conversion value mapping to work correctly.

Snap Advanced Conversions

Snap Advanced Conversions is Snap's privacy-centric measurement approach for iOS and allows for campaign optimization for users who have opted out of ATT. It uses cryptographic techniques to measure aggregate conversion data without tying off-platform activity back to individual Snapchatters.

Advanced Conversions applies to iOS only. Android attribution is unaffected. To enable it, see Enable Snap Advanced Conversions in the Enable section above.

Once enabled, Advanced Conversions data appears in Snap's dashboard after conversion volume crosses a threshold on Snap's side. Your Snap account team can advise on expected timing.

Advanced Matching (optional)

To further improve conversion modeling and remarketing audience quality, you can optionally pass hashed PII, like phone numbers or email addresses, alongside conversion events. This is called Snap Advanced Matching and requires help from your development team. See Pass Hashed Data to Snap in Developer Hub for implementation details.

Data mappings

Campaign data

Branch field

Snap field

Definition

Possible values

~advertising_partner_name

Automatically set by Branch when Snap claims attribution.

Snap (Static)

~campaign

campaign_name

Name of the Snap campaign.

Snap campaign name

~campaign_id

campaign_id

Unique ID of the Snap campaign.

Snap campaign ID

~ad_set_name

ad_squad_name

Name of the Snap ad squad (ad set).

Snap ad squad name

~ad_set_id

ad_squad_id

Unique ID of the Snap ad squad.

Snap ad squad ID

~ad_name

ad_name

Name of the Snap ad.

Snap ad name

~ad_id

ad_id

Unique ID of the Snap ad.

Snap ad ID

~ad_account_id

ad_account_id

Unique ID of the Snap ad account.

Snap ad account ID

Event names

Branch event

Snap event

INSTALL

APP_INSTALL

OPEN

APP_OPEN

REINSTALL_EVENT

APP_INSTALL

VIEW_ITEM

VIEW_CONTENT

ADD_TO_CART

ADD_CART

INITIATE_PURCHASE

START_CHECKOUT

PURCHASE

PURCHASE

ADD_PAYMENT_INFO

ADD_BILLING

COMPLETE_REGISTRATION

SIGN_UP

SEARCH

SEARCH

ACHIEVE_LEVEL

LEVEL_COMPLETE

SUBSCRIBE

SUBSCRIBE

PAGEVIEW

PAGE_VIEW

CLICK_AD

AD_CLICK

VIEW_AD

AD_VIEW

TUTORIAL_COMPLETE

COMPLETE_TUTORIAL

INVITE

INVITE

LOGIN

LOGIN

SHARE

SHARE

RESERVE

RESERVE

UNLOCK_ACHIEVEMENT

ACHIEVEMENT_UNLOCKED

ADD_TO_WISHLIST

ADD_TO_WISHLIST

SPEND_CREDITS

SPENT_CREDITS

RATE

RATE

START_TRIAL

START_TRIAL

VIEW_ITEMS

LIST_VIEW

Branch Custom Event

CUSTOM_EVENT_1 through CUSTOM_EVENT_5

Event metadata

Branch SDK field

Snap field

Description

content_items[i].$sku

item_ids

EAN or other product/category identifier for items in the event.

quantity

number_items

Number of items in the event.

revenue

price

Monetary value of the conversion event in float format. Do not include currency symbols or commas (for example, 34.24).

event_data_currency

currency

Three-character ISO 4217 currency code (for example, USD). Required if price is included.

transaction_id

transaction_id

Transaction ID for the event.

custom_data.search_query

search_string

The text string that was searched.

custom_data.level

level

Level in the game at time of event.

Data limitations

Be aware of the following Snap-specific data behaviors in Branch:

  • No compare-by on click and impression data: Snap's reporting API does not support breaking down click and impression data by platform, OS, or country. Only ads analytics tag dimensions are available for compare-by.

  • Time zone lock: Snap Ads Manager time zones are set at account creation and cannot be changed. If your Snap and Branch time zones differ, daily attribution totals will not align. You can update your Branch time zone in Configuration > App Settings > General to match Snap.

  • 60-day purge: Branch purges last-attributed Snap data after 60 days.

  • View-through conversion raw data restrictions: Snap restricts log-level data for view-through conversions (VTCs). For VTC-attributed events, campaign-level dimensions (Ad Account ID, Campaign ID, Ad Squad ID, Ad ID) and deep link URI are removed from raw data exports, webhooks, data integrations, and postbacks. Aggregate data in the Branch platform and our APIs is unaffected.

Snap parameter

Branch parameter

ad_account_id

~advertising_account_id

ad_id

~ad_id

ad_name

~ad_name

country

~country_or_region

request_id

N/A

snap_channel

~secondary_publisher

deep_link_url

external_intent_uri, universal_link_url, android_app_link_url

Troubleshooting

Branch and Snap numbers don't match

Some discrepancy between Branch and Snap is expected. Common causes include:

  • Attribution window mismatch: Confirm your Branch attribution windows match your Snap account settings. Ask your Snap account manager for your current window configuration.

  • Time zone mismatch: Snap Ads Manager time zones are fixed at account creation. If your Branch and Snap time zones differ, daily totals will be offset. Align your Branch time zone in Configuration > App Settings > General.

  • Click date vs. conversion date: Snap attributes by click date; Branch attributes by conversion date. For events that occur days after the click, daily totals will differ even though cumulative totals align over time.

See Common Sources of SAN Reporting Discrepancies for the full list.

Campaign dimensions missing from raw exports for view-through conversions

Snap restricts log-level data for view-through conversions. Campaign-level fields (including Ad Account ID, Campaign ID, Ad Squad ID, Ad ID, and deep link URI) are removed from raw data exports, webhooks, data integrations, and postbacks for VTC-attributed events. This is a Snap platform restriction, not a Branch configuration issue.

Campaign-level aggregate data remains available in Branch dashboards and aggregate-level APIs, and in Snap's own reporting.

Deep links not routing correctly in Snap campaigns

Snap does not allow iOS Universal Links, Android App Links, or MMP redirect links in the DEEPLINK URI field of paid media campaigns. Only URI scheme links are supported. To deep link in Snap campaigns:

  • Use your app's URI scheme in the Snap DEEPLINK URI field (for example, yourappscheme://your-key-value).

  • Set the FALLBACK TYPE to Web Site and insert a Branch Link into the fallback field. This enables deferred deep linking for users who don't have the app installed. If you select App Install as the fallback type, users will be sent to the App Store without a Branch Link and deferred deep linking will not work.

  • If you're running an app campaign with a Branch Link elsewhere in the creative, add %24deeplink_no_attribution=true as a query parameter to prevent the Branch Link from claiming attribution over the SAN claim.

Additional resources

For more on Snap and Branch, see the Snap FAQ and our guide on Common Sources of SAN Reporting Discrepancies.