Facebook (Meta) Ads Attribution Integration

 

Starting October 9th, 2024, Meta and Singular will additionally support an enhancement to iOS Aggregated Event Measurement (AEM) called "Advanced AEM".  Advanced AEM further improves measurement by enabling AEM install attributions to be reported in Singular tracker data, for AEM eligible apps. See What is Advanced AEM?

Integration Summary

As a Meta Mobile Measurement Partner, Singular allows app publishers to track ad download referrals from Facebook and Instagram. Once a download has been verified by Singular, you can also track subsequent user engagement of these users in your mobile app.

Singular reports on attribution data from Meta in various ways:

  1. Meta's self-attributing API: Singular reports user-level app activity to a dedicated Meta API for MMPs, which is self-attributed by Meta and attributable in Singular. Attributions through this API are subject to Meta's data restrictions for advertisers.
  2. Meta's "Meta Referrer" (Android only): See "Meta Referrer"
  3. Meta's "Aggregated Event Measurement" (iOS only): See "Aggregated Event Measurement"
  4. Meta's SKAdNetwork Reporting (iOS only): See "Meta SKAdNetwork Integration Guide"

(See Partner Integrations Glossary)

Partner Facebook (Meta)
Partner Type

Self-attributing ad network

Creatives Supported
Publisher Supported
View-Through Supported
User-Level reporting available via Android Meta Referrer, for Advantage+ App Campaigns and Manual App Promotion Campaigns with Broad Targeting
Deep Linking Singular's integration with Meta does not use Singular tracking links (including Singular deep links). See Meta's documentation for setting up Meta deep links.
Re-engagement

Supported 
User-level data for iOS Aggregated Event Measurement (AEM) only

Click Tag No (Self-attributing)
Receiving All Installs

Recommended (Self-attributing)
Required for iOS AEM

Receiving All Events

Recommended (Self-attributing)
Required for iOS AEM

Setup Instructions

Configuring the Facebook (Meta) Ads attribution integration is required to leverage all of the measurement methods with Meta.

Prerequisites

  • Make sure your app is integrated with Singular via an SDK or S2S integration (see Getting Started with the Singular SDK/S2S)
    • For iOS apps only: Deep link support must be implemented to support Aggregated Events Measurement (AEM) measurement for Meta app engagement campaigns.  See AEM requirements
1

Set up Facebook (Meta) Ads

Register the application on Meta: To run Meta Mobile App Ads, the application must be registered with Meta. Visit the Meta App Dashboard to set up your application.

2

Configure Facebook (Meta) as a Partner in Singular

  1. Go to the Meta App Dashboard. Find your app from your list of apps and copy the App ID.

    Where to find the Facebook App ID

  2. In Singular, go to Attribution > Partner Configuration and type "Facebook" in the search box.
  3. Enter your Facebook App ID. You can add multiple Facebook App IDs by separating them with a comma.

  4. For IOS apps only: 
    1. This partner requires an additional step (importing events) in their platform to finish setup for iOS. Facebook: How to Import Events
    2. Uncheck if you wish to disable Advanced AEM attributions
  5. For Android apps only: Enter your Install Referrer Decryption Key, (see Where can I find the Install Referrer Decryption Key? below).

    Important: This step is required to use Meta Referrer for attribution.

3

Specify Attribution Settings

  1. Enable View-through Attribution if you want to attribute view-through conversions from Meta ads.
  2. Enable Re-engagement Tracking if you want to attribute re-engagements for existing app users that engage with a Meta ad.
  3. Choose your Click-through attribution lookback window to specify how long an ad can be credited with an install.
    IMPORTANT TO NOTE: Changing the attribution lookback window will take effect immediately for any live campaigns for Facebook.
    Make sure to have the same configuration in the partner platform.
    Using different attribution windows may result in discrepancies between network and tracker data.
  4. Save the integration.
    Note: By saving the Facebook Ads integration configuration here, Singular automatically tracks installs and sessions to Meta. This corresponds to the mobile_app_install and fb_mobile_activate_app events. You do not need to configure these events separately in step 6.
4

Send Event Postbacks to Meta

Singular supports sending event notifications to Meta with all of Meta's requirements.

  • First, select which events to send to Meta from the dropdown.
  • Next, map your In-app Events:

    • Select the event name on the left field, according to the name used in the SDK, and map the name to one of Meta's predefined conversion events.
    • Alternatively, choose "(Use SDK Event Name)" to be able to use the event in Meta's Custom Event Optimization campaigns (Android and < iOS 14 campaigns only).
  • Map your revenue events: 

    choose which revenue events you with to send Meta. Recommendations:
    • fb_mobile_purchase: Any in app revenue SDK event should be mapped to "fb_mobile_purchase", to send revenue to Meta to enable value optimization campaigns.
    • AdImpression: If you have implemented Singular's Ad Revenue Attribution, ad revenue can be reported to Meta via the "AdImpression". Select the "__ADMON_USER_LEVEL_REVENUE__" SDK event and map it to "AdImpression" with "Include Revenue Value" checked.

See also: Using the Meta SDK and Singular SDK/S2S in the Same App.

5

Tracking Facebook (Meta) Installs in Singular

After completing the steps above, you can see the results of your Meta mobile app campaigns in your Singular reporting. 

  • For iOS apps, Meta's Aggregated Events Measurement (AEM) apply

Each install attributed to a Meta Mobile App Install Ad is reported based on the Campaign Name, Ad Set, and Ad Group Name created in Meta.

Data Mapping

Meta campaign values are mapped to Singular reporting dimensions as follows:

Singular Value Metan Value Example
Tracker Campaign Name Campaign Name “MyCampaign”
Tracker Campaign ID Campaign ID 12345678
Tracker AdGroup Name AdSet Name “MyAdGroup”
Tracker AdGroup ID AdSet ID 98123747
Tracker Creative ID Ad ID 123192873

When running a Meta report, Singular will also match the SDK data with the marketing data provided by Meta Ads API, including:

  • Spend by Campaign
  • Spend by Creative, including the image or video
  • Account ID

General FAQ

How does Singular track Meta attributions?

As a Meta Mobile Measurement Partner, Singular allows app publishers to track ad download referrals from Facebook and Instagram. Once a download has been verified by Singular, you can also track subsequent user engagement of these users in your mobile app.

Singular gets attribution data from Meta in two ways:

  • Meta's self-attributing API: Due to Meta's data-sharing limitation, data about installs received from this API is only available in Singular aggregate reports (not in user-level data logs).
  • Meta's Meta Install Referrer Solution: This new measurement solution for Android app installs allows for data to be displayed both in Singular's aggregate reports and in user-level data logs. See Meta Referrer FAQ. 
Are communications between Singular and Meta secure?

Singular uses all the necessary security measures required by MEta to ensure communications between Singular and Meta are secure. We also comply with all of the privacy policies set forth by Meta to protect your data.

I'm still not seeing Meta attributed installs. Where can I get help?

If you've followed the setup steps but still aren't seeing Meta attributed installs after performing your test, contact Singular's Support Team for additional help. Provide your account name, the applicable application, and your Facebook App ID in your initial email to help ensure a quick resolution.

Where can I find an app's Facebook App ID?

You will need to have a developer account. Go to the Meta App Dashboard. Find your app from your list of apps and copy the App ID.

Where to find the Facebook App ID

Do I need to set the AdvertiserTrackingEnabled (ATE) flag?

As part of the updates related to iOS 14, Meta announced new guidelines for using the Advertiser Tracking Enabled flag with MMPs, including how they use the ATE flag. Your integration with Singular automatically implements this flag, and it is set for users that opt-in to tracking via iOS App Tracking Transparency. No additional action is required in your Singular SDK implementation.

Can I send ad revenue data to Meta?

If you have implemented Singular ad revenue attribution, ad revenue data can be reported to Meta via Meta's AdImpression event. Ad revenue reported to Meta can be used for optimization provided the ad revenue data meets Meta's eligibility requirements.

What should I do if Meta reports missing currency and value parameters for an event?

If you encounter this error from Meta, it indicates that the event is expected to be a revenue-type event. To resolve this, ensure that when sending the event from your application using the Singular SDK, you include the required currency and value parameters. Additionally, in your Partner Configuration settings, make sure to enable 'Include Revenue Value' for this event.

Will changes to the event mapping affect historical data?

No, any changes to the event mapping will only apply from the point of configuration going forward. Historical data will not be retroactively changed.

I'm an agency that needs to launch campaigns with an advertiser, what should I do?

Make sure all of the permissions on Meta are set up to allow you to run campaigns for the Advertiser. Please include your company name in the Meta campaign name so we can identify your campaign versus other agency campaigns or in-house advertiser campaigns that exist.

(iOS) Aggregated Event Measurement FAQ

What is Meta App AEM and Advanced AEM?

App AEM is a solution that helps advertisers reach more people and measure ad performance on their platform.

App AEM utilizes conversion data that Singular sends to Meta through the MMP integration. This includes events associated with users that haven’t provided iOS's App Tracking Transparency (ATT) permission, in which case Meta will limit processing of those events to Aggregated Event Measurement (AEM) only. App AEM supports app promotion (installs) and app engagement (re-engagement) campaigns for iOS 14 and above.

Starting October 9th, 2024, Meta and Singular will additionally support an enhancement to AEM called "Advanced AEM".  Advanced AEM further improves install AEM measurement by enabling AEM attributions to be reported in Singular tracker data, for AEM eligible apps. See AEM attribution and reporting

For more information about App AEM, see Meta’s help center article.

What are the requirements to enable App AEM and Advanced AEM?

Starting October 9th, Advanced AEM will be available for all existing and new Facebook configurations and is enabled by default, provided your app is AEM eligible in your Meta Events Manager.

To enable Meta Advanced AEM reporting (i.e. tracker installs)

  • (Singular) Ensure the Facebook partner configuration is configured for your iOS app, and the "Include Advanced AEM Attributions" option is checked. Your default Singular partner configuration in Meta sends app events for users that haven't provided iOS's App Tracking Transparency (ATT) permission, in which Meta will limit processing of those events to AEM. 
  • (Meta) Verify your app is eligible for Aggregated Events Measurement in your Meta Events Manager.  If your app is AEM eligible, Advanced AEM data will be available through your Singular integration.
    Note: Singular reporting for Advanced AEM does not require the "Aggregated Events Measurement" option to be selected as the "Attribution" when configuring your Meta app promotion campaign

To enable Meta AEM reporting “App Promotion” campaigns (i.e. network installs):

  • (Singular) An active Singular iOS Facebook partner configuration
    • Reporting in-app event postbacks to Meta are optional but recommended to enable VO and AEO optimization. Note that AEM requires reporting both ATT opt-in and opt-out data to Meta, which is the default behavior with a Facebook partner configuration
  • (Singular) A configured Singular Facebook data connector
  • (Meta) Ensure that "MMP" is selected as the "Preferred Connection Method" in the Meta Events Manager.
  • (Meta) When creating a Meta App Promotion campaign:
    • In "Campaign" configuration, enable the "iOS 14+ campaign" option
    • In "Ad Set" configuration, select the AEM option as the attribution method:

To enable Meta AEM for "App Engagement" campaigns (i.e. re-engagements):

    • (Singular) An iOS app that supports deep links
    • (Singular) A Singular integrated app with deep link support
      • Singular SDK integration, or
        • iOS SDK 12.0.3+, or
        • iOS SDK 11.0.7+ with supportedDomains implemented for any Universal Links used in App AEM campaigns
      • Singular Server-to-Server (S2S) integration
    • (Singular) An active Singular iOS Facebook partner configuration with re-engagement enabled
    • (Meta) Ensure that "MMP" is selected as the "Preferred Connection Method" in the Meta Events Manager.
How does Singular attribute and report App AEM campaigns?

Singular supports reporting both installs and re-engagements (from deep links) served by App AEM campaigns.

  • AEM installs are reported in aggregate only, as “Network Installs” via the Facebook Data Connector integration
  • Advanced AEM installs are reported in Singular's aggregated "Tracker Installs".  User-level attributions for Advanced AEM are not available due to Meta's data sharing policies.
  • AEM re-engagements are reported in both user-level and in aggregate, from deep links served by app engagement campaigns. Supported campaign granularity include:
    • Campaign ID
    • Sub Campaign ID
    • Creative ID
If I also use the Meta SDK for iOS, what should I do to enable App Aggregated Event Measurement?
In order to avoid duplication of app events in Meta for AEM, it is recommended that only the Singular SDK implements and passes these events to Meta through the MMP integration. See our guide on Meta and Singular SDK interoperability for more information.

Ensure that "MMP" is selected as the "Preferred Connection Method" in the Meta Events Manager.
How does Meta’s App AEM work with SKAdNetwork?
Meta’s App AEM and SKAdNetwork are two separate measurement methodologies. Meta documents expected differences when comparing the two metholodiges in their guide on the topic.
  • App AEM utilizes app conversion data reported through Singular’s MMP attribution integration with Meta (this article)
  • SKAdNetwork utilizes Apple’s attribution framework to attribute. For more information on Singular’s integration with Meta for SKAdNetwork, read our help center article on the topic.

(Android) Meta Referrer FAQ

What is Meta Referrer?

"Meta Referrer" is an Android-specific measurement solution introduced by Meta to allow advertisers access to granular user-level attribution data for Android app installs (see Meta's data policies) from ads served on Facebook, Instagram, and Audience Network ad campaigns where the objective is app installs. It is comprised of the "Google Play Install Referrer" and "Meta Install Referrer" technologies for app install measurement.

Google Play Install Referrer Meta Install Referrer

(Available as of October 2021)
Uses the "Google Play Install Referrer" to attribute Android click-through installs for Meta app install campaigns through the Google Play store.

(Available as of November 2023)
In addition to supporting the same measurement scenarios as the Google Play Install Referrer, the Meta Install Referrer also supports measurement flows that are unsupported by Google Play Install Referrer:

  • most view-through attribution scenarios (Advantage+ App Campaigns and Manual App Promotion Campaigns with Broad Targeting)
  • non-Google app stores support
  • non-same session click-through attribution

"Non-same session" referes to when a user clicks on an ad and gets redirected to the app store, but doesn't immediately click "Download/Install". User returns to app store page later to click "Download/Install".

As of November 2023, Singular's integration with Meta supports both the "Google Install Referrer" and "Meta Install Referrer", under what Singular refers to as "Meta Referrer" measurement.

How does Singular attribute installs between the self-attributed data and "Meta Referrer" data?

Singular prioritizes the Meta Referrer data to measure attributions to prioritize the availability of user-level data for advertiser. For a given Android app install, Singular will prioritize the following attribution methods as follows:

  1. (Meta Referrer) Meta Install Referrer
  2. (Meta Referrer) Google Install Referrer
  3. Meta self-attributing API

Singular uses the self-attributing claim if any Meta Referrer data is not available or loses due to last-touch methodology to a Meta self-attributed conversion. Doing so maximizes both the user-level attribution data while ensuring accurate aggregate measurement of Meta campaigns.

Attributions via Meta Install Referrer or Google Install Referrer are available in user level reports as source "Facebook" and can be distinguished by via attribution method ("Method") "meta_referral_id" and "referral_id", respectively.

How does Meta Referrer work?

Singular's "Meta Referrer" measurement consists of two install referrer technologies used by Meta when serving Android app install ads through Facebook, Instagram, or Audience Network.

Google Play Install Referrer Meta Install Referrer

When a user clicks on an advertiser's app app install ad on Meta's app (e.g. Facebook or Instagram) or Audience Network, Meta encrypts and logs the relevant ad campaign metadata (Meta referrer) and appends it to the referrer parameter in the Play Store URL. The Play Store URL redirects the user to the Play Store app product page, and the appended Meta referrer is saved by the store.

Once the resulting install completes and the user first opens the app, Singular's SDK reads the Google Play install referrer from the Play Install Referrer API to retrieve the Meta referrer from the Google Play install referrer data. The Meta referrer is then decrypted by Singular's servers for install attribution.

When a user views or clicks on an advertiser's app install ad on Meta's app (e.g., Facebook or Instagram) or Audience Network, Facebook's app encrypts and logs the relevant ad campaign metadata (Meta referrer) in the Facebook app's local storage layer on-device.

Once the resulting install completes and the user first opens the app, Singular's SDK reads the Meta referrer from the Meta install referrer data retrieved from the local storage layer on device. The Meta referrer is then decrypted by Singular's servers for install attribution.

Both technologies are used concurrently and alongside Singular's self-attributing integration with Meta, to arrive at a single attribution decision. See "How does Singular attribute installs between the self-attributed data and "Meta Referrer?"

What are the requirements to enable Meta Referrer for measurement?
Meta Referrer uses both "Google Play Install Referrer" and "Meta Install Referrer" for measurement. It is recommended to implement both to maximize data availability in cases where one or the other is not available.

Singular SDK and S2S Integration Requirements

  Google Play Install Referrer Meta Install Referrer

Singular SDK

Singular S2S API

 

Partner Configuration Requirements

  • Configure the Facebook partner configuration and provide the Meta "Install Referrer Decryption Key" according to step 2.4.
Why are there discrepancies between Meta Referrer attributions and Meta self-attributions?

Some possible reasons for discrepancies between the two measurement methods provided by Meta are:

  • Meta Referrer is supported for limit-ad-tracked users on Android 12+, where the Google Advertising ID is not available. Meta self-attribution is only available when the Google advertising ID is available.
  • Meta Referrer is supported for app installs only.
  • Meta Referrer is only available clicks and view that occurred on that device. Meta self-attribution supports cross-device claims for Meta users with multiple devices.
  • Meta Referrer is not supported for campaigns redirecting to landing pages
  • Meta Referrer supports view-through attributions, but only for broad targeting or Advantage+ App campaigns
  • If only Google Install Referrer is used, if Meta Install Referrer is not enabled:
    • Google Install Referrer only measures app installs, specifically for campaigns leading to the Play Store. Google Install referrer is not supported for user interaction with relevant ads that did not lead directly to the Play Store
    • The Google Install Referrer supports only click-through attributions, while Meta self-attribution supports both click-through and view-through
    • The Google Install Referrer uses the referrer value immediately preceding an app download. Repeat clicks on the same ad, after download, but before first app open, will not result in an updated referrer value. Meta's self-attribution logic may return with the more recent touchpoint after download, but before first app open
    • Google Install Referrer only supports Google Play Store, it is not supported for third party app stores.
What is Broad Targeting and how is it relevant for Meta Referrer attribution?

Broad targeting is required to receive view-through install data via the Meta Referrer. You can find the supported campaign configuration below:

  • Age: The default setting, "18-65+" is applied
  • Gender: The default setting, "All genders", is applied.
  • Location: Regions, country groups (e.g. Asia) or specific countries are applied as the location. 
  • Detailed Targeting: If detailed targeting such as demographics, interests or behaviors are applied, opting into Advantage detailed targeting is required.
  • Custom Audiences: If Custom Audiences are applied, opting into Advantage custom audience is required



Is the Meta Referrer solution available for iOS campaigns?

Meta Referrer attribution is only available on Android devices.

Where can I find my “Install Referrer Decryption Key”?

To find your decryption key, follow these below steps:

  1. In the Meta Developers Portal, go to My Apps and select the relevant app.
  2. Go to Basic settings and scroll down to the Android App Store section.
  3. Under Package Names, find the key labeled Install Referrer Decryption Key.

Partner Data Policies

As a Meta Mobile Measurement Partner integrated with Meta's self-attributing API, Singular adheres to the following data handling requirements.

Note that these policies only apply to Meta's self-attributed conversions and do not apply to Meta Referrer conversions on Android.

Data Retention

Meta user-level data is removed after 6 months of original attribution. After 6 months, users attributed to Meta are treated/marked as "Organic" and reflected as such in both aggregate and user-level reporting in Singular.

Data Access

To protect end-users' privacy, Meta does not allow advertiser access to any user-level data that is based on self-attributed conversions. Any field normally identifying a self-attributed Meta conversion is marked as "Unattributed". 

Limited Data Use

Meta allows advertisers to notify Meta if end-users choose to limit or allow data processing for users in the following states in the United States, using a "limited data use" (LDU) flag:

  • California (as of July 2020)
  • Colorado (as of June 2023)
  • Connecticut (as of June 2023)

Singular uses the limitDataSharing value passed to Singular SDK and S2S in integrations with privacy-compliant partners such as Meta. When Singular.limitDataSharing(true), Meta will "limit data use" for this user in Meta targeting if they are a California, Colorado, or Connecticut resident. If a limitDataSharing value is not explicitly provided, Singular defaults to notifying Meta that "limit data use" should be applied for California, Colorado, and Connecticut residents.

For implementation details and examples, see our iOS SDK, Android SDK, and S2S API guides. For more information about the "LDU" feature, see Meta's developer documentation