Resources / Marketing Data
How to Send CRM Pipeline Back to Your Ad Platforms
A step-by-step guide to offline conversion tracking for B2B: capturing click IDs, choosing the right Salesforce or HubSpot stages, and sending qualified pipeline and opportunity value back to Google Ads, Microsoft Advertising, LinkedIn, and Meta.
By Jenna Clark · November 5, 2026 · 12 min read
Why form fills are the wrong target
In B2B, most form fills never become pipeline. When Google Ads or LinkedIn only sees the form fill, smart bidding finds more people who fill out forms, not more people who buy. Offline conversion tracking closes that gap: the CRM tells each platform which clicks became qualified leads and opportunities, so the algorithm learns from real outcomes.
Step 1: Capture click IDs and UTMs
Nothing can be matched later if it isn't captured at the form. Store these on every lead:
| Field | Purpose |
|---|---|
| gclid / gbraid / wbraid | Google Ads click identifiers |
| msclkid | Microsoft Advertising click identifier |
| li_fat_id | LinkedIn first-party click identifier |
| fbclid / fbc | Meta click identifier |
| utm_source, utm_medium, utm_campaign, utm_content, utm_term | Campaign context for CRM reporting |
| First and latest touch timestamps | Required for conversion time and attribution windows |
- 01
Add hidden fields to every form
Each form in HubSpot, Marketo, Pardot, or Eloqua gets hidden fields for the click IDs and UTMs above, populated from the landing URL or a first-party cookie so they persist across pages.
- 02
Map them to the lead and contact record
Create matching fields in Salesforce or HubSpot and sync them from the automation platform. Keep the original click ID on the record; do not overwrite it on later visits.
- 03
Carry them to the opportunity
When an opportunity is created, copy the click IDs from the primary contact (or the contact role) onto the opportunity so the stage change can be sent back.
Step 2: Choose the stages to send
Send two or three stages, not every status. A common set is marketing qualified, sales accepted or opportunity created, and closed won. Each needs a clear field and date in the CRM that marks when the record reached that stage. If the stage definitions are not agreed yet, start with the Paid Media Governance Framework.
Step 3: Create the conversion actions
In each platform, create one import or API conversion action per stage, named the same way everywhere (for example, "CRM | Opportunity | Salesforce"). Set them to secondary at first so they report without changing bidding. Match the conversion window to your sales cycle; Google Ads allows clicks up to 90 days old to be imported.
Step 4: Connect the CRM to each platform
Google Ads
Offline conversion imports keyed on gclid, plus enhanced conversions for leads using hashed email so records without a click ID still match. Salesforce and HubSpot both have native Google Ads connectors.
Microsoft Advertising
Offline conversion imports keyed on msclkid, scheduled from a file or via the API. Use the same stage names as Google so reporting lines up.
The LinkedIn Conversions API, matched on li_fat_id and hashed email. HubSpot offers a native connection; Salesforce stages are typically sent through an integration.
Meta
The Meta Conversions API for CRM events, matched on fbc and hashed contact fields. Use it for lead-to-opportunity signals on lead generation campaigns.
Schedule uploads at least daily. Platforms learn faster from fresh signals, and late uploads can fall outside the conversion window.
Step 5: Pass pipeline value
Send the opportunity amount, or a weighted stage value, as the conversion value. If amounts are not set at opportunity creation, use an agreed average deal value per segment and update it quarterly. Value lets bidding favor the campaigns that create larger pipeline, not just more of it.
Step 6: Move bidding to the CRM signal
Once imports have run cleanly for several weeks and the counts reconcile with the CRM, make the deepest stage with enough monthly volume the primary conversion, and keep the form fill as secondary. Change one campaign group at a time and watch cost per opportunity, not cost per lead.
QA checklist
- Click IDs present on most paid leads in the CRM
- Click IDs copied from contact to opportunity
- One import action per stage, named consistently across platforms
- Uploads running at least daily with no match errors
- Platform conversion counts reconciled to CRM reports monthly
- Form fill set to secondary once CRM signals are primary
For help building the tracking layer, see Marketing Data & Conversion Tracking or start with a PPC audit.
Want your ad platforms learning from pipeline?
DDM works with your RevOps and marketing operations teams to connect Salesforce or HubSpot to Google, Microsoft, LinkedIn, and Meta.