How to reconcile Microsoft Ads against your invoicing 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 invoicing 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 × Invoicing System
Microsoft Ads vs paid invoices: msclkid and the B2B search buyer
Reconcile Microsoft Ads against paid invoices by storing the msclkid on the inquiry, carrying it to the client record, and importing paid invoices by payment date. Microsoft's import window resembles Google's but should be checked directly. For B2B services with net-30 or net-60 terms, Microsoft seeing fewer invoices than you collected is normal.
Microsoft's audience skews toward desktop and office-hours searches, which is why it often produces a disproportionate share of B2B clients who pay by invoice. The join is the msclkid captured on the landing page and stored with the lead. Check that your form script reads msclkid specifically: capture code copied from a Google setup frequently reads only gclid, and Microsoft-sourced invoices then arrive with nothing to match on.
If you import Google Ads campaigns into Microsoft Ads, the conversion goals may have been imported too and never adjusted, so Microsoft can be counting the same form submissions Google counts rather than paid invoices. Confirm which goal your Microsoft reporting reads and whether it counts by conversion time or click time before you compare it with an export from Xero or QuickBooks filtered to payment date. Verify the current offline import window in Microsoft's documentation, because long payment terms push invoices past it.
Expect a shortfall when engagements take months to sign and weeks more to pay. Microsoft reporting more than your paid invoices almost always traces to a goal still counting form fills or phone calls, or to the same lead being credited by Google and Microsoft at once.
Microsoft × Invoicing System · what breaks
Why Microsoft and your invoicing system disagree
- 01
Invoices sent counted as revenue earned
On thirty-day terms, issue date and payment date are different months. Reporting at issue books income you have not received.
- 02
Written-off invoices never reversed
Work that was never paid for stays in the reported figure indefinitely because nobody wired the reversal.
- 03
Payment terms longer than the reporting window
A month judged at month-end is a month that has not finished being paid.
- 04
Delivery cost absent
In services, revenue without the hours that produced it is half the picture. A large low-margin client can look like your best campaign result.
Microsoft × Invoicing System · the fix
What you get from this — Microsoft × Invoicing System
A number instead of a suspicion
The likely cause, narrowed
A basis for deciding
Microsoft × Invoicing System · architecture
What each side is actually counting — Microsoft × Invoicing System
- 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 invoicing system counts
Invoices actually paid, by payment date rather than issue date, found in QuickBooks, Xero, FreshBooks, Zoho Books or whatever raises your invoices.
- 5
The filter that makes them comparable
Status is paid — not sent, not overdue, not written off.
Microsoft × Invoicing System · events
Reading the gap — Microsoft × Invoicing System
| What you see | What it usually means |
|---|---|
| 15%+ platform higher | Usually the wrong event entirely — invoices are being counted at issue rather than payment, or written-off invoices were never reversed. |
| 20%+ platform lower | Usually structural — the platform is missing work it produced — usually a sales cycle plus payment terms exceeding the attribution window. |
Microsoft × Invoicing System · diagnose
Diagnostic order — Microsoft × Invoicing System
- 01
Confirm both numbers cover the same period and channel
- 02
Invoices sent counted as revenue earned
On thirty-day terms, issue date and payment date are different months. Reporting at issue books income you have not received.
- 03
Written-off invoices never reversed
Work that was never paid for stays in the reported figure indefinitely because nobody wired the reversal.
- 04
Payment terms longer than the reporting window
A month judged at month-end is a month that has not finished being paid.
- 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 × Invoicing System · prove
How to know you did it right — Microsoft × Invoicing System
Source of truth
your invoicing system — paid invoices for a fully closed month
Microsoft × Invoicing System · free audit
What we check in the free audit
- Confirm both numbers cover the same period and channel
- Invoices sent counted as revenue earned
- Written-off invoices never reversed
- Payment terms longer than the reporting window
- Read the upload's match rate and Microsoft's conversion goal diagnostics
Checked against
your invoicing system — paid invoices for a fully closed month
Free30 minutesNo obligation
Microsoft × Invoicing System · when not to buy
When the answer is that you do not need us — Microsoft × Invoicing System
- If almost all of your paid invoices 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 × Invoicing System · what we deliver
The method, step by step — Microsoft × Invoicing System
Pull what Microsoft reports
The upload's match rate and microsoft's conversion goal diagnostics.
Pull what your invoicing system shows
Export invoices by payment date for a window longer than your payment terms, at the amount received after processing fees.
Filter both to the same thing
Status is paid — not sent, not overdue, not written off.
Compare per record, not on totals
FAQ
Microsoft × Invoicing System questions, answered
Yes, each platform claims every conversion it can link, so the sum across platforms exceeds your invoices. Only per-invoice matching on a stored click identifier tells you which one actually brought the client.
Yes. Imported goals often point at Google's events; create a Microsoft offline goal for paid invoices and confirm it receives uploads.
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. Status is paid — not sent, not overdue, not written off. 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 × Invoicing System
- Google Ads × Invoicing SystemHow to reconcile Google Ads against your invoicing system
- Meta × Invoicing SystemHow to reconcile Meta Ads against your invoicing system
- TikTok × Invoicing SystemHow to reconcile TikTok Ads against your invoicing system
RELATED GUIDES
Systems of record beside invoicing system, 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 · RFP → awardHow to track RFP submission to contract award for Microsoft Ads
- Microsoft · Quote → closed jobHow to track quote request to closed job for Microsoft Ads
- Microsoft · LocksmithMicrosoft Ads conversion tracking for locksmiths
- Microsoft · Appliance repairMicrosoft Ads conversion tracking for appliance repair companies
- MyCase → Microsoft AdsConnecting MyCase to Microsoft Ads
- Simpro → Microsoft AdsConnecting Simpro to Microsoft Ads
Free · 30 min
Found a gap between Microsoft and your invoicing system?
Free30 minutesNo obligation
