Set up Conversions with Cart Data

Conversions with Cart Data reporting allows you to measure the number of transactions, revenue, and profit generated by your Search and Shopping Ads. If you use floodlight activities, you can submit cart data (which products were sold, in what quantity, and for what price) for purchase conversions.

This article explains how to set up and submit cart data with google tags or Google Tag Manager.

Before you get started

If you set up purchase detail reporting for a tag in the previous Search Ads 360, then you do not have to set up Conversions with Cart Data reporting. Your tags will continue submitting cart data.

Requirements

To set up Conversions with Cart Data reporting, make sure you:

  • Linked your Google Merchant Center account to the new Search Ads 360
  • Created a campaign
  • Can modify your website code

Instructions for google tags

Step 1: Create a transaction tag and event snippet

You can also create the Floodlight tag with Campaign Manager 360 or the old Search Ads 360. If you already have a tag recording transactions, you can skip this step.

  1. Sign in to the new Search Ads 360. 
  2. Navigate to a Search Ads 360 account.
  3. In the navigation menu, click the tools icon.
  4. Under “Measurement”, click Conversions.
  5. Click the conversion action that you want to use, or create a new conversion action.
  6. Under the “Tag setup” section, click Install the tag yourself.
  7. Download the google tag snippet and event snippet. 
  8. Add the google tag to every page of your site in the <head> tag.
  9. Add the event snippet to the page where the conversion will take place in the <body> tag.

Step 2: Update the tag with cart data parameters 

  1. To your event snippet, add parameters in the format of a JSON items array.

    Each item in the array contains the following parameters:

    • id: ID of the item sold (must match the ID in your linked Merchant Center feed)
    • price: price of the item sold
    • quantity: quantity of the item sold
    • country (optional)
    • language (optional)
  2. Specify the parameters for the JSON items array using the cart data parameters table.

Example event snippet

The following is an event snippet with cart data parameters: 

<!--

Event snippet for Thank You on http://example.com/thanks: Please do not remove.

Place this snippet on pages with events you’re tracking. 

Creation date: 11/01/2017

-->

<script>

  gtag('event', 'purchase', 

    {

      'allow_custom_scripts': true,

      'send_to': 'DC-1234567/group1/thank123+transactions',

      'transaction_id': '012345',

      'value': 129.97,

      'items': [

       {  'id': '123456755559',

           'price': 19.99,

           'quantity': 1 

        },

        {  'id': '123456788889',

           'price': 54.00,

           'quantity': 2 

        }

      ],

    'country': 'us',

    'language': 'en'

    }

);

</script>

<noscript>

<img src="https://ad.doubleclick.net/ddm/activity/src=1234567;type=group1;cat=thank123;

qty=1;cost=129.97;dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;tfua=;npa=;

ord=012345;prd=i1:123456755559|p1:19.99|q1:1|i2:123456788889|p2:54.0|q2:2|c:us|l:en?" width="1" height="1" alt="">

</noscript>

<!-- End of event snippet: Please do not remove -->

 

Note: Event snippets generated by the new Search Ads 360 include an optional <noscript> tag that contains a Floodlight image tag. This tag is used to report conversions in browsers that don't support JavaScript. If your site supports browsers that haven't enabled JavaScript, it's recommended that you update the Floodlight image tag to include cart data parameters as shown in the example.

Example event snippet with country and language codes

You can use Merchant Center to submit your products in multiple feeds, each targeted to a specific language and country. For example, if you sell the same products in the US and Canada, you might set up three feeds with the following target countries and languages:

  • US prices and English descriptions
  • Canadian prices and French descriptions
  • Canadian prices and English descriptions

When you submit feeds with the same product IDs but different target languages or countries, you'll need to include the language and country code in your cart data parameter.

The following is an example of an items array for a feed targeted to French Canadians:

 

'items': [

     {  'id': '123456788889',

        'price': 19.99,

        'quantity': 1 

     },

     {  'id': '123456755559',

        'price': 54.00,

        'quantity': 2 

     }

    ],

'country': 'ca',

'language': 'fr'

Instructions for Google Tag Manager

Google Tag Manager helps you maintain tags on your site. Instead of adding and updating tags directly on your site, you add and update them in Google Tag Manager. Google Tag Manager then outputs properly formatted tags on your site as needed. Learn more about Google Tag Manager.

Step 1: Create a transaction tag and JSON array

  1. Create a Floodlight tag in the New SA360 or Campaign Manager 360. Learn about Google Tag Manager's Floodlight sales tags
  2. Add the tag to your Google Tag Manager container. Learn about how to Set up and install Google Tag Manager.
  3. If you are using Google Tag Manager's data layer to pass data, create a JSON ecommerce.purchase.products array.

Example ecommerce.purchase.products array

'ecommerce':{ 

   'purchase':{ 

      'products': [{

         'id': 'String',

         'price': 'Floating point',

         'quantity': Integer,

         'country': 'String', // Optional

         'language': 'String', // Optional

         'accountId': 'String' // Optional

      },

      {

        … // Each SKU (product) in the transaction

 

          // is in its own array item.

      }]

   }

}'

Step 2: Update the tag with Google Tag Manager

When you need to pass dynamically generated data to tags managed by Google Tag Manager, you can do either of the following:

Use data from the data layer

If your web developer has made the purchase-details variable available in the data layer, follow these steps to pass the data to your Floodlight tag:

  1. Use the dataLayer.push method to make the data available in Google Tag Manager's data layer.
  2. In Google Tag Manager, navigate to the container for your site.
  3. Click the Tags tab and click the Floodlight transaction tag that reports sales.
  4. Click the Pencil icon to make changes to the tag.
  5. Under Product Reporting, check the Provide product-level sales data​ check box.
  6. From the "Data Source" list, select Data Layer.
    Google Tag Manager will automatically use the data pushed to the data layer in the ecommerce.purchase.products array.
  7. Click Save.
  8. Preview and publish your changes.

Use a variable to access other data

If your cart data parameters are not available in the data layer, you can use a Google tag manager variable to pass the data on. 

  1. In Google Tag Manager, navigate to the container for your site.
  2. Click the Tags tab and click the Floodlight transaction tag that reports sales.
  3. Click the Pencil icon to make changes to the tag.
  4. Under Product Reporting, check the Provide product-level sales data​ check box.
  5. From the "Data Source list", select one of the following:
    • JavaScript variable if the data is formatted as a JavaScript variable.
    • Floodlight formatted value if the data is formatted as a String.
  6. Click the Add variable icon next to the Product Data Field.
  7. Click the New variable button in the upper right.
  8. Click the Pencil icon in the variable configuration card and do the following:
    • Choose the appropriate variable type. For example, if the data is available in a JavaScript variable, select JavaScript Variable.
    • In the next field, enter the name of the object that contains the data.
      For example, here's a page that outputs the String as a global JavaScript variable.
      <script> window.salesData="i1:sku-12345|p1:100.0|q1:1|i2:sku-67890|p2:20.0|q2:2" </script>
  9. Name the variable either by editing the namespace at the top, or by clicking save and editing the name in the following window. After doing this, you should see the name enclosed in double brackets in the Product Data Field.
  10. Click Save again to update the draft version of your tag.
  11. Preview and publish your changes.

Cart data fields

See the following table describes the type, example values, and descriptions required for cart data parameters:

Parameter Type Example value Description
ID String "98765" The ID of the product that has been sold. The ID must match the item id from Google Merchant Center.
PRICE Float 1.50 Sales price of a single item, excluding tax, shipping, and any transaction level discounts.
QUANTITY Integer 2 Number of units sold of the items.

COUNTRY (optional)

String "840" The country associated with the feed where your items are uploaded. Use ISO 3166 country codes.

This field is needed only when item IDs are not unique across multiple Merchant Center feeds.

LANGUAGE (optional)

String "EN"

The language associated with the feed where your items are uploaded. Use ISO 639-1 language codes.

This field is needed only when item IDs are not unique across multiple Merchant Center feeds.

Report on profit margins (optional)

If you want to report on profit margins, you must provide the cost of goods sold feed attribute in your Google Merchant Center product feed. Learn how to Enable reporting on profit margins

Was this helpful?

How can we improve it?

Need more help?

Try these next steps:

Search
Clear search
Close search
Google apps
Main menu
2850043806842898494
true
Search Help Center
true
true
true
true
true
5055977
true
false