Is there a Google offline conversion API? What to use in 2026
Short answer
You tie a sale back with a gclid, hashed email or phone, or both. Click ID uploads must be within 90 days, enhanced conversions for leads within 63 days.
Yes. Google's route for sending offline conversions to Google Ads is now the Data Manager API, and Google has asked new integrations since June 2026 to use it instead of the older offline upload calls in the Google Ads API. Check the current Google documentation for the exact rules that apply to your account.
If you are building or buying something today, that is the one to look at first.
Some background, plainly. For years, people uploaded offline conversions through the Google Ads API, or by importing a file. That still exists in the interface, but Google announced that offline conversion imports and enhanced conversions for leads would move to the Data Manager API, with new use of the old route being blocked from June 2026. Whether your account is affected depends on when it last used the old route, so verify this in Google's own notes.
What is the Data Manager API? It is a single Google API for sending first-party data into Google's advertising products. Conversions are one of its data types, next to audience lists. It was released in late 2025.
So what do you need to send? For a lead that turns into a customer, you have three common ways to tie the sale back to the ad. The first is the click ID, the gclid, or wbraid and gbraid on some devices. The second is enhanced conversions for leads, which uses a hashed email or phone number you collected on the form. The third is a mix of both. Google ignores uploads that come too long after the click, and the window for click IDs is 90 days. Enhanced conversions for leads has its own shorter window, 63 days as I understand it, so check current documentation.
Here is a made-up example. A business called Harbor and Vine gets a lead from a search ad on the first of the month. The visitor leaves a phone number and email. Five weeks later the sale closes in the CRM. If Harbor and Vine saved the gclid when the lead arrived, or kept the hashed email, they can report the sale back to Google Ads with its value, well inside both windows.
What goes wrong? Three things, mostly. The click ID was never saved, because the form landed on a page that dropped it. The conversion action in Google Ads is set to the wrong type. Or the upload is late, past the window, and Google quietly ignores it. Also, Google Ads conversion actions may start as secondary, which means they do not drive bidding until you change that.
Another limit worth stating: Google does not always tell you row by row why an upload was refused, so you need your own record of what you sent and when.
Do you need to code against the API? Not necessarily. Some ad platforms, CRMs and tools handle the Data Manager API for you. What you must decide is what to send, when, and how to match it back to the click.
For reference, DataCops sends offline conversions to Google Ads, along with Meta, TikTok and LinkedIn, and keeps a per-row delivery log. It does not yet read back Google's per-row rejections.
Are you moving an old upload over, or setting up your first offline conversion?
DataCops in short
For this question: DataCops sends to Google Ads with the click ID, hashed email or phone, and tracks the 90-day and 63-day limits for you.
DataCops is a tool that does the ad-conversion job without a container, warehouse or plugin: one script and one DNS record on your own domain, a bot verdict on every visit with a Real people only switch per ad platform, the real sale from your CRM or Shopify sent back to your ads, new campaigns warmed up with the customers you already have, and a log of every send.
How DataCops does it
- First-party collection, no extra tool. One script and one DNS record put collection on your own subdomain; with DNS on Cloudflare, the free Worker reads the click at the edge before the page loads. A signed server-set cookie lasts up to 400 days where enabled.
- Real people only. Every visit gets a bot verdict, with a Real people only switch per ad platform, off by default. Every form email is checked for disposable providers, domains with no mail server and an email risk score.
- Every ad platform. Conversions go server-side to Meta, Google Ads, TikTok and LinkedIn, counted once against the pixel by event ID.
- The sale after the form. HighLevel natively, any CRM by webhook, Shopify through the DataCops Shopify app.
- A log you can read. A delivery log row per conversion, with the reason when it did not go. A TCF 2.2 consent banner and first-party analytics (a GA4 alternative) come from the same script.
Best for: teams who want better ad conversions without building or maintaining the pipe: lead gen, ecommerce, clinics, home services, B2B and agencies.
Ads Warmup: tell the ads who pays
Ads Warmup, DataCops' flagship feature, sends customers you already have to Meta, Google Ads and TikTok before a new campaign spends: upload a CSV (only email is required, up to 20,000 rows), see a 0 to 10 match score per person, pick the event, and send. Rows are dated when you send, and Google Ads credits only people who clicked a Google ad. Preview is free; sending needs a paid plan. Check your own consent basis for the list first. See Ads Warmup.
Ways to do this job
| Option | Best for |
|---|---|
| DataCops | One script, a bot verdict, CRM sales and a delivery log |
| Hosted server GTM (such as Stape) | A team that already owns a GTM container |
| The platform's own pixel | Basic browser tracking on one platform |
| Self-hosted server GTM | Engineering teams who want full control |
When not to use DataCops
- You need custom tag logic or non-ad destinations. DataCops sends to ad platforms and is not a Google Tag Manager container.
- You want a reporting dashboard. DataCops fixes what goes into your ads. It does not replace the reports you already read.
Sources and further reading
More on this: Google Ads offline conversions, and the complete guide to offline conversion tracking.
First thing to check: are you saving the gclid, or a hashed email, at the moment the lead arrives? Without one of them there is nothing to send later.