Skip to main content
Microsoft · Booked call → closed wonUse-case guide

How to track booked call to closed won for Microsoft Ads

The revenue arrives weeks or months after the call, in a CRM, with no browser anywhere near it. Everything depends on the click identifier having been written onto the opportunity — and in most CRMs it silently isn't, because custom fields aren't carried through lead conversion unless somebody configured the mapping. On Microsoft Ads the specifics that matter are the click identifier (msclkid), the import mechanism (Microsoft's offline conversion import), and conversion goals deduplicate on their own counting settings, as in Google Ads, rather than through a shared event ID. The chain only works end to end if the identifier is captured on landing and stored on the opportunity record in your CRM — no cookie survives the gap between ad click and revenue sent back.

Free30 minutesNo obligation

Specific to Microsoft × Booked call → closed won

Microsoft Ads closed-won: B2B revenue via offline import

Upload each closed-won deal to a Microsoft Advertising offline conversion goal against the msclkid copied onto the opportunity, using the close date and the deal amount. Check Microsoft's current import window against your median click-to-close time; deals that close after it cannot be matched and belong in CRM reporting only.

Microsoft search often punches above its spend on B2B revenue, because its audience leans toward desktop users at work, and the LinkedIn profile targeting available in Microsoft Advertising lets you narrow by company and job function. That makes closed-won import more useful here than on most second-tier platforms: the deals Microsoft produces are often larger than its lead count suggests.

The import mirrors Google's, but the CRM side usually doesn't. Teams that mapped gclid from Lead to Opportunity long ago rarely added msclkid to the same mapping, so Microsoft-sourced deals reach close with an empty field. Add msclkid to the lead-conversion mapping and backfill it on open opportunities where the lead still holds the value.

Microsoft's automated bidding can use revenue values, but closed-won deals arrive in small numbers on a typical account. Send them with values for reporting and to guide manual budget moves between campaigns, and leave bidding on the booked-call goal unless closed deals reach a steady monthly count. Read the upload's match rate after every batch, since a short run of unmatched rows on a small account can hide a broken mapping for months.

Microsoft · Booked call → closed won · what breaks

Where this funnel usually breaks — Microsoft · Booked call → closed won

  1. 01

    Lead conversion drops the identifier

    The value sits on the Lead, the Opportunity has nothing, and no system reports a problem. This is the single most common cause we find.

  2. 02

    The cycle outruns the import window

    A deal closing five months after the click can't be imported. That's a real constraint, not something to engineer around.

  3. 03

    Amount changes after close

    Upsells and adjustments move the number. Decide which amount is the conversion value and document it.

Microsoft · Booked call → closed won · the fix

What working looks like — Microsoft · Booked call → closed won

  • Revenue sent back attributed to the click

    Weeks later if necessary, because the identifier lives on the opportunity record in your CRM rather than in a cookie.

  • Microsoft bidding fed the real outcome

    Via offline conversion import, so it optimizes toward revenue rather than toward booked calls.

  • A reconciliation that closes

    Your crm's closed-won records matched per record against what Microsoft Ads reports, over a fully closed window.

Microsoft · Booked call → closed won · architecture

The exact event sequence — Microsoft · Booked call → closed won

Stage three is where this fails, and it fails without raising an error anywhere.

  1. 1

    Ad click

    Identifier captured on landing and written to the lead record immediately.

  2. 2

    Call booked and attended

    The mid-funnel signal. Usually where bidding has to live, because it's inside the window.

  3. 3

    Lead converted to opportunity

    The step that loses the identifier in most CRMs. Field mapping has to be configured explicitly.

  4. 4

    Opportunity closed won

    With the real amount, which is what makes value-based bidding possible at all.

  5. 5

    Revenue sent back

    Uploaded against the original click, if the cycle fits inside the import window.

Microsoft · Booked call → closed won · diagnose

What's specific to Microsoft Ads

  1. 01

    Click identifier: msclkid

    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.

  2. 02

    Import mechanism: offline conversion import

    Uploaded against msclkid, closely mirroring Google's approach. Because so many Microsoft accounts are imported wholesale from Google Ads, people assume full parity — verify the current column format and requirements in Microsoft's documentation rather than reusing your Google template unchanged.

  3. 03

    Deduplication

    The same counting question applies: one conversion per click for lead-type goals, every conversion for ecommerce. Accounts imported from Google frequently carry over the goal structure and not the counting review, so it's worth reading every goal rather than assuming the import got it right.

  4. 04

    Window and timing

    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.

  5. 05

    The Microsoft gotcha

    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 · Booked call → closed won · prove

How to prove the chain works — Microsoft · Booked call → closed won

Source of truth

your CRM's closed-won records

  • The same identifier confirmed on the opportunity record in your CRM after a full real journey through every step.
  • Revenue sent back confirmed arriving at Microsoft Ads, verified by the upload's match rate and Microsoft's conversion goal diagnostics.
  • Your crm's closed-won records reconciled against Microsoft Ads per record over a fully closed window.

Microsoft · Booked call → closed won · free audit

What we check in the free audit

  • Click identifier: msclkid
  • Import mechanism: offline conversion import
  • Deduplication
  • Window and timing
  • The Microsoft gotcha

Checked against

your CRM's closed-won records

Get my free conversion tracking audit

Free30 minutesNo obligation

Microsoft · Booked call → closed won · when not to buy

When this doesn't apply to you — Microsoft · Booked call → closed won

  • If your median time from click to close comfortably exceeds the import window, the closed-won event simply cannot drive bidding. Build the reporting, optimize on an earlier stage, and don't let anyone tell you otherwise.
  • 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.
  • If your cycle from click to revenue sent back regularly exceeds the import window, the final event can't drive bidding whatever you build. Optimize toward attended call or qualified opportunity instead and use the later data for budget decisions rather than for bidding.
  • If almost none of your opportunities carry a click identifier today, that's the whole project.

Microsoft · Booked call → closed won · what we deliver

The implementation, on Microsoft Ads

  • Capture msclkid on landing

    Auto-tagging appends msclkid, and the UET tag has to be present to make use of it. Add msclkid explicitly to your capture list alongside the Google parameters — code written for gclid alone won't pick it up.

  • Persist it to the opportunity record in your CRM

    Create the identifier fields on Lead, Contact and Opportunity, then configure the lead-conversion mapping between them — the mapping is the part that's almost never done.

  • Send revenue sent back from the record

    The upload fires on stage change, automatically, referencing the identifier stored on the opportunity. Dispatched to Microsoft Ads through Microsoft's offline conversion import.

  • Deduplicate and reverse

    Conversion goals deduplicate on their own counting settings, as in google ads, rather than through a shared event id. A closed-won that later gets reversed or refunded should be adjusted, which almost no implementation does.

FAQ

Microsoft · Booked call → closed won questions, answered

Yes, through offline conversion import against msclkid, with the deal value. Check Microsoft's current window and file format before building.

Free · 30 min

Get booked call to closed won tracked properly on Microsoft Ads

Free30 minutesNo obligation