Freshpaint
HomeLogin
  • Documentation
    • What is Freshpaint?
    • ⚕️HIPAA Mode
    • 🏗️Building Out Your Account
    • 🌐Overview of Features
    • Guides
      • 📡Add Autotrack to your website to collect data from your users
        • Installing the Freshpaint Javascript SDK
        • Installing the Freshpaint SDK with a Content Security Policy (CSP)
        • Installing the Freshpaint Javascript SDK with Server-Side Rendering (SSR) + React
        • Autocapture + React
        • Configuring a Destination
        • Labeling User Actions
        • How do I install Freshpaint with Typescript?
      • 🔁Send historical data to any destination with Time Machine
      • Next.js Quickstart Guide
      • Android Quickstart Guide
        • Installing the Freshpaint Android SDK
        • Configuring a Destination
        • Instrumenting Your App
      • iOS Quickstart Guide
        • Installing the Freshpaint iOS SDK
        • Configuring a Destination
        • Instrumenting Your App
      • React Native Quickstart Guide
        • Installing the Freshpaint React Native SDK
        • Configuring a Destination
        • Labeling User Actions
        • Configuring Property Capture
    • Setting up Properties
    • Setting up Your Destinations
      • Enabling and Disabling a Destination
      • Deleting a Destination
    • Setting up Your Events
    • User Identification
      • Designated Identify Properties
    • Maps
    • Analytics (Beta)
      • Web Analytics Dashboard
      • Campaigns
      • Service Lines
      • Data Glossary
    • Translations
    • Web Tracker Monitoring
      • Tracker Resolution Types
      • Historical Scans
  • Integrations
    • Destinations
      • Demand Side Platforms (DSPs)
        • Basis
          • Basis Quick Start Guide
          • Basis Reference
        • Google Campaign Manager 360
        • StackAdapt
          • StackAdapt Quick Start Guide
          • StackAdapt Reference
        • theTradeDesk
          • theTradeDesk Quick Start Guide
          • theTradeDesk Reference
          • theTradeDesk with CM360 Configuration Guide
        • Viant
          • Viant Quick Start Guide
          • Viant Reference
      • Direct Response Ads
        • Facebook Conversions API
          • Facebook Conversions API Quick Start Guide
          • Facebook Conversions API Reference
        • Google Ads Conversion API
          • Google Ads Conversion API Quick Start Guide
          • Google Ads Conversions API Reference
        • Google Ads
          • Google Ads Quick Start Guide
          • Google Ads Reference
        • LinkedIn Ads
          • LinkedIn Ads Quick Start Guide
          • LinkedIn Ads Reference
        • Microsoft Ads (formerly Bing Ads)
          • Microsoft Ads Quick Start Guide
          • Microsoft Ads Reference
          • Microsoft Ads Multi-Config Reference
        • Pinterest Ads (Beta)
          • Pinterest Ads Quick Start Guide
          • Pinterest Ads Reference
        • Pinterest Tag
        • Reddit Ads
          • Reddit Ads Quick Start Guide
          • Reddit Ads Reference
        • TikTok Ads
        • Twitter Ads
      • Data Activation
        • ActiveCampaign
          • ActiveCampaign Quick Start Guide
          • ActiveCampaign Reference
        • Amplitude
          • Amplitude Quick Start Guide
          • Amplitude Reference
        • Braze (formerly Appboy)
          • Braze Quick Start Guide
          • Braze Reference
        • Customer.io
          • Customer.io Quick Start Guide
          • Customer.io Reference
        • Freshsales
        • Google Analytics 4 Proxy
          • Google Analytics 4 Proxy Quick Start Guide
          • Google Analytics 4 Proxy Reference
          • Google Analytics 4 Proxy Advanced Tracking Configurations
        • Google Analytics 4 Server-Side
          • Google Analytics 4 Server-Side Quick Start Guide
          • Google Analytics 4 Server-Side Reference
        • Heap
        • Hotjar
        • HubSpot Cloud
        • HubSpot Web
        • impact.com
          • Impact.com Quick Start Guide
          • Impact.com Reference
        • Intercom
          • Intercom Quick Start Guide
          • Intercom Reference
        • Iterable
          • Iterable Quick Start Guide
          • Iterable Reference
        • June
        • Klaviyo
        • Mixpanel
          • Mixpanel Quick Start Guide
          • Mixpanel Reference
        • OneSignal
          • OneSignal Quick Start Guide
          • OneSignal Reference
        • Podscribe (Early Access)
        • Sendinblue
        • Sentry
        • Vero Cloud
        • Webengage
        • Webhooks
        • Woopra
        • Zendesk
      • Data Warehouses
        • Azure Warehouse Setup
        • BigQuery Warehouse Setup
        • Databricks Warehouse Setup
        • Postgres Warehouse Setup
        • Redshift Warehouse Setup
        • S3 Warehouse Setup
        • Snowflake Warehouse Setup
      • Consent Management
        • Osano
        • OneTrust
        • Custom Consent Manager
    • Sources
      • Web
        • Autotrack
        • Precision Tracking
      • CallRail
      • Invoca
      • Customer.io
      • Intercom
      • Mailchimp
      • React Native
      • SendGrid
      • Sendinblue
      • Server-Side
      • iOS
    • 🔷Google Tag Manager integration
      • Google Tag Manager migration
      • Quick Start Guide
    • 📺Freshpaint Video Platform
    • 🖼️Impression Pixel
  • Admin Panel
    • Event Library
      • Event Library Bulk Actions
      • Event Definition Filters
      • Event Tester
      • 🔁Time Machine
      • Visual Tagger
      • Advanced Options
        • Tag Manager
        • Disabling Target Text Capture
        • Cross Domain Tracking
    • Projects & Environments
    • Teams
      • Role-Based Access Control (RBAC)
    • Transformations
      • Standard Events
      • Modify Data
      • Modify User Data
      • SQL Transformations
    • 📈Destination Monitoring
    • 🔎Investigate: Testing and Debugging
      • Live View
      • Event Verification
  • Reference
    • Developer Docs
      • Freshpaint Web SDK Reference
      • Freshpaint Web SDK Options
      • Freshpaint React Native SDK Reference
      • Freshpaint iOS SDK Reference
      • Freshpaint Android SDK Reference
      • HTTP API
    • Frequently Asked Questions
      • How do I circumvent ad blockers?
      • Can Freshpaint track users across domains?
      • Can I install Freshpaint on a Chrome extension?
      • What properties are captured with my events?
      • How Do I Switchover From Segment?
      • How Do I Switch From Native Google Analytics to the Freshpaint Google Analytics Destination?
      • Where do I find my Environment ID?
      • Is Freshpaint GDPR & CCPA Compliant?
      • Can I use transformations to anonymize data for client-side destinations?
      • How do I QA or debug my data?
      • Why Do My Numbers Differ Across Different Tools?
      • Billing: How Does Freshpaint Determine MTUs?
      • Can I Use Freshpaint on Multiple Sites?
      • How Can I Export Data From Freshpaint?
      • How Does Freshpaint Identify Users?
      • How Many Events Should I Create?
      • What Should I Name My Events?
      • How do I track scroll depth?
      • What Data Does Freshpaint Collect?
        • Data Collected on Web
        • Data Collected on React Native
      • Does Freshpaint's Autotrack slow my site down?
      • Running Freshpaint with a Proxy
      • Should my Environment ID be treated as a sensitive key?
      • How Does Freshpaint Determine Session Count?
      • What is the difference between client-side and server-side connection mode?
      • What is a Proxy Integration?
      • Where can I view Freshpaint’s Status?
      • Does Freshpaint provide HIPAA audit logs?
      • Freshpaint Cookie Too Large
      • How does Freshpaint compare to server-side Google Tag Manager?
      • If a user re-installs my app, will Freshpaint generate a new device ID?
      • Why doesn't Freshpaint need a BAA before sending data to Google Ads and Facebook Ads?
      • What Implementation Services Does Freshpaint Offer?
      • Single Sign On (SSO) Setup
Powered by GitBook
On this page
  • Destination Info
  • Getting Started
  • Connecting Campaign Manager 360 to Freshpaint
  • Authentication
  • Adding Required Properties
  • Linking a Freshpaint Event to a Floodlight Activity
  • If you are a HIPAA account, you will need to add event properties to this destination's allowlist. If you are not a HIPAA account, you can skip this step.
  • De-duplicating conversions
  • Click-through conversions
  • View-through conversions - Configuring an Impression PIxel
  • Setting Up a Test Campaign in Google Campaign Manager
  • Verifying Conversion Reporting

Was this helpful?

  1. Integrations
  2. Destinations
  3. Demand Side Platforms (DSPs)

Google Campaign Manager 360

PreviousBasis ReferenceNextStackAdapt

Last updated 19 days ago

Was this helpful?

Destination Info

  • Supports calls

  • Supports

  • Supports

  • Supports forwarding from the

  • Refer to this destination as Google Campaign Manager 360 Conversions API in the

  • Connection Modes:

Client-side
Server-side

Web

Mobile

Server

Getting Started

Freshpaint's Campaign Manager 360 (CM360) conversions destination allows for tracking click- and view-through conversions from ads managed in CM360, including those linked with other Google Marketing Platform products like Display and Video 360 (DV360). The integration is used to send conversion data to Floodlight Activities within CM360.

Connecting Campaign Manager 360 to Freshpaint

To proceed with setup, you will need the following:

  • A CM360 account that is (this is the case by default for most CM360 accounts)

  • A user profile in your CM360 account that has access to the advertiser and Floodlight activities you would like to connect and the "Insert offline conversions" permission

  • A Freshpaint account that has the CM360 Conversions API destination enabled

When adding a new CM360 destination to Freshpaint, you will need to specify a profile ID and advertiser ID

Profile ID is a seven digit number associated with the account you are going to connect to CM360. Note that for the CM360 integration to work, the profile ID here must belong to the account that is connected via OAuth.

The connected user profile must have permission to "Insert Offline Conversions" in Google Campaign Manager 360 for the destination to work. This permission can be added from the User Roles screen.

Advertiser ID is an eight digit number associated with the advertiser that you are connecting to Freshpaint. It is found in several places throughout the Google Marketing Platform suite of products and may be referred to by terms such as "Floodlight configuration ID". One place it can be found on the "All advertisers" screen.

Once the Profile and Advertiser IDs have been specified, select "Connect with Google CM360" from the Freshpaint configuration page and follow the onscreen prompts to connect your Google account with CM360. Note that the Google account used to connect to CM360 should be the same account that the Profile ID was taken from in the previous step.

Authentication

There are two different methods that can be used to authenticate the connection between Freshpaint servers and Google. Only one of these approaches is necessary.

User Account

A user who has access to both Freshpaint and Google Campaign Manager 360 may delegate access to Freshpaint using the user account. Freshpaint will be granted the limited permissions necessary to send conversion events to google CM360 and be directly tied to the account of the user who delegated access. If that user account is removed or reset, google may revoke the authentication credentials that have been delegated to Freshpaint under that user account.

The user delegating access to their User Account needs to have the "Insert offline conversions" permission as part of their role within Campaign Manager 360.

Navigate to Apps > Destinations > Google Campaign Manager 360 and click either Connect or Reconnect in the Access Permission row of the destination configuration page. In the popup dialog select User Account and then Connect with Google CM360 which will redirect you to Google to complete authentication and delegation of permissions to Freshpaint.

Service Account

A user account within google can be created only for Freshpaint that will provide Freshpaint with a set of credentials that are not tied to any specific user. The creation of this account will require working with someone with necessary permissions within an underlying google cloud account to configure a service account.

Once the service account has been created within Google, the credentials file can be uploaded to the Freshpaint application.

Navigate to Apps > Destinations > Google Campaign Manager 360 and click either Connect or Reconnect in the Access Permission row of the destination configuration page. In the popup dialog select Service Account and upload the json file with the credentials for Freshpaint to use and click save.

Adding Required Properties

For an event to be processed and successfully forwarded to CM360, the following properties are required:

  • activity_id — The 9-digit ID for the Floodlight Activity that conversions should be associated with. This may be added as an event transformation or directly sent with individual events.

  • $dclid — This is the double click ID used for the majority of click-through conversions. Enhanced attribution must be enabled in CM360 for conversions to work correctly; see below. An event still can be sent to CM360 without a $dclid present if one of $edimpid or $gclid is present on the event instead, but dclid always must be allowlisted.

  • $edimpid — This is used by view-through conversions with the Impression Pixel, and must be enabled to use the Impression Pixel.

Recommended Properties

  • $gclid — This is used by Google's native advertising platforms, including Google Ads and Google Search Ads 360. You may want this enabled if you have CM360 connected to one of these platforms. If it is possible for gclids to come from a Google Ads account that is not connected to CM360, it is recommended to leave this off of events sent to CM360.

Note that if an event has multiple identifiers on it, conversions sent to CM360 will use the most precise ID available to it, preferring $dclid first, $gclid second, match_id third, and $edimpid last.

Optional Properties

Property Name
Default Value
Description

quantity

1

The number of conversions to count with the event. Can be used with both Floodlight Counter and Floodlight Sales tags, though typically should be set to 1 for standard conversion counting.

value

1.0

The value associated with a conversion. Used with Floodlight Sales tags.

ordinal

Event-specific ID

adDataUserConsent

GRANTED

Whether or not consent has been granted. If present, must be set to "GRANTED" or "DENIED" Since Freshpaint already strips out disallowed user data from the request, this is set to granted by default.

childDirectedTreatment

none

When set to true, indicates that an event may be associated with a user under the age of 13. Used for COPPA compliance purposes.

treatmentForUnderage

none

When set to true, indicates that an event may be associated with a user under the age of 16, country-dependent. Used for GDPR compliance purposes.

limitAdTracking

none

When set to true, indicates the conversion will be used for reporting but not targeting and prevents remarketing.

nonPersonalizedAd

none

When set to true, indicates the conversion was for a non-personalized ad.

Freshpaint also supports transmitting Floodlight custom variables of the form u1, u2, u3...u100. Note that these values must be individually allowlisted in order to be sent.

Linking a Freshpaint Event to a Floodlight Activity

Each Floodlight tag in Campaign Manager uses an Activity ID value to uniquely identify the conversion action. Follow these steps to link your Freshpaint event to your Floodlight activity:

  1. At the Advertiser level, navigate to Floodlight > Activities from the left nav and find the specific Floodlight activity you want to link your Freshpaint event. The value beside the activity name is the Floodlight tag's Activity ID (save this for later).

  2. Attach the Activity ID to the related event in Freshpaint by creating a Transformation in Freshpaint:

    1. Click "Modify Data"

    2. Select your Freshpaint conversion event, select the Google Campaign Manager 360 Conversions API destination, then click "Save & Add Transformations"

    3. Select the "Send Constant Property" transformation option, use activity_id as the property name, and copy/paste the Activity ID value from step 1.

    4. Click "Save" to complete your transformation rule

If you're using Google Tag Manager and building a tag with the Freshpaint Google Campaign Manager 360 Conversions API tag type, make sure to map the activity_id value of the Floodlight tag into the Activity ID field within the tag configuration.

Doing so will mitigate the need for you to set a transformation rule to link your Freshpaint event to the Floodlight activity, since the activity_id value will already be in place from the GTM tag.

If you are a HIPAA account, you will need to add event properties to this destination's allowlist. If you are not a HIPAA account, you can skip this step.

  1. Configure the destination's HIPAA Allowlist by navigating to Overview > DSP from the left nav and clicking Google Campaign Manager 360 Conversions API under the Destinations section.

  2. Click on the "Configure" button beside the Required Properties row under the Configuration section

  3. Ensure the activity_id property is allowlisted, along with other required properties for the destination.

De-duplicating conversions

The optional counting_method property can be used to override the default behavior of ordinal when a value for ordinal is not provided. There are 3 supported values for counting_method:

  1. "standard": Default behavior. Counts every conversion.

  2. "unique": Counts the first conversion for each unique user during each 24-hour day, from midnight to midnight, Eastern Time (US).

  3. "session": Counts one conversion per user per session. Session length is set by the site where the Floodlight tag is deployed.

Click-through conversions

To support click-through conversions with CM360, the enhanced attribution feature needs to be configured on the floodlight configuration used within CM360.

View-through conversions - Configuring an Impression PIxel

Copy the pixel configuration URL provided for use in CM360. On the advertiser in CM360, create a new Impression event tag with the "image" type and use URL from the Freshpaint configuration UI, as in the example screenshots below.

Setting Up a Test Campaign in Google Campaign Manager

  1. Coordinate with your marketing team or Agency partner who manages your campaigns

    1. Let them know it’s a small-scale test campaign designed to validate tracking and performance.

  2. Link your Freshpaint event(s) to a Floodlight activity/activities

  3. Choose your creative and create a campaign

    1. Use existing, current, or new creative—your choice!

  4. Choose your channel

    1. Target a channel that tracks clicks and views for more accurate validation

  5. Set your budget

    1. Keep it small ($10-50); aim for 1,000–3,000 impressions

  6. Verify results

    1. Ensure that click- and view-through conversions are tracking correctly both in Freshpaint and in your Campaign Manager account

Verifying Conversion Reporting

Once you have followed the steps above, you can verify that conversions are being reported to Google Campaign Manager

Event Verification

In Freshpaint, you can use the event verification tab to see which events are being successfully sent to Google Campaign Manager. You can also dig into each event to see the data being sent or investigate errors if there are any.

Google Campaign Manager Reporting

Navigate to the Reporting and Attribution section. Under the Report Builder tab, create a new Instant Report:

Create an Activity report that breaks down the data by columns like view/click-through conversions and total conversion counts:

Please follow the Google documentation on the creation and configuration of a service account available at:

The service account should be provided with the scope which will allow access to send conversion events to Google.

Navigate to the in CM360 to find this value.

match_id — The custom unique match ID used for tracking conversions from your ad campaigns. Used as an alternative to standard Google identifiers (eg. $edimpid, $dclid, or $gclid) when the use case requires supplying a custom unique identifier from outside of CM360 for linking ad impressions to conversions. This might be helpful in scenarios where CM360 is involved in conversion attributions but is not being used as a server for the ad creative. .

Freshpaint supports sending optional properties documented in the CM360 Conversions API to CM360. For more details on these fields and the underlying API, see .

A deduplication ID used to prevent double-counting conversions. The default behavior is to use a unique ID per event, which should cover typical CM360 use cases. Read more about .

Click on "Create New" in

Please see on how to configure dclids to be attached to landing page links.

To track view-through conversions on CM360, you will need to configure the for the destination. In the impression pixel config screen within the destination configuration page for the CM360 destination, ensure one or both of IP or Cookie based matching is turned on. Note that these matches are only used by the Freshpaint application to match users to prior impressions; this information is not forwarded to the destination unless explicitly allowlisted.

Track
HIPAA mode
Freshpaint Impression Pixel
Google Tag Manager Integration
Integrations object
enabled for API access
https://developers.google.com/doubleclick-advertisers/service_accounts
https://www.googleapis.com/auth/ddmconversions
The Floodlight Activities Tab
See Google's CM360 documentation for more information
https://developers.google.com/doubleclick-advertisers/rest/v3.4/Conversion
Transformations
Google Support - Enhanced attribution
Freshpaint Impression Pixel
De-duplicating conversions
Configuration for a CM360 destination in Freshpaint.
User profiles screen in Campaign Manager 360. In this example, the profile ID for "my_account" is 0451343
All advertisers screen in Campaign Manager 360. In this example, the advertiser ID for "My Advertiser" is 01234567
Counting method option in Google Tag Manager
Freshpaint impression pixel config. At least one form of matching must be enabled.
Impression event tags section in CM360
A newly configured Impression event tag. The "name" field can be any value. Tag Type should be "Image", enabled "Yes", and the URL should match the one provided by the Freshpaint config screen.