Offline conversions in Google Ads are sales that happen outside the website, by phone, WhatsApp or with a salesperson, and that you send back to Google to link to the ad that generated the click. Without that feedback, Google only sees the completed form and teaches the bidding to bring in leads, not customers. With it, the campaign learns from what actually closed.
What offline conversions are in Google Ads
An offline conversion is any business result that Google can’t see on its own, because it happens after the click and away from the website tag. The sale closed over the phone, the signed contract, the proposal accepted on WhatsApp, the quote that became an order.
According to Google’s help documentation, the ad click receives a code. You store that code with the lead’s data and, when the sale happens, send the code back to Google with the conversion type and date. The sale shows up alongside the account’s other conversions.
The code has a name: it’s the GCLID (Google Click Identifier). It only exists if auto-tagging is turned on in the account. On Google’s official page about importing offline conversions, the GCLID is at the center of the method.
Why Google needs to know about the sale, not just the lead
Automated bidding learns from the conversions you report. If the only conversion is the form submission, the algorithm looks for more people who fill out forms, and that includes the curious, students, competitors and wrong phone numbers.
Picture a clinic or a real estate agency that gets ten leads. Some never answer the phone, others just wanted a price, a few become appointments. To Google, all ten are worth the same. The sales team knows the difference, but that information never left the CRM.
In practice, bidding favors the searches and audiences that generate lead volume, not necessarily the ones that pay the bills. With offline conversions in Google Ads, the same budget gets distributed based on what closed. This doesn’t guarantee results, but it changes the signal the algorithm uses to decide.
Before importing, check that the lead is being counted correctly on the website, as shown in the guide on Google Ads conversion tracking with Tag Manager.
How the GCLID travels from the ad to the CRM and back
The data has to pass through five stations, and if it breaks at any one of them, the sale is left without a source.
- The person clicks the ad and lands on the website with the GCLID in the URL.
- The website captures that parameter and stores it, usually in a hidden form field.
- The form sends the GCLID along with name, phone and email to the CRM, spreadsheet or customer service tool.
- The sale is closed, and the team records in the CRM that the lead became a customer, with date and value.
- That record goes back to Google Ads with the GCLID, the conversion action name and the time.
The GCLID must be stored exactly as it arrived, because Google is case-sensitive. A system that converts everything to lowercase or cuts off the end of the code makes the data useless.
Without a GCLID: enhanced conversions for leads
Enhanced conversions for leads use the lead’s own email or phone number, sent to Google hashed, in place of the click code. In the Portuguese interface, Google calls the feature “conversões otimizadas para leads”.
Hashing is done with the SHA256 algorithm, which turns the email into a string that can’t be reversed. The website tag captures the data when the form is submitted and, when you import the sale later, Google compares the hashed data to find out which account and which click originated the lead.
Google’s help page on enhanced conversions explains the difference from web conversions. According to Google itself, those who aren’t importing anything offline yet should start with this format. If you already use the GCLID, you can send both identifiers together.
Four ways to import the sale back
There are four ways to get the sale to Google, and the choice depends on the CRM the company uses and who will keep the routine running.
| Method | How it works | Best for | Watch out |
|---|---|---|---|
| Spreadsheet | You export sales from the CRM, build the file with GCLID, conversion name and date, and upload it through the Data Manager | Few sales per month and no integration | Depends on someone remembering to upload; delays leave the sale outside the window |
| Native integration | Google Ads connects to CRMs such as Salesforce and HubSpot and reads the funnel milestones | If you already use one of these CRMs | Funnel stages must be defined and filled in |
| Zapier or Make | An automation takes the event from the CRM (lead became a customer) and sends it to Google Ads | CRM without a native integration | Breaks silently if the GCLID field gets renamed |
| API | A developer writes the upload directly from the company’s system | Custom system or high volume | Requires maintenance; since June 15, 2026 it goes through the Data Manager API |
On the API, Google’s help center says that starting June 15, 2026, offline conversion imports and sending optimized conversions for leads moved to the Data Manager API and are blocked in the Google Ads API for anyone who was not on the legacy access allowlist. If you have an old script, check this with whoever wrote it.
With the Google Ads Data manager, the connection to Google Sheets, cloud storage and CRMs lives inside the account itself, with no coding. For most companies, the simplest path your CRM supports is the one worth taking.
Timing and the conversion window
The imported conversion must fall within the action’s conversion window, counted from the click. Each conversion action has its own window, set in Goals, so it’s worth checking which one is set in your account.
Your sales cycle matters too. Google’s help center says that in Data manager, the cycle from click to conversion must be shorter than 14 or 90 days, depending on the source. For Google Sheets and cloud storage, each import run looks back 90 days. For Salesforce and HubSpot, the first run brings in the last 14 days and later runs bring in what changed since the previous one.
Two details from the same material. Conversions that happen up to one day after the click may not be recorded, so upload one extra day of data in each import. And the data takes 24 to 48 hours to show up in reports.
If your sale takes months, like real estate or a long contract, also import an earlier milestone. A scheduled visit or a proposal sent arrives within the window and says more than the form does.
What changes in bidding when the sale comes back
Google only optimizes bidding for conversions marked as primary. Secondary ones are for observation only and don’t enter the algorithm’s decision.
That’s why the setup matters as much as the import. Google’s own help center warns that misclassifying an action as primary or secondary can keep Smart Bidding from optimizing properly, because the algorithm depends on that signal.
For those who generate leads and close later, a common setup is to keep the form as a secondary conversion and the imported sale as the primary one. The campaign keeps measuring the lead, but starts looking for the sale.
When each sale has a value, there are two strategies to consider. With Maximize conversion value, Google aims for the highest total value within your budget. With target ROAS, you set how much you want back for every real invested. Both only work well if the value you send is the real one, not an average number for everyone. If you don’t have the value in your CRM, you can start with the count of sales and add the value later.
Changing the conversion that receives bids affects the campaign’s learning. With few sales per month, the algorithm has little to learn from, and the intermediate milestone helps. No setup promises results, it just gives the system a better signal.
Common mistakes that keep the sale from arriving
- Auto-tagging is turned off, so the click never gets a GCLID.
- The form loses the parameter because the page redirects before capturing it, or because the hidden field isn’t in the form the site actually uses.
- The GCLID is saved in the CRM, but nobody fills in the sale stage, and the import file comes out empty.
- The company imports the lead instead of the sale. Google gets back the same information the site tag had already sent.
- The file goes out with an altered GCLID, with a trailing space or in lowercase.
- The import arrives after the conversion window has closed.
- The WhatsApp contact comes from a button with no form, so there’s no GCLID or email to store.
- Both conversions, the lead and the sale, are set as primary, and bidding mixes the two signals.
WhatsApp is the hardest case for anyone who sells through conversation. If the button click doesn’t carry the GCLID into the conversation, one option is to ask for the email in the first message and use enhanced conversions for leads. Well-built UTMs help record the source in the CRM even when the GCLID doesn’t survive.
Tracking that must exist first
Importing the sale assumes the lead already reaches the CRM with its source. Google Tag Manager captures the parameter and fires the tags. GA4 set up from scratch shows where leads come from. And GA4 events record the form submission and the WhatsApp button click. If one of these pieces is broken, the import may still work, but on top of bad data.
Frequently asked questions
What are offline conversions in Google Ads? They are sales or commercial stages that happen outside the website, like a deal closed by phone or WhatsApp, which you import into Google Ads to link the sale to the ad that generated the click.
Do I need a CRM to import offline conversions? It’s not required. A spreadsheet with the GCLID, the conversion name and the date is enough. A CRM makes it easier because it stores the GCLID with the lead and avoids rework.
What is the GCLID? It’s Google’s click identifier, a URL parameter that comes with every ad click when auto-tagging is on. It lets Google know which click led to the sale.
What’s the difference between GCLID and enhanced conversions for leads? The GCLID identifies the click. Enhanced conversions for leads use the lead’s hashed email or phone number to match the sale to the click when the GCLID wasn’t saved. The two can work together.
Does importing the sale make the campaign perform better? There’s no guarantee. The import gives automated bidding a signal closer to the business result, and the effect depends on sales volume and the quality of the data sent.
Where to start
If you want to know whether your website and CRM are ready to send the sale back to Google, the conversion tracking page shows how Ciclicko works the data path, from click to CRM.
If your account already runs ads and you want to see how conversions are set up today, the free Google Ads audit shows what the account is measuring and what it’s leaving out.