Guide
Google's Data Manager API: what changed for offline conversions
Google moved offline conversion uploads to a new API on June 15, 2026. A lot of CRM-to-Google setups stopped working and nobody noticed.
By Mike Usry · Updated
The short version
On June 15, 2026, Google stopped accepting two kinds of uploads through the Google Ads API:
- Offline conversion imports (the “this click became a sale” upload, keyed on the gclid)
- Enhanced conversions for leads (the same idea, matched on hashed email or phone instead of the click ID)
Both now go through Google’s Data Manager API. Developer tokens that weren’t making these requests in the first half of 2026 weren’t allowlisted for legacy access. Treat any legacy access you do have as temporary.
That matters because offline conversions are how Google learns which clicks turned into revenue, not just form fills. When that feed stops, Google’s bidding goes back to guessing.
Why most businesses didn’t notice
Nothing in your ads account turns red. Campaigns keep spending. The only symptom is quiet: your offline conversion action stops receiving new imports, and your Smart Bidding strategy slowly re-learns on whatever signal is left, usually the website form fill.
Common setups that broke:
- A custom script or cloud function that pushed closed deals from a CRM
- Middleware (a Zapier-style tool or an agency’s connector) that hadn’t migrated
- An old “we set this up once in 2023” integration nobody has looked at since
How to check yours in five minutes
- In Google Ads, go to Goals → Conversions and open your offline or imported conversion action.
- Look at the most recent conversion date. If it stops around mid-June 2026, your upload broke.
- Check the uploads history for errors.
- Look at the bid strategy on your main campaigns. If it’s optimizing to that offline action and the action went quiet, the campaign has been learning on stale data since June.
The fix
There are three paths, depending on how your data moves today.
Native connectors. Google Ads has a Data manager area with connectors for common tools (HubSpot, Salesforce, Google Sheets, BigQuery and others). If your data lives in one of those and your needs are simple, this can be enough.
Rewrite the custom upload. If you have a script or pipeline, point it at the Data Manager API. The concepts are the same: a conversion, a timestamp, a value, and an identifier (click ID or hashed email and phone). The request format and authentication are different.
Build it properly this time. If the old upload only sent “lead” with no value, this is the moment to send what Google actually needs: booked, sold, and paid events with real revenue attached. That’s the difference between Google finding more leads and Google finding more customers. See offline conversion tracking.
What a good upload looks like
- Daily, automated. Not a monthly CSV.
- Keyed two ways. The gclid (or gbraid/wbraid on iOS) when you have it, plus hashed email and phone as a fallback. See click IDs explained.
- Revenue attached. The invoice or order total, not a flat $1.
- Inside the window. Within 90 days of the click for gclid uploads, 63 days for enhanced conversions for leads.
- Corrections included. Refunds and cancellations sent back as adjustments, so Google doesn’t learn from sales that didn’t stick.
Where point.dog fits
We build the bridge between the system your customers actually live in (CRM, store, field service software, practice management) and Google’s Data Manager API, plus the same data to Meta and Microsoft. If your offline conversions went quiet in June, that’s usually a small, well-defined project, not a rebuild.
Questions we get
- Did my offline conversions stop working on June 15, 2026?
- If your CRM or a custom script uploaded offline conversions or enhanced conversions for leads through the Google Ads API, and it was not allowlisted for legacy access, yes. Check the offline conversion action in Google Ads for recent imports. No new conversions since mid-June is the tell.
- Do I need a developer to switch to the Data Manager API?
- If you upload with a spreadsheet or a native connector inside Google Ads, Google handles it. If a script, a middleware tool, or a custom integration does the upload, someone has to rewrite that part against the new API.
- How old can a click be for an offline conversion?
- For uploads keyed on a gclid, the conversion must be uploaded within 90 days of the click. Enhanced conversions for leads, which match on hashed email or phone, have a 63-day limit.
- Does this affect Customer Match?
- The June 15 cutoff named offline conversion import and enhanced conversions for leads. Data Manager also handles audience uploads, so if you're building or rebuilding Customer Match syncs, build them there.
Keep going
HubSpot to Google Ads and Meta, with real deal revenue.
HubSpot knows which leads turned into revenue. We make sure Google, Meta, and Microsoft know it too, and push customer value back into HubSpot for sales.
See the integration → Integration · CRMSalesforce to Google Ads and Meta: bid on closed-won, not form fills.
Salesforce knows which leads your team closed and for how much. We send that back to your ad platforms so they find more of them.
See the integration → GuideOffline conversion tracking: make your ads bid on revenue
Your ads optimize for whatever you call a conversion. If that's a form fill, you'll get more form fills. Offline conversions teach them to find customers who pay.
Read the guide → GuideClick IDs explained: gclid, gbraid, wbraid, fbclid, msclkid
That random string on the end of your ad URLs is the key to sending sales back to the ad platform. Most businesses throw it away.
Read the guide → GuideCustomer Match and Meta custom audiences from your CRM
Your customer list is the best targeting data you own. Synced daily, it stops you paying to reach people who already buy and helps the platforms find more like your best ones.
Read the guide →Want this wired up for your business?
Tell us what system your customers live in and where you advertise. We'll tell you what's possible.