Learn how to set up and use the new Google Marketing Platform attribution integration, which allows Singular to track attributions for both Campaign Manager 360 and Display & Video 360.
If you are using the older (legacy) integration with GMP, see the Attribution-Integration" GMP (DoubleClick) Legacy Integration guide instead.
About the GMP Integration
Google Marketing Platform (GMP) is a suite of marketing tools for site and app marketers, which includes, among other products:
- Campaign Manager 360 (formerly Double Click Campaign Manager) - an ad server and campaign management platform.
- Display & Video 360 (formerly DoubleClick Bid Manager) - a demand-side platform (DSP).
Whether you use Campaign Manager 360 and Display & Video 360 together, or with third-party products, Singular's attribution for the relevant campaign is based on reporting floodlight activities through the GMP attribution integration. Floodlight activities are conversion-related events, such as app installs, sessions, and in-app user events.
Once you configure the integration, Singular sends app installs and app events to GMP's floodlight activities. This way Singular can measure installs and re-engagements (both click-through and view-through) attributed to Campaign Manager 360 or Display & Video 360.
If you are using both of these Google products and want Singular to report on advertising costs and show campaign ROAS, you need to add both the Campaign Manager 360 data connector AND the Display & Video 360 data connector.
Integration Summary
(See Partner Integrations Glossary)
Partner | Google Marketing Platform (GMP) |
Partner Type | Self-attributing Ad Network |
Creatives | Supported (DCM creative ID) |
Publisher | Supported (DCM site ID) |
View-Through | Supported |
Re-engagement | Supported |
S2S | N/A |
Click Tag | No (Self-attributing) |
Receiving All Installs | Recommended (Self-attributing) |
Receiving All Events | Recommended (Self-attributing) |
Setup Steps
1 |
Integrate the Singular SDK/S2S in your appSee our SDK and S2S documentation for help. |
2 |
Generate Link IDs for your AppIn Google Marketing Platform, generate a Link ID for your app:
Do not generate a Link ID in Display & Video 360 if you have Campaign Manager! |
3 |
Configure Google Marketing Platform as a partner in Singular
|
4 |
[Optional] Configure Event PostbacksBy default, Singular reports all installs and sessions to Google Marketing Platform to enable install and re-engagement attribution. However, you may choose to optionally send in-app events to support optimization and reporting in Google. If you choose to send event postbacks to Google, you must map them to one of the supported Google App Event Types in the dropdown: Note that Google Marketing Platform can support up to 10 custom events via "custom" and "custom_[0-9]". |
5 |
Run Reports on Display & Video 360 and/or Campaign ManagerIn Singular reporting, installs and other events attributed to Display & Video 360 are reported with Source = Google Marketing Platform (DV360). |
Data Mapping
The following tables reflect the data that the Singular tracker gets from GMP. The availability of certain fields depends on whether you are using only DV360, only CM360, or both Google products.
When Using DV360 and a Third-Party Ad Server
Dimension Name in Singular Reports | Tracking Link Parameter | Field Name in GMP |
Tracker Source Name | an | Google Marketing Platform (DV360) |
Campaign ID | pcid | ad_events.insertion_order_id |
Sub Campaign Name | pscn | ad_events.line_item_name |
Sub Campaign ID | pscid | ad_events.line_item_id |
Creative Name | pcrn | ad_events.creative |
Creative ID | pcrid | ad_events.creative_id |
Account ID | paccountid | ad_events.external_customer_id |
Partner Sub AdNetwork | pnetworkn | DV360 |
When Using CM360 and a Third-Party DSP
Dimension Name in Singular Reports | Tracking Link Parameter | Field Name in GMP |
Tracker Source Name | an | Google Marketing Platform (CM360) |
Sub Campaign Name | pscn | ad_events.placement_name |
Sub Campaign ID | pscid | ad_events.placement_id |
Creative ID | pcrid | ad_events.creative_id |
Publisher Site ID | psid | ad_events.site_id |
Account ID | paccountid | ad_events.external_customer_id |
Partner Sub AdNetwork | pnetworkn | CM360 |
When Using Both DV360 and CM360
Dimension Name in Singular Reports | Tracking Link Parameter | Field Name in GMP |
Tracker Source Name | an | Google Marketing Platform (DV360) |
Campaign ID | pcid | ad_events[DBM].insertion_order_id |
Sub Campaign Name | pscn | ad_events[DBM].line_item_name |
Sub Campaign ID | pscid | ad_events[DBM].line_item_id |
Creative ID | pcrid | ad_events[DBM].creative_id |
Publisher Site ID | psid | ad_events[DCM].site_id |
Account ID | paccountid | ad_events[DBM].external_customer_id |
Appendix: Generating a Link ID in Google
You only need one Link ID per app:
- If you are using both Campaign Manager and Display & Video 360, generate the Link ID in Campaign Manager
- If you're using Display & Video 360 only, generate your Link ID in Display & Video 360.
Generating a Link ID in Campaign Manager
1 | In Campaign Manager, go to Advertiser > Floodlight > Floodlight Configuration. |
2 | Click Link app analytics developer and select the app you are configuring. |
3 | Select Singular and save. |
4 | Select the app you want to measure and copy the Link ID. |
Generating a Link ID in Display & Video 360
1 |
In Display & Video 360, go to Advertiser > Resources > Floodlight > Basic Details > Third-Party App Analytics > Edit. |
2 |
Select Create New Link. |
3 | Select whether your app is iOS or Android, and then select the app. Select Singular as the third-party app analytics partner and click Add. In the next window, click Done. Click Submit at the bottom of the Floodlight page. |
4 |
Copy the Link ID for the desired app. See Google's Display & Video 360 documentation for more information. |
FAQ and Troubleshooting
In general, "first_open" is the default event. Singular uses it to report only the first sessions of each device to GMP. GMP then determines whether they will claim those first sessions as their own for install attribution purposes.
The "session_start" event is manually configured, which can be mapped to any event in Singular, such as "__SESSION__".
In this example, this event tracks every session reported and sends it to Google Marketing Platform under “session_start”.
For both CM360 and DV360, we do not receive Campaign Name data from the attribution integration. This means that in order to populate the Campaign Name correctly, we use network data. However, when campaigns begin this may take a day or two to occur.
You may see data discrepancies for the following reasons:
- GMP self-attributes substantially more impression-based touchpoints than clicks. So other partners may be awarded the install if they generated any click at any time within the relevant attribution windows. See how Singular prioritizes touchpoints.
- GMP-claimed impressions can be outside Singular’s default 24-hour view-through window, causing their reported install numbers to be higher. As a result, their events count will also be higher. Understand attribution lookback windows.
- We use last-touch attribution with GMP. If there are other partners with closer touch points, they will win the attribution even if GMP claims it as their own similar to other SANs.
- GMP may have claimed certain users in the past, while Singular attributed them to other partners or Organic. In such cases, GMP will continue to count their events as their own. In Singular, those users will continue to be tracked under their originally awarded partners, unless a re-engagement attribution has occurred.
Partner Data Policies
EEA User Consent Handling
Starting March 2024, Google Marketing Platform is requiring advertisers to pass consent signals for EEA users as part of their updates to support the Digital Markets Act EU regulation. EEA users who opt-out of these user consent signals will not be attributable nor will their data be used in Google for advertising purposes.
Singular provides the following options to help advertisers comply:
- If your business determines that EU privacy regulations for EEA users apply to your app, pass user consent signals to Singular based on the consent prompts your app presents to these users. See "How can I pass user consent signals to Singular?"
- If your business determines that EU privacy regulations don't apply to your app, you can opt-out of EEA user consent signals in Singular. check the "EEA opt-out" option under the "User Privacy" section in the partner configuration. See "How do I opt out of EEA data requirements?"
EEA User Consent Handling FAQ
When and how to collect user consent signals for EEA users should adhere to your business' and apps requirements for user privacy. Consult your business' legal counsel to understand how your app needs to adhere to internal privacy policies and privacy regulations such as GDPR, ePrivacy Directive, and the Digital Markets Act.
If you decide to collect user consent signals, it is generally recommended that:
- User consent signals be set only when the user has explicitly opted-in or out. It is recommended to leave LDS unset if a user did not make a choice. The absence of a user signal may be important.
- User consent signals are commonly collected in "Privacy Choices" or "Privacy Settings" during the app experience.
- When possible, and depending on your app's consent prompt design and strategy, surface privacy prompts early in the app flows to ensure Singular and other SDKs can collect the user consent signal as early as possible
- Using Singular's iOS SDK:
limitDataSharing Method Description Notify Singular of user consent (opt-in) for sharing private data.
- Use limitDataSharing:NO to indicate that the user consented (opted in) to share their information.
- Use limitDataSharing:YES if the user did not consent.
Signature (void)limitDataSharing:(BOOL)shouldLimitDataSharing; Usage Example // User has opted into sharing data Singular.limitDataSharing(false)
// User has opted into sharing data
[Singular limitDataSharing:NO]; - Using Singular Android SDK:
Singular.limitDataSharing Method Signature Singular.limitDataSharing(boolean shouldLimitDataSharing)
- Use Singular.limitDataSharing(false) to indicate that the user consented (opted in) to share their information.
- Use Singular.limitDataSharing(true) if the user did not consent
Description Notify Singular of user consent (opt-in) for sharing private data. Usage Example // User has opted into sharing data
Singular.limitDataSharing(false);
- See our iOS, Android, and Server-to-Server API techincal documentation articles on "Limit Data Sharing"
- It is recommended that LDS is set prior to Singular SDK initialization, thereby allowing Google to capture the user consent signals at time of app install to maximize measurement and advertising insights
- Singular LDS will be mapped to Google Marketing Platform's "ad_user_data" and "npa" user consent signals for EEA users, as below:
- LDS=true maps to ad_user_data=0 and npa=1
- LDS=false maps to ad_user_data=1 and npa=0
- Unset LDS maps to unset ad_user_data/npa
- (Coming soon, after March 2024) The Singular SDK/S2S will support an optional mode to automatically ingest user consent signals from certified Consent Management Platforms (CMP). Until then, you can extract the user consent signals from your CMP and pass them through LDS
- Implementing LDS for EEA users is not required if using this option
- This option can be enabled prior to Google's March updates going live
Singular's Limit Data Sharing (LDS) is a feature that allows app developers to pass each user's user consent signals to Singular. LDS is set per user and can be set before or after SDK initialization. LDS is used in Singular User Privacy Postbacks and passed to certain partners like Google, who use it to comply with their own data practices.
See "Supporting User Privacy Choices with Limit Data Sharing FAQ"
Google lists Consent Management Platforms (CMPs) that support the required user consent signals. If you use one of these CMPs, you can extract the user consent signals and pass them through Singular's LimitDataSharing feature.
(Coming soon) The Singular SDK/S2S will support an optional mode to automatically ingest user consent signals from these certified CMPs (via the TCF 2.2 standard).
Starting March 2024
For EEA users that opt-out to user consent:
- User-level attribution to Google Marketing Platform campaigns will not be available in Singular. Google won't be able to report these attributions to MMPs
- Google Marketing Platform won't be able to use this users data for advertising purposes
For EEA users that opt-in to user consent:
- User-level attribution to Google Marketing Platform campaigns are possible
- Google Marketing Platform will use this data for advertising purposes
We encourage advertisers to reach out to their Google representative for more detailed information with respect to your specific campaigns and configurations.