At a glance: Learn how to set up mobile attribution measurement for Snapchat.
Related reading: Snapchat and AppsFlyer SKAdNetwork interoperation
Setting up Snapchat
To configure your campaigns with Snapchat:
- In AppsFlyer, go to, Configuration > Integrated Partners. Select Snapchat.
- Review the Snapchat Terms and Conditions for Mobile App Conversion Tracking (MAST), if agreeable to you click Accept.
- Complete the setup using the relevant tabs.
For a detailed description of the partner configuration window header, click here.
- The General Settings step in the Integration tab is mandatory for all partners
- All the rest of the steps are either descriptive or optional
The Integration Tab is divided into different sections as described below.
On the first visit here, you must turn on Activate Partner to enable setup.
For more details about partner activation please click here.
Enable Activate Partner to allow attribution to Snapchat.
Snap App ID
- In your Snap Business Manager, go to Apps, and copy the Snap App ID (read Snapchat's guide on how to generate a Snap App ID or watch the video).
- Paste the ID in the Snap App ID field in AppsFlyer.
In case the app is promoted by an agency,
- Snap App ID can be added by the advertiser only.
- If the agency is under the same organization as you on Snapchat ad platform, use only one Snap App ID.
- If the agency is under a different organization on Snapchat ad platform, request from them to provide their Snap App ID for this app, and enter it in this field. Multiple IDs can be entered. Press Enter after each ID.
This slider allows you to set the maximum time from click to install. Only installs (first launches) that take place within the lookback window may be attributed to Snapchat.
You can customize this value to 1-23 hours or 1-30 days. We recommend setting the Click-through lookback window to 28 days, to align with Snapchat.
More details about the click lookback window here.
View-through attribution lookback window
This slider allows you to set the maximum time from impression to install. Only installs (first launches) that take place within this lookback window, following an ad impression, are attributed to Snapchat, providing there was no other relevant ad click.
You can customize this value to 1-23 hours or 1-7 days. We recommend setting the View-through lookback window to 1 day, to align with Snapchat.
More details about the view-through attribution here.
Activate Re-engagement attribution to start attributing re-engagements for Snapchat.
If you are an agency, request from the advertiser to do it for you from their side.
Re-engagement click-through lookback window
Set the duration of the Re-engagement click-through lookback window (the maximum period of time after an ad is clicked, within which a retargeted user can be attributed to the ad). You can set the value in hours (up to 23) or days (1-30):
Re-engagement view-through lookback window
To start attributing impressions of retargeting ads, activate Re-engagement view-through attribution.
Then, set the duration of the Re-engagement view-through lookback window (the maximum period of time after an ad is viewed, within which a retargeted user can be attributed to the ad). You can set the value in hours (up to 23) or days (1-7):
Set the duration of the Re-engagement window (the period when the user's in-app events are attributed to the retargeting media source). You can set the value in days (1-90), hours (up to 23), or even lifetime:
In-app events settings
In this section you can map your AppsFlyer events with Snapchat via postbacks.
- Toggle In-App Event Postbacks to ON
When enabling the Snapchat in-app events mapping for an app for the first time, all the af_XXX events from the SDK are automatically mapped to Snapchat's pre-defined event list. This automatic mapping saves you time and decreases mapping mistakes significantly.
- Select the Sending Option for all SDK-defined events.
- Only events attributed to this partner for events coming only from users attributed to this partner
- Events attributed to any partner or organic to have your entire user base available to be reported to the partner
- Click Add Event to add an SDK Event to the list
- Complete the following parameters:
|SDK Event Name||The name of the event, as received by AppsFlyer either from the SDK integrated with your app, or from server to server events.
Tip - If you don't see the event you want in the list, make sure to activate the event on a device with a non-organic installation and recheck.
|Partner Event Identifier||The unique name or ID of each event as defined on Snapchat's side.
Obtain the corresponding Event ID from Snapchat and set in the text field.
|Send Revenue||When unchecked - AppsFlyer sends all the parameters of the rich in-app event to the partner, except for the revenue parameter, which is contained in the af_revenue parameter.
When checked - AppsFlyer sends all the parameters including the revenue value (if it exists in the event).
Attribution link tab
For all SRNs, such as Facebook, Apple Search Ads, Adwords, Snapchat etc. this tab is not functional, as they do not use external attribution links.
Snapchat supports various cost dimensions as shown in the table that follows. Note: Cost data requires an Xpend subscription.
Enabling and testing Snapchat cost integration
Note: If you have multiple Snap accounts associated with the same app, repeat the integration process below for each account. AppsFlyer will then consolidate the cost data for all the logged-in Snap accounts.
Cost data sync status
The cost tab shows the status of your cost integration and the last time AppsFlyer managed to pull matching cost data.
Snapchat allows you to sync several accounts for pulling cost data. For each synced account, AppsFlyer shows the status of cost integration and the last time AppsFlyer managed to pull matching cost data.
The table below describes five different status messages, and what to do if you see them in the cost tab.
|Status Message||Description||What to Do|
|Partner API is responding and returning data.||
With sync message:
Cost Data was never successfully pulled
One of the following is possible:
|No Matching Data||
AppsFlyer queries this app's active campaigns with the Partner API, but the partner API isn't returning any data for these campaigns.
This might happen if you change the campaign ID while it is still running.
If you rely on cost data, do not change the IDs of campaigns while they are still active and running.
Also, make sure you entered the API credentials for the correct app, and that the network is passing the correct campaign IDs on the attribution link.
|Partner API is not responding||
The ad network cost data API is either down or experiencing issues.
Wait for the network API to become responsive.
|Invalid Credentials||Cost API credentials are incorrect. AppsFlyer is unable to pull cost data.||
Make sure that the cost API key is correct.
Last Successful Data Pull
The cost tab shows the last time cost data has been pulled yet. If cost data has never been pulled, the sync message shows Cost Data was never successfully pulled.
Scenario 1 - Stopped Campaigns
AppsFlyer pulls cost for several campaigns that you run with ad network A. You look in the cost tab and you see the message Last successful sync 2 hours ago. The same day you stop running campaigns with ad network A. Two weeks later, you look in the cost tab of ad network A. You then see the message Last successful sync 14 days ago.
Scenario 2 - Ad Network API Issues
AppsFlyer pulls cost for several campaigns that you run with ad network B. You look in the cost tab and you see the message Last successful sync 2 hours ago. Ad network B then experiences issues with their API. It takes them a few hours to fix it. When you look in the cost tab you see the message Last successful sync 8 hours ago.
Stop Snapchat cost sync
To stop getting Snapchat cost and to delete a connected Snapchat account:
- In the actions column, hover over an account, click Delete connection
Once deleted, AppsFlyer stops getting the cost. Deleting the connection does not impact historical data.
- To avoid discrepancies in cost data, set the same timezone in both app settings and your Snapchat advertising account.
- When setting up campaigns, make sure that adset names are different per-platform - iOS or Android - otherwise you will see duplicate cost figures in each platform. The best practice is to give a different name for each campaign per OS.
- Once you set Snap's cost do not change the name of any running campaign, ad set, or single ad, as it may cause serious discrepancies or missing cost data.
Ad revenue tab
Ad Revenue is not supported in the integration with this partner.
In this tab, you can select the permissions to grant Snapchat. Note that even if attribution is disabled for Snapchat, the permissions tab is active and you can grant control to Snapchat.
Enable Ad Network Permissions to begin the configuration.
Once you switch Ad Network Permissions on:
- The app appears on the ad network's dashboard
- Permissions are granted only to this ad network
- The ad network admin can see basic data about the app
Grant permissions to ad network team members
Snapchat admin has access to your app by default, but you can give specific Snapchat employees the permissions to manage your app. To be able to do so, these employees must be added by Snapchat admin as team members to AppsFlyer.
Then, get the email addresses of the relevant Snapchat team members.
To add team members that can have permissions to manage your app:
- Click Add team member.
- Enter the email of the ad network team member.
- Click Add.
- Repeat the process to add more team members if needed.
Once you enable permissions for the ad network, select the permissions you want to grant it.
Use these toggles to give the ad network permissions to handle its own configuration for your app:
Ad network permissions
- Allow to configure integration - permit the partner to set up the integration tab (except in-app event postbacks)
- Allow to configure in-app event postbacks - permit the partner to setup in-app event postbacks mapping to itself on the integration tab
- Allow access to your retention report - only to the partner's own retention data
- Allow access to your aggregate loyal user data - only to the partner's own loyal user data
- Allow access to your aggregate in-app events data - only to the partner's own in-app events data
- Allow access to your aggregate revenue data - only to the revenue data attributed to the partner
- Allow spend ingestion - at the app level
- Allow access to your Protect360 dashboard - only to the partner's own Protect360 data, and providing the feature is enabled for the advertiser
Learn more about granting ad network permissions.
Deep linking with Snapchat
Deep linking with Snapchat is based on using a native deep link in Snapchat's platform, while adding AppsFlyer parameters to it.
To perform deep linking with Snapchat:
- Verify that deep linking for retargeting is enabled for Snapchat.
- Verify that retargeting is enabled in AppsFlyer.
- Take the app's deep link scheme URI and add at least the following parameters:
- PID - The media source in this case is always snapchat_int. This enables all data to appear in the AppsFlyer dashboard under the Snapchat_int media source.
- C - the relevant campaign name
- is_retargeting=true - this field defines the campaign as a retargeting campaign. The engagements of existing users with the retargeting campaign are marked as re-engagements due to the existence of this field in the URI. This ensures the user's data appear in the retargeting dashboard.
How to set up deep links on Snap platform?
Deferred deep linking with Snapchat
You can access Snapchat user conversion data in real-time directly at the SDK level using deferred deep linking.
The Snapchat conversion data includes the af_dp parameter, which enables you to deep link and serve customized content, based on the user's engagement with your ad in Snapchat.
In addition, you can use other conversion data parameters such as af_adset or af_channel.
Setting up Snapchat for agencies
Agency Snapchat attribution setup is similar to that of the advertiser.
Agencies can't set the Advanced Privacy setting—this is limited to the advertiser.
To complete the setup, two steps are required:
- The advertiser must turn on Activate Partner for Snapchat to enable setup of the integration tab parameters.
For more details about partner activation please click here.
- On the agency dashboard, on the Snapchat configuration page, the Snapchat account ID text area is enabled as seen below. Agencies can enter up to 50 different Snapchat account IDs in the text area. All consequent attribution data coming from those accounts is visible only under the agency's dashboard afterward.
Snapchat account IDs MUST NOT be shared between the advertiser or the agency. If they are shared then ALL the advertiser's installs are automatically attributed on the agency's dashboard.
Keeping Snapchat data
Snapchat requires attribution providers to delete its user-level data 12 months after the install. This means that the events performed by these users 12 months after they install the app are counted as organic.
Past aggregate data remains the same.
Advertisers can work with Snapchat's Marketing Partners to run campaigns on Snapchat. When configured, AppsFlyer sends postbacks to the configured Snapchat marketing partner.
Follow the steps below to configure your campaigns with any one of Snapchat Marketing Partners.
Setting up a Snapchat Marketing Partner
Before configuring Snapchat marketing partner integrations, do the following:
- Activate Snapchat attribution.
- In the Snapchat Business Manager dashboard, copy the Snap Account ID highlighted below in green.
Once you have activated Snapchat and obtained the Snap Account ID, configure the Marketing Partner:
- Go to Configuration > Integrated Partners.
- In the search box, enter the name of the specific partner, or 'Snapchat' to see the full list of Snapchat marketing partners.
- Click the logo of the required partner to open the configuration window.
- The partner must be activated on the first visit, to enable its setup:
- Paste Snap account ID obtained from the Snapchat dashboard (with the hyphens) in the Snap Account ID field.
- Click Save
AppsFlyer can send automatic install and re-engagement postbacks to partners. Use this section to define the source of the users that allow sending these postbacks. In some cases the source of users is predefined and cannot be changed:
Select Only events attributed to this partner for events coming only from users attributed to this partner.
Select Events attributed to any partner or organic to have your entire user base available to be reported to this partner.
- To send in-app event postbacks to the Snapchat marketing partner you're configuring, toggle the In-App Events Postback to ON.
- Individually add the in-app events (SDK events) you want to send to the partner and map them as required.
- Check Send Revenue box if you wish to send the parameters including their monetary value (where applicable).
Disabling attribution for Snapchat prevents sending postbacks to Snapchat Marketing Partners.
In certain instances, advertisers can see fewer installs on AppsFlyer's dashboard than on Snapchat’s Ads Manager dashboard. Sometimes, the discrepancy can be addressed by making changes to the settings in the AppsFlyer dashboard or Snapchat Ads Manager (e.g timezone settings, attribution windows etc.). However, a discrepancy between the two dashboards is expected. Advertisers should rely on the AppsFlyer dashboard as the source of truth when evaluating CPI and performance.
Advertisers should be aware of the following causes and consider taking the necessary actions.
Source of discrepancies and solutions
Set out below are a number of causes of discrepancies and possible solutions.
Different lookback windows
By default, Snapchat Ads Manager and AppsFlyer have different attribution windows.
|Lookback Window||Snapchat Ads Manager||AppsFlyer|
Click Attribution Lookback Window
7 days by default (can be configured to be 1-30 days)
View-Through Attribution Lookback Window
1 day by default (can be configured to be 1-48 hours)
- Configure the attribution window in AppsFlyer to match Snapchat’s default values.
- Advertisers can select attribution windows in the Ads Manager dashboard to match what they have set as default in their attribution partner (MMP) dashboard. Contact your Snapchat CSM to have your account allowlisted to activate this feature.
Time zone differences
By default, Ads Manager uses PST timezone whereas AppsFlyer uses UTC +0 by default. As a result, for example, Snapchat might attribute an install to Friday while AppsFlyer attributes it to Saturday.
Configure PST as the timezone for each app in AppsFlyer. Click here for details of how to change the time zone for existing apps.
Multi-channel source attribution
A user might engage with an ad for the same app on multiple platforms, especially with very large multi-platform campaigns. When the user installs the app, multiple platforms may take credit for the install.
Snapchat Ads Manager:
- Counts each install occurring within the attribution window as an install attributed to Snapchat.
- Attributes in-app events up to 28 days after install.
- Applies last touch attribution and credits only the last platform to show the user an ad that led to an install.
- Attributes in-app events to the source of the install up to 180 days.
This can lead to discrepancies as high as 40% between AppsFlyer and Snapchat Ads Manager.
Snapchat is just one mobile application, whereas other platforms own multiple mobile applications or mobile ad networks/exchanges. Due to their additional reach across multiple properties, it is possible that competitors might win the last touch, yet Snapchat is still driving significant value.
Ultimately, AppsFlyer should be the dashboard used to evaluate eCPI and performance. When there is a discrepancy, default to AppsFlyer as the source of truth. Keep in mind that to fully evaluate the impact of your Snapchat campaigns, you should work with AppsFlyer to keep a record of the volume of conversions where Snapchat was a contributor to the conversion but was not the last touch. There is value to understanding this even if you attribute based on the last touch.
To manage the discrepancy, advertisers should keep records of the approximate percentage of total conversions for which Snapchat was a contributor but not the last contributor and as such create a new eCPI goal for Snapchat based on this approximate delta.