Campaign Manager 360 Beta

Send your event data from RudderStack to Campaign Manager 360.

Campaign Manager 360 is an ad management platform which optimizes your digital campaigns across websites and mobile. It provides many useful features for ad serving, targeting, verification, and reporting.

RudderStack supports sending the offline conversion events to Campaign Manager 360 by leveraging their Conversions API.

Find the open source code for this destination in the GitHub repository.

Connection compatibility

Destination Information
  • Status: Beta
  • Supported sources: Android, iOS , Web, Unity, AMP , Cloud, Warehouse, React Native , Flutter, Cordova, Shopify
  • Refer to it as CAMPAIGN_MANAGER in the Integrations object.
Connection Modes
SourceCloud modeDevice modeHybrid mode
AMPsupportednot supportednot supported
Androidsupportednot supportednot supported
Cloudsupportednot supportednot supported
Cordovasupportednot supportednot supported
Fluttersupportednot supportednot supported
iOSsupportednot supportednot supported
React Nativesupportednot supportednot supported
Shopifysupportednot supportednot supported
Unitysupportednot supportednot supported
Warehousesupportednot supportednot supported
Websupportednot supportednot supported
Supported Message Types
SourceIdentifyPageTrackScreenGroupAliasRecord
Cloud mode
Supported sourcesnot supportednot supportedsupportednot supportednot supportednot supportednot supported

Setup

  1. In your RudderStack dashboard, set up a source.
  2. Go to the Overview tab of your source and select Add Destination > Create new destination.
Add new destination in RudderStack dashboard
  1. Select Campaign Manager 360 from the list of destinations. Then, click Continue.

Connection settings

Before you set up Campaign Manager 360 as a destination in RudderStack, authenticate your account by following these steps:

  1. Click Create Account in the Account Settings section.
  2. From the modal, click the Sign in with Google button.
  3. Choose the required account and grant RudderStack the required permissions.
  4. Click Save to use the specified account:
Google Account authentication

If you have authenticated multiple accounts, you can click Edit Credentials to select or delete any other authenticated account:

warning
RudderStack throws an error if you try to delete an account used by any other connection set up for the same destination.
Google Account authentication

Next, configure the following settings:

Setting
Description
Profile IDEnter the user profile ID associated with the request.

See the batchinsert and batchupdate methods of the Campaign Manager 360 Conversions API for more information.
Limit ad trackingToggle on this setting to report a conversion but not target it, thus preventing remarketing.
Child directed treatmentToggle on this setting to allow requests from users under the age of 13 (required for COPPA compliance).
Non personalized adToggle on this setting if the conversion is intended for a non-personalized ad.
Treatment for underageToggle on this setting to allow requests from users under the age of 16 (required for European Union’s GDPR compliance).
Enhanced conversionsToggle on this setting to send enhanced conversions to Campaign Manager 360.
Hash user identifiersThis setting is visible if Enhanced conversions is toggled on. Enable it to hash user identifiers in your events before sending the data to Campaign Manager 360.

warning
Toggle off this setting if you are already sending hashed data in your events.
Consent management settingsThis setting lets you associate the cookie consent groups to Campaign Manager 360. Specify the consent management provider from the dropdown and enter the category IDs.

See Consent Management in RudderStack for more information on this feature.
info
You can also pass values for these settings in your Track events. However, note that these values will take precedence over the dashboard settings.

Track

You can use the track call to capture user events along with the associated properties and send them to Campaign Manager 360.

A sample track call is shown below:

rudderanalytics.track("Product Reviewed", {
  "profileId": 437689,
  "floodlightConfigurationId": "213123123",
  "ordinal": "3",
  "floodlightActivityId": "456543345245",
  "mobileDeviceId": "mobileDeviceId",
  "value": 7,
  "encryptedUserId": "encrepyteduserId"
  "impressionId": "string",
  "limitAdTracking": false,
  "childDirectedTreatment": true,
  "encryptionInfo": {
    "kind": "dfareporting#encryptionInfo",
    "encryptionSource": "AD_SERVING",
    "encryptionEntityId": "3564523",
    "encryptionEntityType": "DCM_ACCOUNT"
  },
  "requestType": "batchinsert"
})

Send enhanced conversions

The Campaign Manager 360 Conversions API supports sending enhanced website tag-based conversions with user identifiers.

To use this feature, you must first accept the Enhanced Conversions Terms of Service for your Floodlight configuration in Campaign Manager 360 by following these steps:

  1. Log in to your Campaign Manager 360 account.
  2. Select the advertiser for which you want to set up the enhanced conversions.
  3. Go to Floodlight > Configuration in the left sidebar and select the checkbox under the Enhanced Conversion section.

To send enhanced conversions to Campaign Manager 360, toggle on the Enhanced conversions setting in the dashboard and set properties.requestType to batchupdate in your track events, as shown:

rudderanalytics.track(
  "Product Reviewed", {
    "profileId": "34245",
    "floodlightConfigurationId": "213123123",
    "ordinal": "string",
    "floodlightActivityId": "456543345245",
    "value": "756",
    "quantity": "455678",
    "gclid": "string",
    "encryptionSource": "AD_SERVING",
    "encryptionEntityId": "3564523",
    "encryptionEntityType": "DCM_ACCOUNT",
    "requestType": "batchupdate"
  }, {
    email: "alex@example.com",
    firstName: "Alex",
    lastName: "Keener",
    address: {
      street: "350 Blue Gum Street",
      city: "New Orleans",
      state: "Louisiana",
      country: "US",
      postalCode: "90009",
    },
  },
);

Note that:

  • You must enhance the conversions with user identifiers within 24 hours after they are captured by the online tags.
  • A conversion can have a maximum of five user identifiers.
info
For security purposes, RudderStack automatically hash-encrypts the user identifiers before sending them to Campaign Manager 360. Make sure to turn off the Hash user identifiers setting if you are already tracking hashed user data via RudderStack.

Property mappings

The following table lists the event property mappings between RudderStack and Campaign Manager 360:

RudderStack propertyCampaign Manager 360 propertyData type
properties.floodlightActivityId
Required
floodlightActivityIdString
properties.floodlightConfigurationId
Required
floodlightConfigurationIdString
properties.ordinal
Required
ordinalString
properties.quantity
Required
quantityString
timestamp
Required
timestampMicrosTimestamp in ISO 8601 format
properties.profileId
config.profileId
profileIdNumber
properties.encryptedUserIdencryptedUserIdString
properties.encryptedUserIdCandidates[]encryptedUserIdCandidates[]Array
properties.dcliddclidString
properties.gclidgclidString
properties.matchIdmatchIdString
properties.mobileDeviceIdmobileDeviceIdString
warning

Apart from the above-mentioned properties marked as required, you must also send the following:

  • properties.requestType in the conversion event with the value as batchinsert or batchupdate.
  • At least one of the optional fields.

User identifier mappings for enhanced conversions

The following table lists the user identifier mappings between RudderStack and Campaign Manager 360:

RudderStack propertyCampaign Manager 360 property
traits.email
context.traits.email
hashedEmail
traits.phone
context.traits.phone
hashedPhoneNumber
traits.firstName
context.traits.firstName
addressInfo.hashedFirstName
traits.lastName
context.traits.lastName
addressInfo.hashedLastName
traits.street
traits.address.street
context.traits.street
context.traits.address.street
addressInfo.hashedStreetAddress
traits.city
traits.address.city
context.traits.city
context.traits.address.city
addressInfo.city
traits.country
traits.address.country
context.traits.country
context.traits.address.country
addressInfo.countryCode
traits.state
traits.address.state
context.traits.state
context.traits.address.state
addressInfo.state
traits.postalCode
traits.address.postalCode
context.traits.postalCode
context.traits.address.postalCode
addressInfo.postalCode

Note that:

  • The fields mapped to addressInfo.countryCode (traits.country / traits.address.country /context.traits.country / context.traits.address.country) must contain a 2-letter ISO-3166 Alpha-2 country code of the user’s address. See the Campaign Manager 360 documentation for more information.
  • The phone number (traits.phone or context.traits.phone) must contain a proper country code in it. If the phone number does not have a country code, make sure to provide the mapping for the addressInfo.countryCode field, given the Enhanced conversions and Hash user identifiers settings are toggled on.


Questions? Contact us by email or on Slack