Microsoft Advertising

Attribution pulls campaign and ad group spend from Microsoft Advertising and tracks visitors using the UTM auto-tagging provided by the ad platform.

Attribution connects to Microsoft Advertising (formerly Bing Ads) to import the spend of your campaigns and ad groups, and to track the visitors those ads send to your site.

What this integration does

  • Campaign and ad group filters - Attribution creates a Microsoft Advertising channel and adds a filter for each campaign and ad group
  • Spend tracking - daily imports of spend for each campaign and ad group
  • UTM auto-tagging - your ad URLs carry the UTM parameters Attribution matches visits against
  • Offline conversion events - Attribution can send the conversions it tracks back to Microsoft Advertising

Before you start

  • A Microsoft Advertising account with access to the ad account you want to connect
  • UTM auto-tagging turned on (see step 1 below)
  • If you sign in with a work or school Microsoft account, your organization may need to approve Attribution before you can connect. See Troubleshooting if you are asked for admin approval.

Setup

Step 1: Make sure UTM auto-tagging is turned on

Attribution App requires Microsoft Advertising Auto-Tagging to be turned on (Preserve or Replace). You can find more information on auto-tagging here.

If auto-tagging is off when you connect, Attribution turns it on for you.

Step 2: Connect Microsoft Advertising

Connect Microsoft Advertising to Attribution app by clicking the Settings icon in your Attribution app account in the top right corner. From there you can select Ad Integrations in the left hand panel. Next, you can click the button to Connect Microsoft Advertising. Follow instruction on the screen to complete the connection.

Sign in with the Microsoft account that has access to the ad account you want to track. Both work or school accounts and personal Microsoft accounts can be used.

Step 3: Choose your ad account

If your Microsoft login has access to one ad account, it is selected automatically. If it has access to several, you are asked which one to connect.

Each Attribution integration tracks a single Microsoft Advertising ad account. To track more than one, connect Microsoft Advertising again and pick the next account.

How campaigns and ad groups are tracked

Attribution will create filters based on default Microsoft Advertising auto-tagging schema (see Available UTM tags). Attribution uses exactly 4 UTM parameters - utm_source, utm_medium, utm_campaign, utm_content.

Your ad landing URL should look like this:
http://example.com?utm_source=bing&utm_medium=cpc&utm_campaign=name&utm_content=adgroup_name

Each campaign and ad group in your account gets its own filter, matched on those parameters. Performance Max campaigns are included.

Editing filters for custom UTM parameters

The filters Attribution creates are editable, and you will need to edit them if your ad URLs do not use Microsoft's default tags.

❗️

Custom or manual UTM parameters

If you set UTM parameters manually or override using Account/Campaign-level templates in Microsoft Ads settings, Attribution will track the spend but campaigns might not capture any visits or conversions for these campaigns. In this case automatically created filters for Microsoft Advertising need to be edited manually to match your UTM schema.

To edit one, expand the Microsoft Advertising channel in your dashboard, open the menu next to the campaign or ad group you want to change, and update its URL parameters to match the tags your ads actually use.

Offline conversion events

Attribution can send the conversions it tracks back to Microsoft Advertising, so they appear in your Microsoft Ads reporting and can be used for bidding and optimisation.

📘

Setting up offline conversion events

Full documentation for this feature is on its way. To turn it on, get in touch at [email protected].

Limitations

Tracking is based on UTM parameters, so ads whose URLs do not carry them cannot be matched to a campaign.

📘

Microsoft Click ID

Attribution also captures Microsoft Click ID (msclkid) however it's not used by Attribution for tracking or modeling because this parameter not possible to lookup using Microsoft Advertising API to figure out from which campaign visitor came to the website. The only way to properly track Microsoft Advertising campaigns is by using UTM parameters.

Troubleshooting

Spend appears but no visits or conversions

The most common cause is UTM parameters that don't match the filters. Your ads are tagged with something other than Microsoft's default schema, so the spend imports but the visits are not matched to it. See Editing filters for custom UTM parameters above.

You are asked for admin approval

Microsoft shows a Need admin approval screen when your organization does not let people approve applications for themselves. Ask an administrator to approve Attribution once, using the callout below, then connect again.

An error starting with AADSTS650052

The full message reads something like "The app is trying to access a service (Microsoft Advertising API Service) that your organization lacks a service principal for."

This means your organization has never given any application access to the Microsoft Advertising API. It is not a problem with your Attribution account or your ad account, and it can only be resolved by an administrator of your Microsoft organization. Forward them the callout below.

You connected the wrong Microsoft account

If the connection succeeds but no ad accounts appear, or the wrong ones do, you may have signed in with a different Microsoft account. Disconnect the integration and connect again, choosing the account that has access to the ad account you want to track.

📘

For your IT administrator

Attribution needs your organization to consent once to the Attribution Ad Integration application, which requests read and write access to Microsoft Advertising on behalf of the signed-in user.

  • To approve it, tick Consent on behalf of your organization on the Microsoft consent screen, or in the Microsoft Entra admin center go to Enterprise applicationsAttribution Ad IntegrationPermissionsGrant admin consent.
  • If consent still fails with AADSTS650052, your tenant may hold an incomplete Microsoft Advertising API service principal - one registered only against Microsoft's sandbox identifier (https://tip.api.bingads.microsoft.com/...) and not the production one (https://ads.microsoft.com). Removing it and consenting again lets Microsoft Entra provision a complete one.

Getting help

If you are still stuck, or you would like a hand checking your filters, get in touch at [email protected].