Use an order ID to minimise duplicate conversions

Add an order ID to your conversion tracking tag to help avoid counting duplicate conversions.

If you add your conversion tracking tag to a conversion page, such as an order confirmation page, then a conversion should only be counted when a customer has completed a valuable action on your website. However, if a customer returns to the conversion page or reloads the page, it’s possible that the same tag could fire again, and a second conversion could be counted for the same order.

To avoid these duplicate conversions, you can edit your conversion tracking tag to capture a unique order ID, such as an order confirmation number that you may already be using. If there are two conversions for the same conversion action with the same order ID, Google Ads will know the second conversion is a duplicate, and it won’t be counted.

In this article, we’ll explain how to add a unique order ID to your conversion tracking tag.

Before you begin

Before you can add order IDs to your conversion tracking tag, you’ll need the following:

  • Conversion tracking set up for your website. To follow the instructions below, you’ll need to have created a conversion action in your Google Ads account and added the conversion tag to your website.
  • Unique order IDs, such as order confirmation numbers for your transactions. The order IDs can include numbers, letters and special characters like dashes or spaces, with a character limit of 64 characters. They must be unique for each order. The order IDs must not include any information that could be used to identify individual customers.
  • Ability to edit code on your website. Either you or your webmaster will need to edit the conversion tracking tag.

Instructions

You’ll need to add a piece of code to your conversion tracking tag to pull the unique order number and send it along in your tag. You don’t need to update anything in your Google Ads account, just update your tag.

Bear in mind

  • Make sure that you’re passing a dynamic value for the order ID. If your tag sends Google Ads the same ID for different transactions, you could significantly undercount your conversions.
  • The instructions below use Active Server Pages (ASP) as an example. The exact code will vary depending on the server language that you use. Make sure that you use the right language for your website.

The new Google Ads experience is now the exclusive way for most users to manage their accounts. If you're still using the previous AdWords experience, choose Previous below. Learn more

Starting in October 2017, advertisers who create a website conversion action in the new Google Ads experience will use a new conversion tracking tag that consists of the global site tag and the event snippet. If you have the previous conversion tracking tag installed on your website, it will still work; however, we recommend that you use the new conversion tracking tag. Learn about the benefits of the new website conversion tracking tag

If you prefer to track clicks on your website as conversions with the previous conversion tracking tag, follow these instructions.

  1. Open the ASP file for your conversion page. (Or, if you use a different server language, open the appropriate file.) If multiple pages are generated from the same file, find the section in the ASP file that generates your conversion page.

  2. If your site has a variable order id, find the ASP expression which stores that information. For example: <%= orderId %>.

  3. Open the HTML for your conversion page and find your event snippet. (You can also make these changes to this snippet before adding it to your conversion page. Edit the snippet according to the instructions below and then install the snippet according to the instructions in Add a conversion tracking tag to your website.)

  4. In the script section of the event snippet (between the <script></script> tags), replace <%= orderId %> with the ASP expression that you found in Step 2.

    Event snippet example:
        <!-- Event snippet for Example conversion page -->
        <script>
          gtag('event', 'conversion', {'send_to': 'AW-123456789/AbC-D_efG-h12_34-567',
            'value': 1.0,
            'currency': 'USD',
            'transaction_id': '<%= orderId %>',
          });
        </script>
    

    Note

    The event snippet only includes the transaction_id parameter by default if you selected the category “Purchase/Sale” while setting up the conversion action.
  5. To test the code, visit your conversion page by completing a conversion on your site.

  6. In your web browser, view the source of the web page. (In most browsers, you can do this by right-clicking the page and selecting View source). You should see the conversion tracking code between the <head> and </head> tags on your page. The ASP expression will be replaced by the actual order ID.

About Order ID and the 'Count' setting

Adding an order ID to your event snippet is not the same as changing your 'Count' setting to count one conversion per ad click.

By adding an order ID, you avoid counting the same conversion twice, such as when someone re-opens a purchase confirmation page and one purchase would be counted as two conversions.

When you change your 'Count' setting to one, you count only one conversion after an ad click, even if multiple conversions, such as multiple different purchases, resulted from the ad click.

So when should you use 'Count' versus Order ID?

  • If you want to track one lead per ad click, change your count setting to 'One'.
  • If you want to track every purchase a customer makes after an ad click, but want to make sure that you don’t count the same purchase twice, add an order ID to your event snippet. Adding an order ID is the recommended option for purchases.

Note

  • Order IDs won't be reported in Google Ads.
  • Adding an order ID to your snippet will not resolve duplicate view-through conversions.
  • If your website already has a solution for removing duplicate conversions, we recommend adding the order ID as an additional tool to ensure that your conversion data is as accurate as possible. 
  • If you use Google Tag Manager, you can use order IDs. Make sure that you enter the order ID as a variable, not a static string.
Was this helpful?
How can we improve it?
New Previous