Ad platform

Google Ads offline conversion tracking, driven by your CRM

Google Ads offline conversion tracking is how you tell Google what happened after the click. Attribi records the click ID when someone lands on your site, follows that person into your CRM, and sends the qualified and closed-won outcome back to your Google Ads account, with the deal value attached on closed-won. Map that conversion action to a funnel stage and Attribi makes it the primary conversion goal in your account, so Google Ads is looking at outcomes your CRM verified and not only pixel form fills.

No credit card required · 5-minute setup

What Attribi does with Google Ads

Offline conversion upload

Sends

Form submissions, qualified leads, and closed-won deals each upload to their own Google Ads conversion action, with the deal value attached when it closes.

Enhanced Conversions for Leads

Sends

Hashed email and phone go up alongside the click ID, so a lead can still be matched when the click ID never made it into your CRM. Google requires you to accept its Enhanced Conversions terms first; until you do, uploads fall back to click ID only.

Daily spend import

Imports

Cost, clicks, and impressions come back from your ad account every day, so revenue from your CRM is measured against what you actually spent.

Conversion action creation

Sends

Attribi creates the conversion actions in your Google Ads account for you, one per funnel stage, or maps a stage to a conversion action you already run.

Click ID capture

Receives

GCLID, WBRAID, and GBRAID are all recorded when a visitor lands, so clicks that arrive without a standard GCLID still trace back to a campaign.

Setting up Google Ads

  1. 1

    Connect your Google Ads account

    Sign in with Google from the Connections page and pick the ad account you want to track. If you run more than one account, connect each of them; Attribi keeps their conversions and spend separate.

  2. 2

    Create or map a conversion action per stage

    Each funnel stage gets a Create button that mints the conversion action inside your Google Ads account and maps it in one click. If you already have a conversion action you want to keep using, point the stage at that instead. Clicking Create twice re-binds to the same action rather than making a duplicate.

  3. 3

    Let your CRM drive the uploads

    From then on it runs itself. When a lead is marked qualified or a deal is closed in your CRM, Attribi uploads that outcome to the matching conversion action, and closed-won deals carry their revenue value up with them. No exports, no spreadsheets, no monthly upload ritual.

Step-by-step walkthrough: Google Ads Offline Conversion Import in 2026: Six Routes, Three Worth Building On · GCLID, GBRAID, WBRAID: Three Click IDs, and Your Form Probably Keeps One · Google Ads Offline Conversion Errors Tell You the Cause. The Silent Ones Don't. · The Data Manager API Replaced the Upload You Are Probably Still Using · Value-Based Bidding for Lead Gen: A Missing Currency Is Not a Dollar · Enhanced Conversions for Leads Fixes the Match. It Does Not Fix the Signal. · Google Ads Conversion Adjustments for CRM Revenue · HubSpot Tells Google Ads a Contact Became a Customer. It Does Not Say for How Much. · Pipedrive Marks the Deal Won. Nobody Tells Google Ads. · Salesforce to Google Ads Offline Conversion Import Breaks Inside Salesforce, Not Inside Google Ads · Zoho CRM to Google Ads Offline Conversions: Match Won Deals to Ad Clicks

CRM offline conversion tracking for Google Ads: how to send CRM conversions back

Key points

  • CRM offline conversion tracking sends what happened after the click, a qualified lead or a closed deal, from your CRM to Google Ads.
  • Attribi uploads server to server through Google's Data Manager API. GA4 and Google Tag Manager are not part of the upload path.
  • Each funnel stage maps to its own Google Ads conversion action, and closed-won carries the deal value.
  • A conversion is matched by GCLID, WBRAID or GBRAID, or by hashed email and phone once you accept Google's Enhanced Conversions terms.
  • Seven CRMs can drive the uploads, and outcomes are read from the CRM once a day.

How do I send CRM conversions to Google Ads?

Connect your CRM and your Google Ads account to Attribi, then map each funnel stage to a Google Ads conversion action. When a lead is qualified or a deal is closed in the CRM, Attribi picks it up on its daily read and uploads it to the matching conversion action, identified by the Google click ID or by hashed email and phone, with the deal value attached on closed won.

After that the CRM drives everything. There is no export and no upload template for you to maintain, and the conversion actions can be created for you during mapping.

  1. Sign in with Google on the Connections page and pick the ad account.
  2. Create or map one conversion action each for lead, qualified and closed won.
  3. Connect the CRM where your sales team marks leads qualified and deals won.
  4. Accept Google's Enhanced Conversions terms in Google Ads if you want hashed email and phone used for matching.
Conversion action setup guide

What is CRM offline conversion tracking?

CRM offline conversion tracking is the practice of sending sales outcomes recorded in a CRM back to the ad platform that generated the lead. The conversion is offline in the sense that it happens after the website session, in a sales process the ad platform's tag cannot observe.

A tag on a thank-you page can only report that a form was submitted. It fires the same way for a future customer and for a student doing research. The CRM is the only system that knows which is which, because it is where a salesperson records the answer.

Sending that answer back turns Google Ads reporting from cost per form fill into cost per qualified lead and revenue per campaign.

How Attribi handles offline conversions across platforms

Do I need GA4 or Google Tag Manager for offline conversion tracking?

No. Attribi sends CRM conversions directly to Google Ads through Google's Data Manager API, from its own servers. Nothing is routed through GA4, and no GTM tag fires when a deal closes. GA4 and GTM are optional and play supporting roles only.

Google Tag Manager is one way to install the Attribi script, using a Custom HTML tag, if you would rather not edit site code. Be aware that ad blockers hide tag managers from some visitors, so a script placed directly in the page head captures more clicks.

GA4 can be connected separately as a read-only source. Attribi imports its channel metrics so you can compare what GA4 credits each channel with against what your CRM confirmed. That comparison is useful, but it has no bearing on whether conversions reach Google Ads.

How the read-only GA4 connection works

Which CRMs can send conversions to Google Ads through Attribi?

HubSpot, Salesforce, Zoho, Pipedrive, Freshsales, LeadSquared and Odoo. Attribi reads deals from each of them once a day and uploads qualified and closed-won outcomes. Shopify is supported as an order source, where a paid order becomes the closed-won conversion with the real order total.

If your sales team works from a spreadsheet, the Google Sheets connection doubles as a stage tracker for leads Attribi captured: each lead lands as a row, and setting that row to Qualified, or to Closed Won with a deal value and currency, uploads the outcome. It tracks Attribi's own leads and does not import deals pasted in from another system.

You can also mark a lead qualified or closed won by hand inside Attribi.

Uploads to ad platforms and CRM revenue connections are paid plan features. The pricing page lists what each plan includes.

See every integration

How does this work for B2B SaaS with a long sales cycle?

The click ID is stored against the visitor when they land and kept, so it is still available when the deal closes weeks or months later. Each stage, lead, qualified and closed won, uploads to its own conversion action, which lets a SaaS team read a campaign by pipeline quality as well as by signups.

A typical SaaS setup treats a demo request or trial signup as the lead stage, a sales-accepted opportunity as qualified, and a signed contract as closed won with the contract value.

Keeping the three in separate conversion actions is what makes the numbers readable inside Google Ads: you can see that one campaign produces many signups and little pipeline while another produces few signups and most of the revenue.

What does Google Ads need in order to match an offline conversion?

An identifier, a conversion action and a time. The identifier is a Google click ID (GCLID, WBRAID or GBRAID) or a hashed email or phone number. Attribi sends the click ID when it has one and adds hashed email and phone alongside it.

Hashed identifiers come with a condition. Google only accepts them after you accept its Enhanced Conversions terms inside your Google Ads account. Until then Attribi sends click ID only, and a lead with no click ID cannot be matched. Capturing the click ID at landing is the single most useful thing you can do for match quality.

How do I know the uploads are working?

Attribi records the result of every upload per lead, per platform and per stage. Opening a lead shows whether its qualified and closed-won conversions reached Google Ads, and the reason when one did not.

The Connections page also flags the two account-level problems that most often stop uploads: a Google connection that needs reconnecting, and Enhanced Conversions terms that have not been accepted.

Funnel stages

Stages Attribi supports for Google Ads.

  • Lead
  • Qualified
  • Closed Won

Works with

Frequently asked questions

Do I need to create conversion actions myself?

No. On the Connections page, each funnel stage has a Create button that makes the conversion action inside your Google Ads account and maps it to that stage in one click. If you would rather use a conversion action you already have, you can map that instead. Nothing has to be built by hand in the Google Ads UI.

What about Google's UploadClickConversions deprecation?

Attribi uploads through Google's Data Manager API rather than the deprecated UploadClickConversions endpoint, and has done since before the June 2026 cutoff, so that deadline came and went without interrupting uploads. Nothing on your side has to change.

What happens if a lead has no GCLID?

Attribi can still upload the conversion using the lead's hashed email and phone number, which is what Enhanced Conversions for Leads matches on. Match rates are lower than with a click ID, and Google needs you to have accepted its Enhanced Conversions terms in your account for hashed identifiers to be used at all.

Which funnel stages can I send to Google Ads?

All three: lead, qualified, and closed won. Each one maps to its own conversion action, so inside Google Ads you can see how many form fills became genuine qualified leads and how many of those became revenue, campaign by campaign.

Does Attribi import my Google Ads spend?

Yes, daily. Cost, clicks, and impressions are pulled from your ad account and stored per campaign and day, so return on ad spend is calculated against real spend rather than a number you typed in.

How quickly does a CRM conversion reach Google Ads?

Outcomes read from a CRM are picked up on the next daily run, so a deal closed today is uploaded within about a day. A stage you mark by hand inside Attribi uploads straight away.

Updated

Connect Google Ads to Attribi.

Sign up and connect it from the Connections page.

Start Free

No credit card · Free up to 500 visitors a month