In this guide
- Offline conversions need either the click ID (
gclid,wbraid,gbraid) or hashed contact data (enhanced conversions for leads). - Create a conversion action of the import type for each stage and send the time and value.
- Send promptly: Google allows imports only within a window after the click.
Google Ads optimises for the conversions it can see. For lead generation that is usually the form, which is a weak signal. When you tell Google which leads became qualified or closed, smart bidding can learn from the better outcome. This page explains how to set it up and how a server container can send the data. See how to send offline conversions for the general pattern, and Google Ads conversion tracking for the online side.
What you need at the form
| Item | Why |
|---|---|
gclid | Identifies the ad click for most traffic |
wbraid and gbraid | Used for some iOS traffic where gclid is not available |
| Hashed e-mail and phone | For enhanced conversions for leads, matches without a click ID |
| Timestamp of the form fill | To link the lead to the click |
Raw events in. Clean events out.
Open Tracked collects each event on your own domain, removes the noise and sends what is left to Google Ads, Meta, TikTok.
Set up the conversion action
Create an import conversion action
In Google Ads, Goals, Conversions, choose to import from clicks or from a CRM, and name it for the stage.
Choose category and value
Qualified lead, purchase and so on. Use a real value where you can.
Set the window and counting
Count one conversion per click for leads, every conversion for sales.
Make the primary action the one you want to optimise
Others can be secondary.
Send from the server
Your CRM calls a webhook to your tagging server when the stage changes. A tag in the server container uploads the conversion to Google Ads with the click ID or the hashed e-mail, the conversion action, the time and the value. A custom tag or a direct API call can do this; the Google Ads API has an upload method for click conversions. Many teams use a scheduled upload from the CRM instead, which is simpler and acceptable if it runs often enough.
3 things to remember
Scroll and the points stack up.
Offline conversions need either the click ID (gclid, wbraid, gbraid) or hashed contact data (enhanced conversions for leads).

Create a conversion action of the import type for each stage and send the time and value.

Send promptly: Google allows imports only within a window after the click.

Windows and time zones
- Google allows imports up to a set number of days after the click, commonly 90. Check the current limit.
- Send the conversion time with the correct time zone, and use the same zone as the account.
- Upload as soon as the stage changes. A late upload still counts if it is inside the window.
Deduplication
Send each stage once. Use an order ID or a stable identifier so a repeated upload is not counted twice. If the same sale is also tracked online, use the same transaction ID.
Common problems
gclid is missing.wbraid and gbraid too, and use enhanced conversions for leads.A worked example: a home services company
A roofing company runs Google Ads for "roof repair near me". Each click can lead to a form fill or a phone call. Only some become jobs, and the jobs take two to six weeks to close. The company stores the gclid and the visitor's hashed e-mail and phone when the form is submitted. When a salesperson marks a lead as "quote accepted", the CRM sends a webhook. The server uploads an offline conversion with the click ID, the time, and the job value. After a few weeks Google Ads has enough closed jobs to see which keywords, locations and ads lead to real work. The company can then switch the main conversion from "form fill" to "quote accepted" and let smart bidding chase the better signal.
The hard part in this story is not the upload. It is remembering to store the click ID when the form is submitted, and keeping the process running when a developer leaves. Write the steps down, add a weekly check that counts imports against closed jobs, and give the check an owner. These small habits decide whether offline conversions keep working a year later.
Terms you will see
- Offline conversion import
- Uploading conversions that happened outside the website and linking them to clicks.
- gclid, wbraid, gbraid
- The click IDs Google uses for different kinds of traffic.
- Enhanced conversions for leads
- Matching lead conversions by hashed customer data instead of a click ID.
- Conversion window
- How long after a click a conversion may still be credited or uploaded.
- Smart bidding
- Automated bidding that learns from the conversions you report.
Brands that grow on cleaner data
Stores and agencies use Open Tracked to see which ads earn the sale.
Frequently asked questions
What are offline conversions in Google Ads?
Conversions that happen outside the website, such as a closed deal, that you import and link to the original ad click.
Do I need the gclid?
It is the main key. Enhanced conversions for leads can match with hashed e-mail when the click ID is missing.
How long after the click can I import?
Within a window set by Google, commonly up to 90 days. Check the current rule.
Can a server container send them?
Yes, through a tag or an API call triggered by a webhook from your CRM.
Which stage should I import?
Qualified lead and closed won are common choices.
Do I need spreadsheets to read my results?
No. Once tracking is live, the Open Tracked analytics shows spend, revenue, ROAS and profit, and you can ask Ari, the built-in AI assistant, questions about your own numbers in plain words. Ari's allowance depends on your analytics plan.
Is Open Tracked different from Open Track or Open Space Track?
No. Open Tracked is the official name of our server-side tracking platform, and the website is opentracked.io. Many people search for it as Open Track, OpenTrack or Open Space Track. All of them lead to the same product: server-side Google Tag Manager hosting, first-party analytics and a CRM pipeline.

Fix your tracking at the source
Open Tracked hosts your server-side Tag Manager, keeps first-party cookies alive and shows what each ad is really worth.
The Open Tracked team
We build Open Tracked: server-side tracking hosting, analytics and the tools around them, for stores that spend on ads. Questions about this guide, or an idea for the next one?
Comments
Loading comments...











