Tuesday, April 16, 2024
No menu items!
HomeData Analytics and VisualizationBing Ads conversion tracking with Google Tag Manager (a.k.a. Microsoft Ads)

Bing Ads conversion tracking with Google Tag Manager (a.k.a. Microsoft Ads)

Bing Ads (a.k.a. Microsoft Advertising) is Microsoft’s equivalent to Google Ads that allows you to run promo campaigns, promote your business, drive traffic to your site. But if you really want to benefit from it, you must track conversions. Or else, how are you going to know which ads/campaigns/keywords perform better?

Even though I mostly focus on Google Analytics implementations here at Analytics Mania, in today’s blog post, I’ll explain how to implement Bing Ads Conversion Tracking (by using Microsoft Advertising Universal Event Tracking).

Note: in this blog post, I will use terms Bing Ads and Microsoft ads interchangeably. For a long time, they were called Bing Ads and I just cannot unlearn that for some reason

Table of Contents

+ Show table of contents +

What is a conversion in general?
Action plan
Install Microsoft UET tag with Google Tag Manager
Get Bing UET tag ID
Create Microsoft Advertising UET tag in Google Tag Manager
Let’s test
Don’t forget consent

Conversion: Destination URL
Purchase tracking with Bing Ads and Google Tag Manager
Purchase data in the Data Layer
Data Layer variables and a Custom Event trigger
Purchase tag
Pro tip: consider using a constant variable
Let’s test the Purchase tracking with Microsoft Ads and GTM
Create an event-based conversion goal in Microsoft Ads

Where can you see the conversion data in Microsoft Ads?
Final words


Video Tutorial

If you prefer video format, here is a tutorial from my Youtube Channel.


What is a conversion in general?

I realize that some of my readers who land on this page might be completely new to the concept of conversions. If you are one of them, here’s a quick introduction. And if you already know what conversions are, feel free to skip to the next chapter of this blog post.

A conversion is an important interaction that you want your visitors/users to complete. Conversions can be split into micro and macro conversions. An example of a micro-conversion can be a newsletter subscription, a download of a whitepaper, etc.

Micro conversions are usually described as conversions that put your visitors/users one step closer to the main (macro) conversion.

Macro-conversions are the most important interactions, such as a purchase.

By tracking conversions, you can better understand what is working for your business and what isn’t. For example, you can create a segment of your users who have made a purchase and then try to understand what they are doing, what is their behavior, etc. Also, conversions are used to measure the effectiveness of advertising campaigns and then redistribute your advertising budget.

Hopefully, this super-brief introduction gave you a better understanding of this concept.

Now, let’s learn how to actually track conversions with Bing Ads and Google Tag Manager.


Action plan

To implement Bing Ads conversion tracking you will need to complete the following steps:

Install Microsoft UET tag with Google Tag Manager
Send additional events to Microsoft Ads
Create Conversions that will match the information of your events

Install Microsoft UET tag with Google Tag Manager

In this blog post, I presume that you already have created a Microsoft Ads account. If you haven’t, go do that here. Sign up and follow all the steps that you will be asked to.


Get Bing UET tag ID

When you log in, go to Tools > UET tag. UET stands for Universal Event Tracking.

If the interface of Bing Ads has changed and it looks different from what you see in this article, use the search feature in the Bing Ads interface and just enter “UET tag”.

Then click Create UET tag.

After that, you will be asked to enter the name of the tag and a description. In general, it’s enough to just enter the name. It can be something like the name of your company or maybe the name of the website (where this tag will be implemented). Click Save.

After the tag is created, you will see the UET tracking code. Since we are working with Google Tag Manager, we don’t need the entire code. Just copy the ID:


Create Microsoft Advertising UET tag in Google Tag Manager

Now let’s go to Google Tag Manager > Tags > New > Microsoft Advertising Universal Event Tracking. It might be challenging to find it in the list, that’s why I recommend using the Search feature.

For your information: if you have read some older Bing Ads tutorials, they told you to look for “Bing Ads Universal Event Tracking” tag. That name was eventually changed to “Microsoft Advertising Universal Event Tracking”.

In the tag, paste the ID that you have copied from the Microsoft Ads interface. Leave Track type as Page view. Click anywhere on the “Triggering” section and select the All pages trigger. Then name the tag whatever you want, e.g. Bing Ads – Page view. Save the tag.


Let’s test

To enable Google Tag Manager Debug mode, click the Preview button in the top right corner of your GTM interface (near Submit button).

Once you click the Preview button, a new browser tab will open with tagassistant.google.com. If it does not, read this guide.

A popup there will ask you to enter the URL which you want to test and debug. It might be the address of a homepage or it might be a specific page’s URL. Then press Start.

A new browser tab (or window) should appear where you will see the URL that you entered in the previous popup. At the bottom of that page/tab, you must see the following badge:

And if you go back to the tagassistant.google.com tab, you must see this success message.

If you don’t see the success message or if the preview badge shows that the debugger is not connected, read this.

Click Continue in the preview mode and then click on the Container Loaded event (on the left sidebar). Check if your Bing Ads tag has fired. If yes, that’s good.

Additionally, you could install a Chrome Extention UET Tag Helper. When you do that, click its icon and then toggle the switch.

Refresh the website where you are testing the tag (NOT the preview mode). Now you should see a number in the extension’s icon. Click it to see what kind of events were noticed by the helper.

If everything works fine, you should see the Page Load event (p.s. page load = page view). You can also click the “Parameter details” to expand and see more information about the data that was sent to Microsoft Ads.

All good? You can now publish your Google Tag Manager container changes and this tag will go live for all your website visitors. You can publish the container by clicking the Submit button in the top-right corner of the GTM interface and then clicking PUBLISH.


Don’t forget consent

I used the All pages trigger in the previous example for sake of simplicity. In reality, the setup is much more complex because you should fire tags like this one only if a visitor gives consent for tracking. To do that, you will need to:

Have a cookie consent popup on your website
Then configure GTM to listen to user interactions with that popup
And then fire tags only if a visitor gives consent

This topic is not an easy one. You can get more familiar with it here. Also, I dive deep into it in my Google Tag Manager Masterclass for Beginners.


Conversion: Destination URL

With this basic setup (when you just have one Microsoft UET tag that fires on all pages), you can already start tracking conversions. If you can distinguish (by looking at the page URL) that a visitor completed some important action, you can tell MS ads that this is a conversion.

A good example of this could be signup. If a visitor is redirected to a unique Thank you page, that pageview can be your conversion.

In the Microsoft Ads interface, click Tools > Conversion goals.

Click Create Conversion Goal.  Then enter the name of your conversion (e.g. newsletter signup), keep the type “Destination URL”, click Next.

Then you will need to enter additional details about that destination URL. Let’s say, that the URL of my “thank you” page contains /pages/thank-you. Then you could enter the following condition in the goal details. Obviously, in your case, the URL will most likely be different.

Goal category does not make much difference but you can select the option that is closest to your conversion, e.g. Subscribe or Sign – up.

For now, don’t assign any value in the Revenue value field. I will show how to use it a bit later in this blog post.

Finally, let’s set how are we going to count the conversions. If a visitor completed the same conversion in the same session multiple times, should Bing ads report it as one conversion or many? The answer is “it depends”.

If I track purchases, then I would like to count all purchases. If I track signups, it does not matter whether the same person downloaded two ebooks from me or one in the same session. What matters is that one *visitor* converted.

As for my example, I will choose Unique.

Then you can select whether you want to include this conversion in the Conversions column of your reports. In most cases, that checkbox should be enabled.

Save the conversion goal. That’s it! You have now created a conversion based on a simple setup that required just one tag.

But what if your conversion is more complex? What if it’s a purchase and the URL of the “thank you” page is not unique enough? Enter event tracking.


Purchase tracking with Bing Ads and Google Tag Manager

In this chapter we will take a look at how to send a purchase event to Microsoft ads and together with it, we will pass additional parameters (revenue and currency).

When it comes to purchase tracking, the most robust way is to ask a developer to push the purchase data to the Data Layer on a Thank you page. Or maybe you are working with a popular e-commerce platform (e.g. WordPress) that offers a GTM plugin to push the data?


Purchase data in the Data Layer

Anyway, in this example, I presume that you have a Google analytics 4 e-commerce data layer on your “thank you” page. If you have no idea what it is, I teach how to work with it in my GTM Masterclass for beginners.

Here’s a sample dataLayer.push that your developer could implement on the order confirmation page.

window.dataLayer = window.dataLayer || [];
‘event’: ‘purchase’,
‘ecommerce’: {
‘purchase’ : {
‘currency’ : ‘EUR’,
‘value’ : ‘340.00’,
‘tax’ : ‘20.00’,
‘shipping’ : ‘10.00’,
‘coupon’ : ‘SUMMER20’,
‘transaction_id’ : ‘no12345’,
‘items’ : [{
‘item_name’: ‘Citizen – SUPER TITANIUM. MODEL: AW0060-11P’,
‘item_id’: ‘CIT30283’,
‘price’: ‘330.00’,
‘item_brand’: ‘Citizen’,
‘item_category’: ‘Watches’,
‘item_variant’: ‘Silver’,
‘quantity’ : ‘1’

Obviously, all values should be dynamically replaced with the actual purchase information (and your developer is responsible for doing that). In this code, there is one product but if I purchased more products, then the developer should include all of them in the items array.

Once this code is implemented, enable the Preview mode of Google Tag Manager and make a test purchase. On the order confirmation page, you should see the purchase event on the left side of the preview mode.

Click it and expand the API Call.

Here you will see the purchase information that was pushed to the Data Layer.


Data Layer variables and a Custom Event trigger

If the data is correct there, it’s time to use some of those data points in our Bing Ads conversion tracking. As a bare minimum, we could pass the order total (value) and the currency code. To do that, we’ll need to create two separate Data Layer variables. One for each data point.

In Google Tag Manager, go to Variables > New > Data Layer Variable. To access the order value, you have to enter ecommerce.purchase.value. Read this to learn more about why I entered the dots.

Save the variable. Do that same thing for the currency. Create another variable with ecommerce.purchase.currency.

The next step is the moment, when should we send the purchase event to Microsoft Ads. The non-technical answer is “when that purchase data is in the Data Layer”. Luckily, we can tell GTM to do exactly that.

Go to Triggers > New > Custom Event and enter the following settings:

The reason why I entered purchase is that this is the very same value that is stored in the “event” key of the dataLayer.push.

If in your case, the event name is transaction, then that’s what you should enter in the trigger’s settings.


Purchase tag

The final step is to create a Microsoft Ads UET tag that will send the purchase data to Microsoft. In GTM, go to Tags > New > Microsoft Advertising Universal Event Tracking and enter the following settings:

Use the same UET tag ID that you used in the Page view tracking setup
Track type – select Custom conversion
Enter purchase in Event category, Event action, and Event label fields
In the Currency field, insert the data layer variable that you recently created (which returns the currency)
In the Revenue value, insert the other Data Layer variable (that returns order value)

In the triggering section, click anywhere and select the Custom Event trigger that you’ve created in the previous chapter. Save the tag.


Pro tip: consider using a constant variable

In this blog post alone, I have created 2 Bing tags in GTM. But what if you have 10 or 20? Manually copy-pasting UET tag IDs might cause some human errors (plus, it’s just inconvenient).

Instead, you could create a variable that will always contain the ID. In GTM, go to Variables > New > Constant and paste the UET tag ID that you got in the Microsoft Ads interface (after you created the UET tag).

Save this variable. Now go and update all your Bing Ads tags in the GTM container. Replace static tag IDs with this constant variable. And if in the future, you have to create a new tag, you’ll be able to reuse that variable with just a couple of clicks.


Let’s test the Purchase tracking with Microsoft Ads and GTM

It’s time to test the setup. Enable Preview mode of Google Tag Manager. Then click on the UET tag helper (Google Chrome extension) icon and make sure that it is enabled.

Make a test purchase. On the left side of the preview mode, you should see the purchase event. Click it.

Your Bing Ads purchase tag should be displayed as “fired”. Also, your regular Bing Ads pageview tag should also be fired (because “thank you” page is a page, after all).

Now, click the UET tag helper’s icon and you will see two events: Page Load (a.k.a. Page view) and Custom Event (purchase). Click Parameter Details under every event and check if the data was sent correctly.

Everything’s correct? Publish GTM changes by clicking SUBMIT (in the top-right corner) and then click PUBLISH.


Create an event-based conversion goal in Microsoft Ads

Even though we are now sending purchase events to Bing Ads, we still have to tell Microsoft about this.  In Microsoft Ads, go to Tools > Conversion Goals. Click Create Conversion Goal.

Enter its name, e.g. “Purchase”
Type: Event

Click Next. Then enter the same values that you have configured in the tag: Category, Action, Label. In my case, all of these fields should contain “purchase” (without quotation marks).

Set Goal Category to Purchase.
Revenue value should be set to Conversion action value may vary. Then you will be asked to enter the default value. That could be the lowest possible purchase amount on your website.
Set Count to All.
Leave all the other settings as they are and click Save.

After you complete all these steps, your purchase tracking with Bing Ads is complete.

Keep in mind that data will not appear in your reports in real-time. Wait for up to 24 hours.


Where can you see the conversion data in Microsoft Ads?

You can find conversion counts in many reports within the Microsoft Ads interface, e.g. Campaigns report. Keep looking for the Conv. column (which stands for Conversions).

As for revenue, if you don’t see that column in your reports, you will have to add it. Click the Columns icon above the table and then click Modify. 

Then go to Conversions and select All conv. revenue. Click Add next to it. Done! From now on, you will see conversion revenue metric in your report as well.


Microsoft Ads conversion tracking: Final words

When it comes to Bing ads conversion tracking, you can take several paths. But they depend on your website’s functionality as well.

If you can distinguish (just by looking at the page URL) that a visitor completed an important action, you can create destination URL conversion goals. For that, all you need is to add the Page view Microsoft Ads UET tag. The rest will be handled by Bing ads once you configure the goal.

But if your conversions are based on events, not page views, then you should configure additional tags in GTM, send the events and then create event-based conversion goals.

As for purchasing tracking with Microsoft Ads,  you could also send the purchase not as custom conversion but as a Purchase event. However, I found that it’s quicker/easier to send it as a custom one.

If you have some questions (or maybe you noticed something wrong in this article), let me know in the comments.

The post Bing Ads conversion tracking with Google Tag Manager (a.k.a. Microsoft Ads) appeared first on Analytics Mania.

Read MoreAnalytics Mania



Please enter your comment!
Please enter your name here

Most Popular

Recent Comments