How to reconcile Microsoft Ads against your billing system
This is the check we run first on every account, written out so you can run it without us. It takes about thirty minutes and needs two numbers: what Microsoft says it produced, and what your billing system actually shows. The gap between them is the only honest measure of whether your tracking works — and if it comes back small, you do not need us.
Free30 minutesNo obligation
Specific to Microsoft × Subscriptions
Microsoft Ads vs new subscriptions: check msclkid reaches billing
Join Microsoft's conversions to first payments on msclkid stored with the billing customer, then upload those first payments through offline conversion import. Compare against a closed month of new subscriptions only. Microsoft running slightly low is normal; a zero-match upload or a count matching your renewals points to a goal copied from Google without its tracking.
msclkid is the join key, and it needs the same handling as gclid: captured on landing, persisted, and written into the subscription or customer metadata at checkout. On accounts imported wholesale from Google, the site often captures gclid alone, so new subscriptions from Bing traffic reach billing with no identifier. Count how many first payments in the month carry an msclkid before reading anything into the gap.
Microsoft's offline import window and attribution settings resemble Google's, but check the current values directly rather than assuming parity, especially if your trial is long. Compare Microsoft's conversion report for the specific subscription goal, not the account total that may include signups or page-view goals carried over from the Google import. Watch whether the report dates conversions to the click or to the payment.
Microsoft volume is usually small, so a handful of subscriptions either way can look like a large relative gap. Judge it across a quarter if one month is too thin. The common disagreement here is a goal counting every payment because the Google template was reused unchanged, which makes renewals look like new customers. Check the goal's count setting and filter the upload to first invoices.
Microsoft × Subscriptions · what breaks
Why Microsoft and your billing system disagree
- 01
Every renewal firing as a conversion
The single most common subscription error. A customer who stays two years produces twenty-four payment events, and counting them all inflates the conversion count by exactly your retention rate.
- 02
Trial starts counted as paid conversions
A free trial costs the user nothing. Optimising toward trials reliably finds people who start trials and never pay.
- 03
Cancellations inside the first period never reversed
Early churn on discounted offers is high, and the reversal is almost never wired.
- 04
Lifetime value assumed rather than measured
An industry figure for tenure will either starve a channel that works or overfund one that does not. Your own churn data says something different.
Microsoft × Subscriptions · the fix
What you get from this — Microsoft × Subscriptions
A number instead of a suspicion
The likely cause, narrowed
A basis for deciding
Microsoft × Subscriptions · architecture
What each side is actually counting — Microsoft × Subscriptions
- 1
What Microsoft counts
msclkid inside the import window, a conversion goal name matching one in the account, a timestamp and a value.
- 2
How Microsoft attributes it
Microsoft's click identifier, appended when auto-tagging is enabled. It depends on the UET tag being present on the site — without UET, msclkid arrives in the URL and there's nothing consuming it, which is a common half-configured state on accounts imported from Google.
- 3
The window it uses
Check Microsoft's current offline import window and attribution settings directly. They resemble Google's closely enough to be assumed and differ enough to matter.
- 4
What your billing system counts
First successful payments on new subscriptions, found in Stripe, Chargebee, Recurly, Paddle or whatever charges the card.
- 5
The filter that makes them comparable
New subscriptions only — exclude renewals, and exclude trials that have not yet converted.
Microsoft × Subscriptions · events
Reading the gap — Microsoft × Subscriptions
| What you see | What it usually means |
|---|---|
| 15%+ platform higher | Usually the wrong event entirely — the platform is counting renewals, trials, or subscriptions that cancelled before the first real charge. |
| 20%+ platform lower | Usually structural — the platform is missing subscriptions it produced — usually a signup-to-payment gap longer than the attribution window. |
Microsoft × Subscriptions · diagnose
Diagnostic order — Microsoft × Subscriptions
- 01
Confirm both numbers cover the same period and channel
- 02
Every renewal firing as a conversion
The single most common subscription error. A customer who stays two years produces twenty-four payment events, and counting them all inflates the conversion count by exactly your retention rate.
- 03
Trial starts counted as paid conversions
A free trial costs the user nothing. Optimising toward trials reliably finds people who start trials and never pay.
- 04
Cancellations inside the first period never reversed
Early churn on discounted offers is high, and the reversal is almost never wired.
- 05
Read the upload's match rate and Microsoft's conversion goal diagnostics
Almost every Microsoft account we open was imported from Google Ads, and the import copies campaign structure without copying the tracking. The result is a live account spending money with UET missing, msclkid unconsumed, or conversion goals pointing at pages that don't exist on the site any more.
Microsoft × Subscriptions · prove
How to know you did it right — Microsoft × Subscriptions
Source of truth
your billing system — new subscriptions for a fully closed month
Microsoft × Subscriptions · free audit
What we check in the free audit
- Confirm both numbers cover the same period and channel
- Every renewal firing as a conversion
- Trial starts counted as paid conversions
- Cancellations inside the first period never reversed
- Read the upload's match rate and Microsoft's conversion goal diagnostics
Checked against
your billing system — new subscriptions for a fully closed month
Free30 minutesNo obligation
Microsoft × Subscriptions · when not to buy
When the answer is that you do not need us — Microsoft × Subscriptions
- If almost all of your new subscriptions come from a channel with no click behind it, no tracking work will reach them — and knowing that is worth more than a build.
- If your Microsoft account is a straight import you've never separately configured, fix the account structure and UET installation first — offline import on top of an unconfigured account produces data nobody will trust.
Microsoft × Subscriptions · what we deliver
The method, step by step — Microsoft × Subscriptions
Pull what Microsoft reports
The upload's match rate and microsoft's conversion goal diagnostics.
Pull what your billing system shows
Export subscriptions by creation date for a closed month, filtered to those that took a first successful payment, and record the plan value.
Filter both to the same thing
New subscriptions only — exclude renewals, and exclude trials that have not yet converted.
Compare per record, not on totals
FAQ
Microsoft × Subscriptions questions, answered
Only after checking Microsoft's current column format, and only with msclkid rather than gclid in the identifier column. A file built for Google can upload cleanly and match nothing.
Usually because billing has no source recorded, not because Microsoft is wrong. Without msclkid on the customer record, those subscriptions sit in billing as unattributed.
Because you should know the size of the problem before anyone quotes you for it. If the gap is small, you have saved yourself a purchase. If it is large, you now know what you are buying rather than taking our word for it.
No. Both numbers come from systems you already own and neither leaves them. There is no tool to sign up for and nothing to upload.
Then compare totals for a closed period and treat the result as directional rather than exact. The upload's match rate and microsoft's conversion goal diagnostics is still the right place to read the platform's side.
Under five percent is working. Five to fifteen usually means reversals are missing. Above twenty is normally the wrong event being counted, not a broken tag — which is why debugging tags first wastes so much time.
Then fix the filter before drawing any conclusion. New subscriptions only — exclude renewals, and exclude trials that have not yet converted. A mismatch in scope produces a gap that looks like a tracking fault and is not one.
Book the free thirty-minute call and bring both numbers. We will tell you which of the causes above it is, and whether it is something you can fix yourself — which it sometimes is.
More on Microsoft × Subscriptions
- Google Ads × SubscriptionsHow to reconcile Google Ads against your billing system
- Meta × SubscriptionsHow to reconcile Meta Ads against your billing system
- TikTok × SubscriptionsHow to reconcile TikTok Ads against your billing system
RELATED GUIDES
Systems of record beside billing subscriptions, and the funnels it settles
- Microsoft × Enrolment SystemHow to reconcile Microsoft Ads against your application or enrolment system
- Microsoft × Job SystemHow to reconcile Microsoft Ads against your job management system
- Microsoft · Self-serve → sales assistedHow to track self-serve signup to sales-assisted contract for Microsoft Ads
- Microsoft · Free tool → paid planHow to track free tool to paid plan for Microsoft Ads
- Microsoft · NonprofitsMicrosoft Ads conversion tracking for nonprofits
- Microsoft · Driving schoolsMicrosoft Ads conversion tracking for driving schools
- Splitit → Microsoft AdsConnecting Splitit to Microsoft Ads
- Restrict Content Pro → Microsoft AdsConnecting Restrict Content Pro to Microsoft Ads
Free · 30 min
Found a gap between Microsoft and your billing system?
Free30 minutesNo obligation
