Guides / Paid ads

Sending CRM results back to Google and Meta (offline conversions explained)

If your ads optimise for form submissions, they learn to find people who fill in forms, not people who buy. Offline conversions fix this: when a lead becomes qualified or a deal is won in your CRM, you send that event back to Google Ads (enhanced conversions for leads, or click-ID import) and Meta (Conversions API for CRM). You need to capture the click ID or customer details at the form, map CRM stages to conversion events, and upload regularly, ideally daily.

By Ahmed Mohamed · Updated · Prices and features checked 23 October 2026

A common pattern for service businesses: the ads report plenty of leads at a good cost, but sales says most of them are junk. Wrong area, no budget, fake numbers. The ads aren’t broken. They’re doing exactly what they were told: find people who submit the form.

The fix is to tell the platforms which leads turned into something real. That’s what offline conversions are: results that happen after the click, in your CRM, sent back to the ad platform.

How it works

Ad click ──► Landing page form ──► CRM (lead created, with click ID / email / phone)
                                        │
                              Sales qualifies, quotes, wins
                                        │
                     Upload "Qualified" and "Won" events (daily)
                                        ▼
                          Google Ads  ·  Meta
                 (match to the original ad click and optimise for it)

The platforms match the uploaded result to the original ad interaction, report it, and (once there’s enough volume) let you optimise bidding for it.

What each platform needs

Google offers two ways, and recommends the first for new setups:

Enhanced conversions for leads (recommended) Offline conversion import with GCLID
Matches on Hashed customer data from your form (email, phone) The Google Click ID (gclid) captured from the ad click
What you store in the CRM The lead’s email and/or phone The gclid from the landing-page URL, in a hidden form field
Upload Google Ads Data Manager, a CRM integration, or the API Same

Two dates worth knowing from Google’s help pages:

  • Since April 2026, enhanced conversions for web and for leads are one combined setting in Google Ads.
  • From 15 June 2026, API uploads of offline conversions and enhanced conversions for leads moved to Google’s Data Manager API. If a developer or tool uploads via the API, check it has migrated.

Uploaded conversions are only counted within the conversion action’s conversion window (30 days by default for clicks, adjustable up to 90). If your sales cycle is longer, set the window for the “Won” action accordingly.

Meta

Meta’s route is the Conversions API, with a separate “CRM integration” for lead events. Meta’s own guidance for its Conversion Leads performance goal:

  • It currently works with Meta Instant Forms (lead ads), not website forms.
  • Store the Meta lead ID in your CRM, or send customer details such as email and phone.
  • Meta suggests at least 200 leads a month, uploading at least daily, with the stage you optimise for happening within 28 days and converting at between 1% and 40% of leads.
  • Plan for a learning period of a few weeks after the data starts flowing.

For website leads, you can still send CRM stages to Meta through the Conversions API as offline events for measurement, matching on hashed email and phone. Offline events need to be sent within 7 days of when they happened, so upload daily.

Step by step

1. Capture the right data at the form

  • Email and phone (phone in +971 format), always.
  • Google click ID: a hidden field filled from the gclid URL parameter, if you use click-ID import.
  • Meta lead ID: comes automatically with Instant Form leads. Make sure your CRM integration stores it.
  • Consent: your privacy notice should say you share data with advertising platforms. See UAE PDPL and marketing consent.

Our form-to-CRM workflow shows how to get website leads into the CRM reliably.

2. Define the stages you’ll send

Pick one or two stages that mean real value, and make sure they’re used consistently in the CRM:

CRM stage Send as Value
Qualified (right area, budget, need) “Qualified lead” Optional: average deal value × close rate from qualified
Won “Sale” / “Purchase” The actual deal value

If salespeople don’t update stages reliably, fix that first. Uploaded data is only as good as the pipeline. See how to set up a CRM pipeline and why nobody uses your CRM.

3. Create the conversion actions

  • Google Ads: create an import conversion action for each stage, with its value and conversion window.
  • Meta: set up the CRM dataset in Events Manager and map your stages to events.

4. Choose how to upload

Route Good for
Native CRM integration (for example HubSpot and Salesforce have Google and Meta integrations, depending on plan) Least work, if your CRM and plan support it
Google Ads Data Manager with a scheduled file or connected source Google side, no code
An automation platform (Zapier, Make, n8n) triggered on stage change CRMs without a native integration; Meta’s guide lists Zapier as a no-code option
Custom API integration High volume or complex rules

Whatever the route: upload at least daily, log failures, and alert someone if uploads stop. See error handling in n8n for the pattern.

5. Switch bidding only when there’s volume

Start by reporting the offline conversions alongside form submissions. Once you have steady volume of qualified leads or sales, test bidding on them. Smart Bidding needs enough conversions to learn, and few small businesses win 30 deals a month from one campaign. Optimising for “qualified lead” is often the practical middle ground.

Frequently asked questions

How long does this take to set up?

With a native integration, a day or two including testing. Meta estimates under a day with Zapier or a partner tool and 3–4 weeks for a developer build, plus 2–4 weeks of learning before full benefit.

We don’t use a CRM. Can we still do this?

You need somewhere that records which lead became a sale. A spreadsheet can work for a manual weekly upload to Google, but it’s fragile. This is often the moment to move leads into a CRM.

What if the numbers still don’t match?

They won’t match exactly. Each platform only counts conversions it can match and attribute. See why Meta, Google and GA4 never agree.

If you’d like your CRM connected to your ad platforms properly, that’s part of our CRM service, together with our traffic sources service.

Free download · Excel template

Offline conversion mapping sheet

Map each CRM stage to a Google Ads conversion action and a Meta event, list the fields to capture at the form, and check the requirements before building the upload.

Download it

No sign-up. Opens in Excel, Google Sheets or Numbers.

Rather have it done?

This is the kind of work our crm service covers. Tell us where you are today and we’ll reply with a plan and a fixed price.

Let’s talk

Sources

  1. Google Ads Help: about offline conversion imports
  2. Google Ads Help: about enhanced conversions
  3. Meta for Developers: Conversions API for CRM integration
  4. Meta for Developers: sending offline events using the Conversions API
  5. Google Ads Help: about conversion windows

Written by

Ahmed Mohamed, Growth marketer, Jinnflow. Ahmed has worked in growth marketing for 6 years. At Jinnflow, Ahmed builds the systems behind client work (websites, stores, CRMs and the integrations that connect them) and writes the technical guides.