Offline Conversion Tracking for B2B: How to Send CRM Pipeline Back Into Google Ads in 2026
TL;DR
Offline conversion tracking sends what happens in your CRM after the click (SQL, opportunity, closed-won) back to Google Ads, so bidding learns which searches create pipeline.
Google changed the setup in 2026: enhanced conversions for leads is the recommended method, and uploads moved to the Data Manager API on June 15, 2026.
The 90-day limit matters for B2B: conversions uploaded more than 90 days after the last click are not imported, so send early pipeline stages, not only closed-won.
The outcome: a Google Ads account that bids for qualified pipeline instead of form fills.
A Google Ads account that only sees form fills optimises for form fills. It cannot tell a student downloading a whitepaper from a plant manager requesting a quote, so Smart Bidding pays the same for both. For a B2B team with a long sales cycle, that gap is expensive: the conversions Google counts are not the ones your sales team closes.
Offline conversion tracking closes the gap. It sends CRM outcomes, such as a sales-qualified lead, an opportunity or a closed-won deal, back into Google Ads and ties each one to the click that started it. Bidding then learns which keywords and campaigns produce pipeline, not just leads.
This guide covers how Google's offline conversion setup works in 2026, how to map your CRM pipeline stages to conversion actions, how to connect HubSpot or Salesforce, and how to handle Google's 90-day import window when your deals take a year or more.
Who this is for: paid media managers and RevOps leads at sales-led B2B companies who already run Google Search Ads and want them judged on pipeline.
What Offline Conversion Tracking Is and Why B2B Search Needs It
Offline conversion tracking imports conversions that happen outside your website into Google Ads. In B2B, offline usually means inside your CRM: a lead qualified by sales, a first meeting held, an opportunity created, a contract signed.
Google describes offline conversion imports as the way to measure sales, contracts or calls that happen after an ad click (Google Ads Help). The mechanism is simple: you store an identifier from the click alongside the lead, then upload that identifier with the conversion once the deal moves.
Why it matters for B2B search:
Form fills are a weak signal. A form fill says nothing about fit, budget or buying intent. Your sales team decides that later, in the CRM.
Smart Bidding optimises toward your primary conversions. Target CPA and target ROAS bid for whatever you mark as primary. Feed them pipeline stages and they bid for pipeline.
Search sits late in the buying journey. Buyers searching for your category are often comparing suppliers. Pipeline data shows which of those searches turn into deals.
One constraint shapes everything below: conversions uploaded more than 90 days after the associated last click are not imported (Google Ads Help).
What Changed in Google Ads Offline Conversions in 2026
If your offline conversion setup dates from 2024 or earlier, review it now. Google has reworked the method in three steps:
Date | Change | What it means for you |
|---|---|---|
May 31, 2025 | Legacy Salesforce integration no longer supported | Reconnect Salesforce through Google Ads Data Manager |
April 2026 | Enhanced conversions for web and for leads merged into one setting. Google accepts user-provided data from tags, Data Manager and API connections at the same time | Existing users were migrated automatically. You no longer pick one implementation method |
June 15, 2026 | Offline conversion imports and enhanced conversions for leads uploads migrated to the Data Manager API and blocked in the Google Ads API | Custom scripts built on the old Google Ads API upload method need rebuilding |
Google now recommends that new adopters start with enhanced conversions for leads rather than GCLID-only imports (Google Ads Help). Enhanced conversions for leads is an upgraded version of offline conversion import: it adds hashed first-party data, such as the lead's email address, to the click ID (Google Ads Help). Google says the upgrade also enables engaged-view and cross-device conversions.
The practical takeaway: send both identifiers. Google asks advertisers to keep including GCLIDs wherever possible, and GCLIDs are required if you do not use a tag to collect user-provided data (Google Ads Help).
How to Set Up Offline Conversion Tracking: Step by Step (2026)
Seven steps take you from a form-fill account to one that bids on pipeline. Steps 1 to 4 are preparation. Step 5 is the Google Ads CRM integration. Steps 6 and 7 make the data useful for bidding.
Step 1: Map Your CRM Pipeline Stages to Conversion Actions
Start in the CRM, not in Google Ads. List the stages a lead passes through, then decide which become conversion actions. Three to four stages is a workable number: enough signal for bidding, few enough to keep clean.
Pipeline stage | Role in Google Ads | Primary or secondary |
|---|---|---|
Form submission or MQL | Observation only once pipeline data flows | Secondary |
Sales-qualified lead (SQL) | Main bidding signal for long sales cycles | Primary |
Opportunity created | Bidding signal carrying a value | Primary |
Closed-won | Revenue reporting. A bidding signal only if deals close inside 90 days | Primary or secondary |
Primary conversion actions feed bidding. Secondary actions are reported but do not steer bids. Agree the stage definitions with sales first, because a conversion action is only as reliable as the CRM stage behind it.
Step 2: Capture the GCLID and Lead Identifiers at Form Submit
Turn on auto-tagging in Google Ads. Google lists it as a prerequisite for importing offline conversions (Google Ads Help). Auto-tagging appends a GCLID to every ad click URL.
Then capture it. Add a hidden GCLID field to every lead form, store the value on the contact or lead record, and carry it to the opportunity when the lead converts. Google's Salesforce setup, for example, maps Lead.GCLID to Opportunity.GCLID so the click ID survives lead conversion (Google Ads Help).
Store the email address and phone number too. They are the match keys for enhanced conversions for leads, and they recover conversions where the GCLID is missing.
Step 3: Turn On Enhanced Conversions for Leads
Enable enhanced conversions in your Google Ads conversion settings and configure the Google tag or Google Tag Manager to collect lead data on your form pages (Google Ads Help). The data is hashed, and when your CRM later uploads a conversion with the same hashed email, Google matches the two.
Since April 2026 this sits under one enhanced conversions setting covering web and leads. Check whether it is already on before adding a second tag.
Step 4: Create the Offline Conversion Actions in Google Ads
Create one conversion action per pipeline stage from Step 1, using an import source. Name each one after its CRM stage, such as "CRM: SQL" and "CRM: Opportunity", so reports read cleanly.
Wait 4 to 6 hours after creating a conversion action before uploading conversions to it (Google Ads Help). Set the conversion window to match your cycle, keeping the 90-day import limit in mind.
Step 5: Connect Your CRM to Google Ads
This is the Google Ads CRM integration step. The right method depends on your CRM.
CRM | Connection method | What to know |
|---|---|---|
HubSpot | Native ad conversion events in HubSpot | Triggers on lifecycle stage changes and form submissions. Needs Marketing Hub Starter, Professional or Enterprise, with limits of 5, 50 and 100 events. Lifecycle events carry a fixed value |
Salesforce | Salesforce connection in Google Ads Data Manager | Tracks Lead status and Opportunity Stage. Needs field history tracking. The first import looks back 14 days, and failed events are not retried |
Microsoft Dynamics 365 and other CRMs | Data Manager API, Zapier, or a connector tool such as LeadsBridge | Build the sync from CRM stage changes, then compare counts against the CRM before you rely on it |
HubSpot: lifecycle stages are the trigger, not deal stages. If your SQL and opportunity definitions live on deals, map them to lifecycle stages or build a custom workflow. HubSpot hashes shared contact data with SHA-256 before syncing, and lifecycle events only sync for contacts with a GCLID or shared contact data (HubSpot Knowledge Base).
Salesforce: turn on field history tracking for Lead status and Opportunity Stage before you connect, because the integration reads those changes. Enhanced conversions for leads uses email first, or a phone number in E.164 format (Google Ads Help).
Step 6: Assign Conversion Values That Reflect Pipeline
Without values, Google treats every SQL as equal. Values tell bidding which conversions are worth more.
Fixed stage values. Value each stage at historical win rate times average deal size. If 1 in 5 opportunities closes and the average deal is 100,000 USD, each opportunity is worth 20,000 USD to bidding.
Actual deal amounts. Pass the CRM amount field. In the Salesforce connection, a mapped value field supplies the value, and unmapped conversions default to a value of one (Google Ads Help). HubSpot lifecycle events use fixed values, and HubSpot notes the "Use the Deal amount" option is no longer available, so real deal amounts need a custom workflow and Google's offline conversions API.
Keep values proportional across stages, so an opportunity is always worth more than the SQL before it.
Step 7: Validate the Import, Then Switch Bidding
After the first uploads, check the conversion action diagnostics in Google Ads for unmatched click IDs, expired clicks and duplicates. Compare the Google Ads count against the CRM for the same period. A gap points to forms without the hidden GCLID field, or leads created outside tracked pages.
Move bidding to the new primary actions once the Google Ads counts match the CRM. Changing the primary conversion changes what Smart Bidding optimises for, so plan for a learning period and avoid other major account changes at the same time.
The 90-Day Problem: Offline Conversion Tracking for Long B2B Sales Cycles
Generic guides skip this constraint. Google does not import conversions uploaded more than 90 days after the associated last click (Google Ads Help). Sales cycles for Hey Sid's typical customers run 12 to 36 months (Hey Sid internal data).
If closed-won is your only offline conversion, Google never sees most of your deals. The click expired long before the contract was signed.
Three ways to work within the window:
Optimise on the earliest stage that predicts revenue. An SQL or a first meeting lands closer to the click than a signed contract, so it falls inside the 90 days far more often.
Use values to carry revenue meaning. Weight earlier stages by their historical conversion rate to closed-won, as in Step 6.
Report closed-won in your CRM. The CRM has no 90-day cut-off. Track search-sourced revenue there and review campaigns against it each quarter.
Search is also rarely the first touch in a long cycle. A buyer who searches your brand after six months of seeing your ads was not created by that search. Offline conversion tracking credits the last click. Your CRM's influenced pipeline view shows the rest, as covered in Influenced Pipeline: The B2B KPI That Matters in 2026.
Common Mistakes With Google Ads Offline Conversions
Five errors account for the gaps teams find when they first compare Google Ads against the CRM.
Mistake 1: Keeping Form Fills as a Primary Conversion
If form fills stay primary next to SQLs, bidding optimises for a blend of volume and quality. Move form fills to secondary once pipeline stages import.
Mistake 2: Losing the GCLID Between Lead and Opportunity
The click ID often sits on the lead or contact record and never reaches the opportunity. Map it across at lead conversion, or opportunity-stage uploads arrive with nothing to match.
Mistake 3: Uploading the Same Conversion Twice
Nightly syncs and manual uploads overlap. Give each conversion a unique ID, such as the CRM record ID, so repeat syncs do not inflate counts.
Mistake 4: Keeping the Old Google Ads API Upload Method
Since June 15, 2026, offline conversion uploads go through the Data Manager API and are blocked in the Google Ads API (Google Ads Help). In-house scripts written before then need checking.
Mistake 5: Skipping the Consent Check
Enhanced conversions share hashed customer data with Google, and Google ties the feature to its customer data policies. Confirm your consent banner and privacy notice cover this before you switch it on. For European teams, that review sits under GDPR.
Tools for Google Ads CRM Integration
Five options cover the setups B2B teams run. Each one has a genuine strength. But each also has a limit worth knowing before you commit.
Tool | Good for | Watch out for |
|---|---|---|
HubSpot users who want a native, no-code sync | Lifecycle stage triggers only, fixed values, event limits of 5, 50 or 100 by tier | |
Salesforce teams that want Google's own supported path | Needs custom GCLID fields and field history tracking | |
CRMs without a native connector, triggered on stage changes | Google notes the Zapier route can carry a fee. Test match rates | |
Teams that want a managed connector between CRM and ad platforms | One more subscription. Confirm it supports your CRM and fields | |
Teams running server-side tagging | Technical setup that suits teams with tag management skills |
Attribution platforms such as Factors.ai also document Google enhanced conversions setups, which suits teams that already run one for multi-touch reporting.
Where Hey Sid Fits: Build Demand, Then Capture It
Offline conversion tracking makes Google Search Ads better at capturing demand. It does not create the demand. In a 12 to 36 month cycle, the buyer who searches for a supplier arrives with a shortlist in mind. The question is whether you are on it.
Hey Sid works on both sides of that moment:
The Influence Loop builds familiarity before the search. Always On runs person-level advertising, Precision Connect runs warm LinkedIn outreach, and Authority Builder publishes thought leadership from your team, all aimed at the same named decision-makers.
The Google Search Ads add-on captures demand when buyers start searching, with specialist search strategy, campaign management and continuous optimisation.
The HubSpot integration connects both to pipeline. It syncs both ways: CRM companies flow into the advertising audience, and ad engagement flows back into HubSpot, so reporting shows influenced pipeline and influenced revenue next to the conversions Google Ads imports.
Risk Ident ran Hey Sid's ABM service and reported 2.5x shorter sales cycles (client-reported) (Hey Sid case studies).
Explore Google Search Ads: heysid.com/google-search-ads
See how it works: heysid.com/how-it-works
Conclusion: Make Google Ads Bid for Pipeline in 2026
Offline conversion tracking turns Google Ads from a lead counter into a pipeline signal. The 2026 setup is clear: capture the GCLID and hashed lead data, turn on enhanced conversions for leads, connect your CRM through Data Manager or a supported connector, and value each pipeline stage. Respect the 90-day window by optimising on early stages and reporting closed-won in your CRM.
For the next steps, read CRM Audience Targeting: Build B2B Ad Audiences to turn the same CRM data into targeting, and PPC Management Cost: Agency Fees and Pricing Models if you are weighing in-house against outsourced search management.
Book a demo: heysid.com/demo
FAQ
What is offline conversion tracking in Google Ads?
Offline conversion tracking imports conversions that happen outside your website, such as a qualified lead or a signed deal in your CRM, into Google Ads. Each conversion is matched to the ad click that started it, using the GCLID, hashed lead data, or both.
What is the difference between enhanced conversions for leads and offline conversion import?
Enhanced conversions for leads is an upgraded version of offline conversion import. A GCLID-only import matches on the click ID. Enhanced conversions for leads adds hashed first-party data, such as email, which recovers matches when the click ID is missing. Google recommends new adopters start with it.
How long do you have to upload offline conversions to Google Ads?
Conversions uploaded more than 90 days after the associated last click are not imported. After you create a new conversion action, wait 4 to 6 hours before the first upload.
Can HubSpot send offline conversions to Google Ads?
Yes. HubSpot's ad conversion events sync lifecycle stage changes and form submissions to Google Ads, using enhanced conversions with SHA-256 hashed contact data. It needs Marketing Hub Starter, Professional or Enterprise.
Lifecycle events carry a fixed value. Sending real deal amounts needs a custom workflow and Google's offline conversions API.
Which pipeline stage should B2B teams optimise Google Ads for?
Optimise for the earliest stage that reliably predicts revenue, usually the SQL or opportunity stage. Closed-won works as a bidding signal only when deals close within 90 days of the click, which is rare in long B2B cycles.
Do I still need the GCLID if I use enhanced conversions for leads?
Yes, where you can. Google asks advertisers to keep sending GCLIDs, and they are required if you do not use a tag to collect user-provided data. Sending both gives the highest match coverage.
Sources
Google Ads Help, "Your guide to upgrading offline conversion imports"
Google Ads Help, "Set up offline conversions using Google Click ID (GCLID)"
HubSpot Knowledge Base, "Create and sync ad conversion events with your Google Ads account"
Stape, "Offline conversion tracking: guide and best practices"
Related: CRM Audience Targeting: Build B2B Ad Audiences | PPC Management Cost: Agency Fees and Pricing Models | Competitive Paid Search for B2B: Bid Smarter in 2026





