Skip to main content

The Google Campaign Manager Offline Conversions API Program for Offline Conversions

The Google Campaign Manager Offline Conversions API Program for Offline Conversions enables Google DV360 customers and Campaign Manager 360 customers to understand the ROI of their advertising campaigns across online and offline purchase channels in one place. This enables closed-loop measurement of transactions tied to digital ad exposure to provide marketers a full understanding of the customer journey.

This attribution analysis is done by Google and is available in Google DV360.

Note

  • You must be an existing customer of a specific DV360 product (such as Display) to get visibility into Conversions API data. For example, if you are not a DV360 Display client, you will not see Conversions API data for your search campaigns.

  • LiveRamp's integration only covers offline conversions. Online conversion attribution must be implemented directly with Google.

  • The Google Campaign Manager Offline Conversions API Program for Offline Conversions was formerly known as "the Google Campaign Manager Offline Conversions API Attribution Program".

Utilizing info from the Campaign Manager Offline Conversions API, advertisers can:

  • Further refine their ad campaign to optimize bids (manual or auto) to drive performance

  • Exclude or remarket to existing customers

  • Provide personalized creative experiences

The following steps need to be performed to enable the attribution analysis in Google Ads:

  1. You authorize LiveRamp to send data to your Campaign Manager 360 account.

  2. You grant LiveRamp user access to insert (upload) offline conversions to your account.

  3. If necessary, set up your Floodlight activities and custom Floodlight variables.

  4. You send the generated IDs to LiveRamp.

  5. You contact LiveRamp to set up additional audiences in Connect for each additional Floodlight activity, if necessary.

  6. You send LiveRamp a sample conversion data file that follows the guidelines listed below.

  7. You activate the campaign.

  8. You send conversion data from the last 28 days to LiveRamp.

  9. LiveRamp matches the data and delivers your data to your Google DV360 account.

  10. You view the attribution analysis in Google DV360.

See the appropriate sections below for more information on performing these steps.

Contact your DV360 Account Manager to inform them you wish to enable the LiveRamp + DV360 integration. Once you receive an email from your DV360 Account Manager asking for confirmation to allow LiveRamp to send data into your account, provide confirmation.

This step will grant LiveRamp access to insert offline conversion data into your Campaign Manager 360 account. The permission given will only allow LiveRamp to insert offline conversions via the API.

Tip

Save the ID: Once you’ve created a new user profile for LiveRamp, record the LiveRamp Access Profile ID so you can send it to us in a later step.

To grant access in Campaign Manager 360:

  1. Create a new user role:

    1. From the navigation menu in Campaign Manager 360, select Admin and then select User roles.

      GCM_Conversions-Grant_Access_User_roles_menu_selection.png
    2. From the User Roles page, click New.

      GCM_Conversions-Grant_Access_User_roles_New_button.png
    3. In the “User role name” field, enter “Offline API Access”.

      GCM_Conversions-Grant_Access_User_roles_name.png
    4. In the “Source user role” field, select “Advertiser/Reporting Login”.

      GCM_Conversions-Grant_Access_Source_User_role.png
    5. In the Trafficking section, check the check box for “Floodlight: Full Access” (leave all other boxes as is).

      GCM_Conversions-Grant_Access_Floodlight_full_access.png
    6. In the Reporting section, uncheck all check boxes and check the check box for “Insert offline conversions”.

      GCM_Conversions-Grant_Access_Insert_offline_conversions.png
    7. Click Save.

      GCM_Conversions-Grant_Access_User_roles_Save_button.png
  2. Create a new user profile:

    1. From the navigation menu, select Admin and then select User profiles.

    2. From the User Profiles page, click New.

    3. Enter the following information:

      • Email: googleauth@liveramp.com

      • Profile name: LiveRampAPIAccess

        Note

        Google might add a number at the end of this name– this is okay.

      • User role: Offline API Access

    4. Click Save.

Floodlight activities are used as conversion tags in DV360 to group conversions. For example, if you manage multiple brands, you might use a different Floodlight activity for each brand. This enables Campaign Manager 360 reporting to filter by advertising campaign conversions.

Note

You can use up to five Floodlight activities with your LiveRamp integration. Each Floodlight activity requires a corresponding LiveRamp audience. Follow the steps in the “Create Additional Audiences” section below to create additional audiences if you use more than one Floodlight activity.

If you haven’t set up Floodlight activities for a prior campaign, follow the steps below to create Floodlight activities.

Custom Floodlight variables allow you to further categorize your conversions for each Floodlight activity by such categories as product groups, customer type, or conversion channels (e.g., in-store sales or phone sales). Each variable is given an ID starting with “U” (such as “U1”). You create a variable name (the “friendly name”) and select the appropriate data type (string or number) when creating the variable.

Use custom Floodlight variables in the way that makes the most sense for your situation. For example, if your offline conversions goal is to track the different customer types that make an in-store purchase, you might create the following custom Floodlight variables and include the following variables fields in your conversion files:

Custom Floodlight Variable ID

Friendly Name

Field Name

1

New Customer

U1

2

Reactivated Customer

U2

3

Existing Customer

U3

If your offline conversions goal is to track the different channels through which a customer converts, you might create the following custom Floodlight variables and include the following variables fields in your conversion files:

Custom Floodlight Variable ID

Friendly Name

Field Name

1

In-Store

U1

2

Phone

U2

3

Catalog

U3

To create a Floodlight activity in Campaign Manager 360:

  1. From the navigation menu, select All advertisers and click on the desired advertiser name.

  2. Create a new Floodlight activity group:

    1. From the navigation menu, select Floodlight and then select Activity groups.

      GCM_Conversions-Floodlight_Activities-Activity_Groups_menu_selection.png
    2. Click New.

    3. Fill out the required fields.

    4. Click Save.

  3. Create a new Floodlight activity:

    1. From the navigation menu, select Floodlight and then select Activities.

      GCM_Conversions-Floodlight_Activities-Activites_menu_selection.png
    2. Click New.

    3. Fill out the required fields and then click Save.

      GCM_Conversions-Floodlight_Activities-Activites_fields.png

Follow the same process (apart from selecting the advertiser name) to create additional Floodlight activities.

Note

Typically, a maximum of five Floodlight activities can be used with the LiveRamp integration. Contact LiveRamp to create additional audiences if you use more than one Floodlight activity. Talk to your LiveRamp representative if more than five Floodlight activities are needed for your situation.

Your team with access to the Campaign Manager UI will need to create these variables. For more information and instructions on creating variables, see Google’s documentation.

Caution

Variable limitations: While Google allows you to create up to 100 variables per Floodlight configuration with no maximum variable name length, LiveRamp can only accept a maximum of 45 variables and variable names of 50 characters or less.

These variables (also referred to as "U variables") are placed at the end of the conversion data file, with each column named with the variable number (such as "u1", "u2", "u3", etc., up to a maximum of 45 variables.

Keep the following in mind:

  • Each U variable should only have one value per record.

  • U variable values cannot contain commas. For example: "San Francisco, CA" is not permitted.

  • U variables need to be consistent across all files within the same Floodlight configuration.

Your conversion data files will need to include the appropriate Floodlight custom variable IDs (such as “u1”) in the column headings.

To find the variable IDs in Campaign Manager 360:

  1. From the navigation menu, select All advertisers and click on the desired advertiser name.

  2. From the navigation menu, select Floodlight and then select Configuration.

    GCM_Conversions-Locate_Your_Custom_Floodlight_Variable_IDs.png
  3. Scroll down to the Custom Floodlight variables section.

  4. Find the numeric values for the variables you want to include.

    In the above example, the Floodlight variable for “Language” would be "u1."

Once you’ve completed the steps above, send an email to your LiveRamp representative (and cc GoogleOperations@liveramp.com) that includes the following information:

  • Confirmation that you have completed all steps above.

  • The LiveRamp Access Profile ID.

  • Up to five Floodlight Activity IDs.

Tip

To download an Excel file template that contains all possible columns and formatting instructions, click here.

After transferring your data into the file template, be sure to delete the row with the formatting instructions and save the file in one of our allowed file types (.csv, .tsv, .psv, or .txt) before uploading.

Once the file has been formatted correctly, upload the file to LiveRamp. See the “Upload the File” section below for more information.

Note

Once you set up the file format for an existing conversions program feed, try to keep the file format (such as the column headers or the column order) the same for all subsequent files. If you change the file format for an existing feed, create a support case before uploading the new file to ensure your existing feeds are not impacted. For more information, see "Changing the Format of an Existing File".

List of All File Columns

See the table below for a list of columns and formatting instructions:

Field Name

Column Required?

Values Required?

Notes

first_name

Yes

Yes (if name and postal address (NAP) is used as an identifier)

last_name

Yes

Yes (if NAP is used as an identifier)

address_1

Yes

Yes (if NAP is used as an identifier)

address_2

Yes

No

  • Include values in this column if you have additional street address info for a given row.

city

Yes

Yes (if NAP is used as an identifier)

state

Yes

Yes (if NAP is used as an identifier)

  • Must be a two-character, capitalized abbreviation ("CA", not "California" or "Ca").

zip

Yes

Yes (if NAP is used as an identifier)

  • ZIP codes can be in a 5-digit format or 9-digit format (ZIP+4).

email_1

Yes

Yes (if email address is used as an identifier)

  • Can be plaintext or one of our allowed hash types (SHA-256, MD5, or SHA-1).

  • If you have multiple emails for a consumer, send your best one in the “email_1” column.

email_2

Yes

No

  • Can be plaintext or one of our allowed hash types (SHA-256, MD5, or SHA-1).

email_3

Yes

No

  • Can be plaintext or one of our allowed hash types (SHA-256, MD5, or SHA-1).

email_4

Yes

No

  • Can be plaintext or one of our allowed hash types (SHA-256, MD5, or SHA-1).

transaction_category

Yes

Yes

  • Corresponds to your custom Floodlight activity label.

  • Do not use this column to pass transaction category values to Google (either use separate Floodlight activities or assign custom variables (u-variables) to your transactions). LiveRamp uses this column for internal processing purposes.

transaction_timestamp

Yes

Yes

  • Corresponds to the date/time of the transaction in UTC (for example, "2021-06-04T10:01:00Z-0800" should be the time the conversion happened in UTC).

  • Timestamp format must exactly follow one of these formats:

    • yyyy-MM-dd

    • YYYY-mm-ddTHH:MM:SSZ+HHMM

transaction_amount

Yes

Yes

  • Do not include any (currency) symbols.

  • Format required: XXX.XX

phone_1

Yes

Yes (if phone number is used as an identifier)

  • Do not include any hyphens or parentheses.

  • Can be plaintext or SHA-1 hashed.

  • If you have multiple phone numbers for a consumer, send your best one in the “phone_1” column.

phone_2

Yes

No

  • Do not include any hyphens or parentheses.

  • Can be plaintext or SHA-1 hashed.

quantity

Yes

Yes

  • Factors into Google’s Total Conversions metric within the Google UI (see the "FAQs" section below for more information).

  • The quantity of the items purchased.

  • Default value = “1”.

  • All values must be integers (cannot contain decimal places). For example, "3" not "3.0."

ordinal

Yes

Yes

  • A unique ID (such as a transaction ID) that corresponds to the order that the particular item belongs to. If the value is not unique, Google may deduplicate some of these events when ingesting your conversion data.

  • To measure item-level events, the value will need to be a unique value for each item within a basket. LiveRamp recommends using the concatenated value of the order ID + product SKU. For example, if the  order ID is “123” and SKU is “456”, the “order_id” value would be “123456”.

  • Do not include special characters, currency symbols, or commas.

u#

No

No

  • The Custom Floodlight variable ID.

  • Each file can have up to 45 custom U variable columns ("u1", u2", "u3", etc.).

  • Each U variable should only have one value per record.

  • U variable values cannot contain commas. For example: "San Francisco, CA" is not permitted.

  • U variables need to be consistent across all files within the same Floodlight configuration.

Header Row Example

The headers shown in bold are required.

first_name|last_name|address_1|address_2|city|state|zip|email_1|email_2|email_3|email_4|transaction_category|transaction_timestamp|transaction_amount|phone_1|phone_2|quantity|ordinal|u1|u2| .. | u45

Conversion Data Examples

Your conversion data should look like this:

Rishi|Desmai|44 Main Street|#12|San Francisco|CA|94100|rishi@gmail.com|rd@ymail.com||||New Customer|2014-03-31T17:01:18Z+0000|99.99|4152234123||3|123abc|In-Store
Justin|Riediger|55 Mission Street||San Francisco|CA|94500|justin@gmail.com||||Reactivated Customer|2014-03-30T21:21:41Z+0000|55.55|4152905412||2|Online

In order for LiveRamp to match offline conversion data against anonymous DV360 users targeted during your advertising campaigns, provide LiveRamp with sample conversion data that includes offline identifiers (usually PII).

Once your campaign has started, send conversion data to LiveRamp at your preferred cadence (daily, weekly, monthly, etc.), but do not send more than one file per day.

Tip

Most customers automate this process to send files on a regular cadence.

Caution

If there are transactions pertaining to different Floodlight activity IDs, separate the transactions into separate files based on Floodlight activity. Each file should be uploaded into the appropriate LiveRamp audience for that particular Floodlight activity on Connect.

Caution

Most platforms require that at least 1,000 unique transaction events be uploaded over a 28-day period.

Each conversion data record must include at least one PII identifier (name and postal address, email, or phone) and the required conversion data:

  • Transaction category

  • Transaction timestamp

  • Transaction amount

  • Quantity

  • Order ID (ordinal)

Caution

The values in the “transaction category” column are for LiveRamp’s internal processing only and do not get passed on to Google. Do not use the “transaction category” column to categorize your transactions. Either separate your transactions into different Floodlight activities or assign Floodlight custom variables (u-variables) to your transactions.

Other optional conversion data (such as custom Floodlight variables) can be included as well. See the “Format the File” section for more information.

Make sure to also follow these additional guidelines:

  • Avoid sending duplicate transactions (transactions already sent to LiveRamp). If you send weekly or monthly files, only send transactions that occurred since the previous file was sent.

  • Do not include transactions that occurred more than 28 days ago. LiveRamp can only match transactions to clicks that occurred in the last 28 days.

  • Do not include conversions with a conversion date in the future.

Upload conversion data files using LiveRamp's SFTP server, your SFTP server, or our Connect UI.

You can also have us pull files from an AWS S3 bucket or GCS bucket. See “Getting Your Data Into LiveRamp” for more information.

If there are transactions pertaining to different Floodlight activity IDs, separate the transactions into separate files based on Floodlight activity. Each file should be uploaded to the appropriate LiveRamp audience for that Floodlight activity.

Caution

Files uploaded to Connect cannot be larger than 500 MB and file uploads to Connect cannot be automated. For these reasons, we recommend either uploading via our SFTP server or having us pull files from an S3 or GCS bucket.

  • To upload files using LiveRamp's SFTP: Use the credentials provided by your technical contact once the agreement has been signed and follow the instructions in “Upload a File via LiveRamp's SFTP”.

  • To upload files using your SFTP: Follow the instructions in “Upload a File via Your SFTP”.

  • To upload files using Connect: Log in to Connect with the credentials provided for you by your LiveRamp representative and then follow the instructions in “Upload a File via Connect”.

After uploading the first file, email your LiveRamp technical account manager or GoogleOperations@liveramp.com to confirm that you have uploaded conversion data.

Note

For future uploads, you do not have to email LiveRamp to confirm that you have uploaded data assuming headers have not changed or additional columns have not been added.

Once the file is uploaded, information on file processing status can be viewed in LiveRamp Connect. The conversion data can usually be viewed in Google 2-3 days after upload.

Most customers automate this process to send files on a regular cadence.

Caution

Cadence: Files can be delivered at any cadence (daily, weekly, monthly, etc.), but do not send more than one file per day.

You may take the file you are working with for the Google Store Sales Improvements (GSSI) program and perform the following actions in order to use it with Google Campaign Manager Offline program (see “The Google Store Sales Improvements Conversions API Program for Offline Conversions” for more information):

Note

You might want to use a universal file for most or all of your conversions programs. For more information, see "Using a Universal File for Multiple Conversions API Programs".

  1. Add the following fields:

    • quantity

    • ordinal

    • Floodlight custom variable IDs (“U1”, “U2”, etc., if needed)

  2. Make sure that the modified file has the fields shown belowin the order listed:

    • first_name

    • last_name

    • address_1

    • address_ 2

    • city

    • state

    • zip

    • email_1

    • email_2

    • email_3

    • email_4

    • transaction _category

    • transaction_timestamp

    • transaction_amount

    • phone_1

    • phone_2

    • quantity

    • ordinal

    • Floodlight custom variable IDs (“U1”, “U2”, etc.)

Google recommends that you use either Search Ads 360 or Campaign Manager, but not both: conversions you upload from both products are not deduplicated and may cause data discrepancies.

Conversions uploaded with the Campaign Manager Offline Conversions API are available in Campaign Manager, Search Ads 360, and Display & Video 360. Conversions uploaded with the Search Ads 360 API are only available in Search Ads 360.

For further comparisons between the two APIs, see Google’s documentation.

LiveRamp can receive transaction files at any desired cadence, but we highly recommend automated deliveries at a two day interval as it gives LiveRamp the greatest ability to match against transactions (before the DV360 cookie expiration). Note: We cannot accept multiple files in one day.

  • Include all traceable offline conversions in your delivery. Do not include online conversion data.

  • Avoid sending duplicate transactions (transactions already sent to LiveRamp). If you send weekly or monthly files, only send transactions that occurred since the previous file was sent.

  • Do not include transactions that occurred more than 28 days ago. LiveRamp can only match transactions to clicks that occurred in the last 28 days.

  • Do not include conversions with a conversion date in the future.

Each product should be its own record, with a conversion quantity of “1” and its value in the “transaction_amount” field.

Use the “ordinal” field to insert a unique ID that represents the transaction. This would be the same across all conversions in a transaction.

The total setup for the Campaign Manager Offline Conversions API will take about a week. After the delivery is sent, it will take approximately 2-3 days before you may view the conversion data in DV360.

For any further questions, create a case in the LiveRamp Community portal.

Total Conversions is a metric you see within Google’s platform. Google defines Total Conversions as all conversions within a specific reporting period. It is the aggregate of the deduplicated transactions that were recognized as a conversion.

In order for any given conversion to count towards Total Conversions, the “quantity” field must contain a value of at least “1”. A deduplicated transaction with a quantity of “1” will count as 1 conversion in the Total Conversions metric. A transaction with a quantity greater than “1” will increase the Total Conversions bottom line.

Note

If your Total Conversions is higher than expected and the values in your “quantity” field are greater than 1, we recommend defaulting all “quantity” values to “1”.