Support

How to Set Up Offline Conversions and Link CRM Sales to Google Ads

How to Set Up Offline Conversions and Link CRM Sales to Google Ads
0.00
β˜…β˜…β˜…β˜…β˜…
(0)
Views: 104954
Reading time: ~ 9 min.
Google
04/13/26
NPPR TEAM Editorial
Table Of Contents

Updated: April 2026

TL;DR: Offline conversion tracking lets Google Ads see which clicks turn into real sales in your CRM β€” so Smart Bidding optimizes for revenue, not just form fills. Advertisers who import CRM data typically cut CPL by 20-40% within 30 days. If you need a verified Google Ads account to start right away β€” grab one and skip the verification queue.

βœ… Suits you if❌ Not for you if
You generate leads that close offline (calls, meetings, in-store)All conversions happen online with no sales team
Your CRM stores GCLID or enhanced conversion dataYou don't use a CRM or spreadsheet for leads
You want Smart Bidding to optimize for revenue, not clicksYour monthly ad spend is under $300 and volume is too low

Offline conversions connect the last mile between a Google Adsclick and a closed deal in your CRM. When a visitor fills out a form, Google attaches a GCLID (Google Click ID) to that session. Your CRM stores the GCLID alongside the lead record. Once the lead converts β€” signs a contract, makes a deposit, completes a purchase β€” you upload that conversion back to Google Ads with the GCLID, timestamp, and value. Google matches it to the original click and feeds the signal into Smart Bidding.

What Changed in Google Ads Offline Tracking in 2026

  • Advertiser certification is now handled directly inside the Google Ads interface (launched February 2026) β€” no more separate portals for verification
  • Providing false information during verification is now treated as a policy violation since November 2025, leading to immediate account suspension
  • 86% of active campaigns use automated bidding strategies (Google Ads Blog, 2026), making offline conversion data more critical than ever for bid optimization
  • Performance Max serves 62% of all Google Ads clicks β€” PMax campaigns rely heavily on conversion signals to allocate budget across channels
  • Enhanced Conversions for Leads now supports hashed email matching alongside GCLID, reducing data loss from cookie restrictions

How Offline Conversion Import Works: Step by Step

The process has three stages: capture, store, upload. Each one has pitfalls that can break the pipeline.

Stage 1 β€” Capture the GCLID

When someone clicks your ad, Google appends a gclid parameter to the landing page URL. Your form or landing page must grab this value and pass it to the backend. Most form builders (Gravity Forms, Typeform, HubSpot Forms) support hidden fields. Add a hidden field named gclid, then use JavaScript to extract the value from the URL and populate it automatically.

If you use a tracker like Keitaro or BeMob, the GCLID is captured as a sub-parameter and stored alongside the click record. This is especially useful for media buyers running multiple accounts.

Related: Google Ads Offline Conversion Imports: Complete Setup Guide for 2026

⚠️ Important: If your landing page strips URL parameters or redirects through a cloaker without passing the GCLID, every offline conversion from that page is lost. Test the full click path before scaling β€” open your ad URL, check that the GCLID reaches the form submission payload.

Stage 2 β€” Store GCLID in Your CRM

The GCLID must live alongside the lead record in your CRM. In HubSpot, Salesforce, Pipedrive, or any pipeline tool, create a custom field called gclid (text type). Your form integration or webhook should map the hidden field value directly into this CRM field.

Every lead record now carries two critical pieces of data: the GCLID that ties it to a Google Ads click, and the deal stage that tells you whether this lead became revenue.

Case: E-commerce agency, $5,000/month Google Adsspend, B2B SaaS client. Problem: Smart Bidding optimized for form fills β€” 60% of leads were unqualified. CPA looked great at $45, but cost per qualified lead was $180. Action: Added GCLID capture to all forms, mapped to HubSpot, uploaded closed-won deals weekly via Google Ads API. Result: Within 3 weeks, Smart Bidding shifted budget to campaigns generating qualified leads. Cost per qualified lead dropped to $95. Overall ROAS improved by 2.1x.

Stage 3 β€” Upload Conversions to Google Ads

You have three upload methods:

MethodBest ForFrequencySetup Complexity
Manual CSV uploadTesting, low volumeWeeklyLow
Google Ads APIAutomated pipelinesDaily/hourlyMedium
Zapier / Make integrationMid-volume, no dev teamDailyLow-Medium

For manual upload: go to Tools & Settings β†’ Conversions β†’ Uploads. Download the template, fill in GCLID, conversion name, conversion time, and conversion value. Upload the file.

For API-based upload: use the ConversionUploadService with the uploadClickConversions method. Each record needs: gclid, conversionAction (resource name), conversionDateTime, and optionally conversionValue and currencyCode.

Need verified Google Ads accounts for running campaigns at scale? Pre-verified accounts skip the documentation queue β€” start importing conversions from day one.

Enhanced Conversions for Leads: The GCLID Alternative

Not every setup can reliably pass GCLIDs through the entire funnel. Enhanced Conversions for Leads (EC for Leads) solves this by matching conversions using hashed email addresses instead.

Here is how it works:

  1. Visitor clicks your ad and lands on the page
  2. Visitor fills out a form with their email address
  3. The Google tag captures and hashes the email (SHA-256), sending it to Google
  4. When the lead converts in your CRM, you upload the hashed email + conversion data
  5. Google matches the hashed email to the original ad click

This approach is more resilient against cookie loss and works even when GCLID gets stripped by redirects or privacy tools.

Related: Google Ads Enhanced Conversions: Setup, Hashing, and Benefits in 2026

When to Use GCLID vs Enhanced Conversions

FactorGCLID ImportEnhanced Conversions for Leads
Accuracy95%+ match rate85-90% match rate
Cookie dependencyHigh β€” GCLID stored in cookieLow β€” uses email hash
Setup complexityRequires hidden field on every formRequires Google tag + email field
CRM requirementMust store GCLID per leadMust store email per lead
Privacy complianceGCLID is pseudonymous dataEmail is hashed before sending

For media buyers managing multiple campaigns across different accounts, Enhanced Conversions is often simpler because you don't need to debug GCLID passthrough on every landing page variation.

⚠️ Important: Enhanced Conversions requires that the user's email submitted on your site matches the email associated with their Google account. If your audience uses burner emails for form fills, match rates will drop significantly. In that case, stick with GCLID import.

Connecting CRM Platforms to Google Ads

Salesforce Integration

Google Ads has a native Salesforce integration. Go to Tools & Settings β†’ Linked accounts β†’ Salesforce. Authorize access, select which Salesforce milestones (Lead Status or Opportunity Stage) should count as conversions. Google pulls these automatically β€” no manual uploads needed.

The Salesforce integration supports importing multiple milestones as separate conversion actions. For example, you can import "Qualified Lead" as one conversion and "Closed Won" as another, assigning different values. Smart Bidding then optimizes toward the milestone you set as your primary conversion.

HubSpot Integration

HubSpot does not have a native Google Ads offline conversion integration. You need either:

Related: Tracker Integration with Google Ads: Step-by-Step Guide for Media Buyers

  • Zapier/Make workflow: Trigger on deal stage change in HubSpot β†’ format GCLID + timestamp + value β†’ send to Google Ads API via HTTP request
  • HubSpot Operations Hub + custom code: Write a Node.js action that calls the Google Ads API directly when a deal moves to "Closed Won"
  • Third-party connector: Tools like Supermetrics or Leadsbridge handle the mapping

Pipedrive, Zoho, and Other CRMs

For CRMs without native integration, the workflow is the same: extract GCLID, deal value, and conversion timestamp from your CRM, then push to Google Ads via API or scheduled CSV upload. According to WordStream, the average CPL across Google Ads is $70.11 and rising (+5.13% YoY) β€” importing offline conversions is one of the few levers that consistently reduces cost per actual sale rather than cost per form fill.

Case: Solo media buyer, verified Google Adsaccount from npprteam.shop, $150/day budget, financial services vertical. Problem: Running Search campaigns optimized for "Submit Form" β€” getting 8 leads/day at $19 CPL, but only 1 in 10 became a paying client. True cost per client: $190. Action: Set up GCLID tracking on landing page, stored in Google Sheets as CRM, uploaded closed deals via CSV weekly. Result: After 2 weeks of data, switched to Target CPA bidding optimized for "Paid Client" conversion. CPL rose to $35, but conversion-to-client rate jumped to 4 in 10. True cost per client: $87.50. Budget efficiency improved 2.2x.

Conversion Lag and Attribution Windows

Offline conversions often happen days or weeks after the click. A B2B lead might click on Monday, fill a form on Tuesday, get a demo on Thursday, and close the deal three weeks later. Google Ads allows a conversion window of up to 90 days β€” the time between the click and the uploaded conversion.

Key rules for conversion lag:

  • Upload conversions within 24 hours of the sale closing β€” this gives Smart Bidding the freshest signal
  • Set your conversion window to match your actual sales cycle. If your average deal closes in 14 days, set the window to at least 21 days
  • Don't wait to batch uploads monthly β€” weekly or daily uploads give Smart Bidding enough data to learn faster
  • The GCLID expires after 90 days. If your sales cycle exceeds 90 days, you must use Enhanced Conversions for Leads instead

⚠️ Important: If you upload conversions with timestamps older than your set conversion window, Google silently drops them β€” no error, no warning. Always verify that your upload timestamps fall within the active window.

Offline Conversion Tracking with Performance Max

Performance Max campaigns are now the dominant campaign type, serving 62% of all Google Ads clicks. PMax distributes your budget across Search, Display, YouTube, Gmail, Discover, and Maps β€” automatically. It relies entirely on conversion signals to decide where to spend.

Without offline conversion data, PMax optimizes for whatever online conversion you set β€” usually a form fill or page visit. Feed it real revenue data from your CRM, and PMax shifts budget toward the channels and audiences that generate actual paying customers.

According to Google, advertisers using PMax with offline conversion data see up to +227% revenue growth compared to traditional campaign structures. The key is volume: PMax needs at least 30 conversions per month in a single conversion action to optimize effectively.

Tracker Integration for Media Buyers

If you run traffic through a tracker (Keitaro, BeMob, Binom, RedTrack), offline conversion import adds another layer of optimization.

TrackerGoogle Ads GCLID SupportOffline UploadBest For
Keitaroβœ… NativeVia API/postbackSolo buyers, advanced setups
RedTrackβœ… NativeBuilt-in integrationTeams, multi-source
BeMobβœ… Via macrosManual/APIBudget-friendly setups
Binomβœ… NativeVia APIHigh-volume buyers

The workflow: tracker captures GCLID on click β†’ passes to landing page β†’ form sends to CRM with GCLID β†’ CRM updates deal status β†’ postback fires to tracker AND conversion uploads to Google Ads.

For a deeper dive on connecting your tracker, read Tracker Integration with Google Ads.

Need a Google Ads account ready for campaign launch? Skip weeks of verification β€” pre-verified accounts come with advertiser status confirmed and ready to import conversions.

Data Validation and Troubleshooting

Before scaling, verify your pipeline end-to-end:

  1. Click your own ad (use a test campaign with $1 budget)
  2. Check that GCLID appears in the landing page URL
  3. Submit the form β€” verify GCLID is stored in CRM
  4. Create a test conversion upload with that GCLID
  5. Check Tools & Settings β†’ Conversions β†’ Uploads for success/failure status

Common errors:

  • "GCLID not found" β€” the click happened outside your conversion window, or the GCLID was malformed
  • "Conversion action not found" β€” the conversion action name in your upload doesn't match exactly what's configured in Google Ads
  • "Duplicate conversion" β€” you uploaded the same GCLID + conversion action + timestamp twice. Google deduplicates automatically, but it flags the row
  • Conversions show in reports but Smart Bidding doesn't use them β€” the conversion action must be set to "Primary" (not "Secondary") in your conversion settings

Quick Start Checklist

  • [ ] Create a conversion action in Google Ads (type: Import β†’ CRM, or Click Import)
  • [ ] Add hidden GCLID field to all lead forms
  • [ ] Add JavaScript to auto-populate GCLID from URL parameter
  • [ ] Create a GCLID custom field in your CRM
  • [ ] Map form submissions to CRM with GCLID included
  • [ ] Perform a test click β†’ form fill β†’ CRM check β†’ upload cycle
  • [ ] Schedule regular uploads (daily or weekly via API, Zapier, or CSV)
  • [ ] Set conversion window in Google Ads to match your sales cycle + buffer
  • [ ] Switch campaign bidding to Target CPA or Target ROAS using the offline conversion as primary
Related articles

FAQ

What is a GCLID and why does offline conversion tracking need it?

GCLID (Google Click ID) is a unique identifier Google attaches to every ad click. When you upload a conversion from your CRM, Google uses the GCLID to match that sale back to the exact click, keyword, and ad group. Without it, Google cannot connect offline revenue to ad spend.

How long does it take for offline conversions to appear in Google Ads reports?

Uploaded conversions typically appear within 3-6 hours in conversion reports. However, Smart Bidding needs 2-3 weeks of consistent data (minimum 15-30 conversions) before it starts adjusting bids based on offline signals.

Can I track phone call conversions as offline conversions?

Yes. If your CRM logs inbound calls with a GCLID (via call tracking tools like CallRail or Ringba), you can upload closed deals from phone leads the same way. Alternatively, Google Ads has built-in call conversion tracking that automatically captures GCLIDs from call extensions.

What is the minimum conversion volume needed for Smart Bidding to work?

Google recommends at least 30 conversions per month for Target CPA and 50 for Target ROAS to perform effectively. If your offline conversion volume is lower, consider importing an earlier funnel stage (e.g., "Qualified Lead") as a secondary signal while collecting enough "Closed Won" data.

Does offline conversion tracking work with Performance Max campaigns?

Yes β€” PMax relies heavily on conversion data to distribute budget across channels. Importing offline conversions into PMax tells the algorithm which Search, YouTube, or Display placements generate actual revenue. According to Google, PMax with proper conversion data delivers up to +227% revenue growth vs traditional structures.

Is GCLID tracking GDPR-compliant?

GCLID itself is pseudonymous data β€” it doesn't directly identify a person. However, if you link it to personal data in your CRM (name, email, phone), you must disclose this in your privacy policy and have a legal basis for processing. Enhanced Conversions hashes email data before transmission, which adds a privacy layer but doesn't eliminate the need for consent.

What happens if my GCLID expires before the deal closes?

GCLIDs expire after 90 days. If your sales cycle exceeds this window, switch to Enhanced Conversions for Leads, which uses hashed email matching instead. There is no expiration on email-based matching as long as the conversion falls within your set attribution window.

Can I import offline conversions from multiple CRM systems into one Google Ads account?

Yes. You can upload conversions via multiple methods (CSV, API, Zapier) simultaneously. Each upload just needs the correct GCLID or hashed email, conversion action name, timestamp, and value. Google deduplicates based on GCLID + conversion action + timestamp, so there is no risk of double-counting if you accidentally overlap.

Meet the Author

NPPR TEAM Editorial
NPPR TEAM Editorial

Content prepared by the NPPR TEAM media buying team β€” 15+ specialists with over 7 years of combined experience in paid traffic acquisition. The team works daily with TikTok Ads, Facebook Ads, Google Ads, teaser networks, and SEO across Europe, the US, Asia, and the Middle East. Since 2019, over 30,000 orders fulfilled on NPPRTEAM.SHOP.

Articles

β–²