Microsoft Ads Conversion Tracking & Attribution Setup Guide
Connect Microsoft Ads (formerly Bing Ads) to push offline conversions via msclkid. Multi-account support, automatic token refresh, Smart Bidding optimisation.
On this page
Connecting Microsoft Ads to SourceLoop closes the offline conversion loop for Bing, Yahoo, and the Microsoft Audience Network. Every time a tracked lead converts on your site (form submission, meeting booked, payment received), SourceLoop pushes that conversion back to Microsoft Ads against the matching msclkid. The bidding strategies train on real revenue, not just whatever the browser pixel saw.
Microsoft Ads is often the under-loved cousin of Google Ads, but it converts well for B2B and tends to have meaningfully lower CPCs. Offline conversion sync magnifies the ROAS difference.
This article covers the OAuth connect flow only. After connecting, see:
Why connect Microsoft Ads to SourceLoop?
Microsoft Ads’ Universal Event Tracking (UET) tag fires browser-side, which means it captures maybe 50-60% of conversions cleanly. The Offline Conversions API fills in the rest:
- Server-side conversion push via the Microsoft Ads Offline Conversions API, immune to browser-side blocking
- msclkid matching for every conversion where the visitor clicked through from a Microsoft ad
- Revenue values sent with every conversion when payment integrations are connected
- Smart Bidding optimisation trains on real qualified leads / paying customers, not just clicks
- Multi-touch attribution within SourceLoop, while feeding Microsoft the offline conversion data it needs for tCPA-style bidding
Before you start
You’ll need:
- A SourceLoop workspace with the tracking pixel installed
- A Microsoft Ads account with Auto-tagging enabled (so msclkid is added to ad-click landing URLs)
- A Microsoft user with Standard access or higher on the ad account
- An existing Conversion Goal in Microsoft Ads (you’ll get the Goal Name for SourceLoop’s config in the next article)
- Admin or Owner role in SourceLoop
Step 1: Open the Ad Platforms page
- Sign in to SourceLoop.
- Click Setup in the left sidebar.
- Click the Ad Platforms tab.
- Scroll to the Microsoft Ads card and click Connect.
You’ll be redirected to Microsoft’s OAuth consent screen on login.microsoftonline.com.
Step 2: Authorise SourceLoop on Microsoft
- Sign in with the Microsoft user that has Standard+ access on your Microsoft Ads account.
- Pick the right work or personal account if you’re prompted (Microsoft accounts can have multiple identities).
- Review the requested scopes (msads.manage and offline_access).
- Click Yes / Accept.
Microsoft redirects you back to SourceLoop with an authorisation code, which SourceLoop exchanges for an access token + refresh token. Tokens are stored encrypted.
Step 3: Pick the Microsoft Ads account
If your Microsoft user has access to more than one Microsoft Ads account (common for agencies and Manager accounts), SourceLoop shows a picker.
- Find the Microsoft Ads account you want to connect.
- Click Connect this account.
SourceLoop creates a connection for that specific account. The Microsoft Ads card flips to Connected with the account name and Account ID.
Step 4: Confirm Auto-tagging is enabled
Microsoft Ads’ Auto-tagging adds the msclkid parameter to every ad-click landing URL. Without it, your SourceLoop tracker has nothing to capture, and offline conversions can’t be matched back to clicks.
- Open Microsoft Ads.
- Go to Settings -> Account settings -> Account preferences.
- Confirm Auto-tagging of UTM is enabled (or at minimum Auto-tagging of msclkid).
- Save if you had to enable it.
Once on, every new ad click adds ?msclkid=... to the landing URL. SourceLoop’s tracker captures that the first time the visitor lands. Existing visitors without msclkid in their session can’t be retroactively tagged, you’ll start seeing conversions push 1-2 weeks after enabling, as Auto-tagged sessions accumulate.
What gets synced
Once connected and configured, SourceLoop runs two flows automatically:
PULL (Insights sync, daily at 05:00 UTC):
- Campaign, ad group, and ad hierarchy
- Daily spend, impressions, clicks per campaign / ad group / ad
- 14-day rolling re-sync to catch Microsoft’s late attribution
PUSH (Offline Conversions API, every 2 minutes):
- Every SourceLoop conversion where the visitor’s session carries an
msclkidcookie - Conversion value (currency) and currency code when configured
- Conversion Name and Conversion Time for matching to your Microsoft Ads Conversion Goal
What’s next
- Pick which SourceLoop events get pushed to which Microsoft Ads Conversion Goal: Configure Microsoft Ads offline conversion sync.
- Troubleshoot any push errors: Troubleshoot Microsoft Ads sync issues.
- Disconnect or reset the integration: Disconnect Microsoft Ads from SourceLoop.
Frequently asked questions
-
Is this Microsoft Ads or Bing Ads?
Same thing. Microsoft renamed Bing Ads to Microsoft Advertising in 2019, but plenty of marketers still call it Bing Ads. The underlying account and APIs are the same. Microsoft Ads also covers ads on Yahoo, AOL, MSN, Outlook.com, and the Microsoft Audience Network.
-
Do I need a Microsoft Ads Developer Token?
No. SourceLoop holds the Developer Token on our side, so you don't need to apply for one yourself. You just authorise the OAuth flow and we handle the rest.
-
What does Microsoft use to match offline conversions to clicks?
msclkid (Microsoft Click ID), and only msclkid. Unlike Google Ads or Meta, Microsoft Ads doesn't support PII fallback for offline conversions, no hashed email, no hashed phone. If a visitor's session doesn't have an msclkid cookie, the conversion can't be pushed.
-
What scopes does SourceLoop request from Microsoft?
The required scopes are msads.manage (read/write to the Microsoft Ads API) and offline_access (so SourceLoop can refresh tokens automatically). We don't ask for any non-advertising data.
-
How long does the Microsoft Ads access token last?
1 hour. SourceLoop stores the refresh token and rotates the access token automatically as needed, you won't need to reconnect unless the refresh token itself gets revoked.
-
Can I connect a Microsoft Ads Manager (agency) account?
Yes, but you connect each sub-account individually. The Manager account itself can't run offline conversions, only the individual ad accounts under it can. After OAuth, SourceLoop shows the list of accounts accessible to your user and you pick one per connection.
-
Does this work for the Microsoft Audience Network?
Yes. Microsoft Audience Network conversions report through the same offline conversion endpoint, scoped to your Microsoft Ads account. If your campaigns target the Audience Network, conversions push the same way as Search.