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:
|
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 |
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:
In Snap: Locate your Snap App IDs in Snap Business Manager.
In Branch: Connect with Snap and enter your App IDs in Account Settings.
(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
In Branch, navigate to Configuration > Ad Partners > Snap.
Select Connect with Snap and sign in with your Snap account.
Follow Connect with OAuth in the general Ad Partner Integration Guide for the full sign-in flow.
In Account Settings, enter your Snap App IDs:
iOS App ID
Android App ID
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:
On the Snap page, select the Event config tab.
Under Advanced Conversions, toggle Enable Snap Advanced Conversions to on.
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:
In Snap Ads Manager, navigate to Snap App Details.
In the Please share postbacks with this MMP dropdown, select Branch.
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 |
|---|---|---|---|
| — | Automatically set by Branch when Snap claims attribution. |
|
|
| Name of the Snap campaign. | Snap campaign name |
|
| Unique ID of the Snap campaign. | Snap campaign ID |
|
| Name of the Snap ad squad (ad set). | Snap ad squad name |
|
| Unique ID of the Snap ad squad. | Snap ad squad ID |
|
| Name of the Snap ad. | Snap ad name |
|
| Unique ID of the Snap ad. | Snap ad ID |
|
| Unique ID of the Snap ad account. | Snap ad account ID |
Event names
Branch event | Snap event |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Branch Custom Event |
|
Event metadata
Branch SDK field | Snap field | Description |
|---|---|---|
|
| EAN or other product/category identifier for items in the event. |
|
| Number of items in the event. |
|
| Monetary value of the conversion event in float format. Do not include currency symbols or commas (for example, |
|
| Three-character ISO 4217 currency code (for example, |
|
| Transaction ID for the event. |
|
| The text string that was searched. |
|
| 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 |
|---|---|
|
|
|
|
|
|
|
|
| N/A |
|
|
|
|
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 URIfield (for example,yourappscheme://your-key-value).Set the
FALLBACK TYPEtoWeb Siteand insert a Branch Link into the fallback field. This enables deferred deep linking for users who don't have the app installed. If you selectApp Installas 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=trueas 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.