How to Send CRM Outcomes to Meta as Offline Events

Meta optimises toward whatever you show it. Here is how to show it qualified leads and closed deals instead of form fills.

This post shows you how to send CRM outcomes to Meta as offline events, so campaigns optimise toward qualified leads and closed deals instead of whoever fills in forms most eagerly.

Meta optimises toward whatever you show it. Show it form fills and it will find you people who love filling in forms.

When this fits

  • You generate leads on Meta Ads and close them elsewhere.

  • Lead quality varies enough that volume is a misleading metric.

  • You have a CRM, a spreadsheet, or anything that records outcomes.

How Meta handles offline data now

What used to be a separate Offline Conversions API has largely been folded into the Conversions API.

You send events the same way you would send server events, with an action source indicating they happened offline, plus the event time and your customer matching data.

Older guides describe a separate offline event set system. If you find yourself following one, check the date on it.

What you need to send

Matching data, which decides everything

  • fbclid and the _fbp cookie, captured at form submission: how to capture fbclid

  • Hashed email. SHA256, lowercased and trimmed first.

  • Hashed phone. E.164 format before hashing.

  • Name, city, postcode, country, hashed, if you have them.

Email alone gets you a mediocre match rate. Email plus click ID plus phone gets you a good one. The difference is usually the whole value of the project.

Event details

An event name, the real timestamp of the outcome, and a value with currency if there is revenue.

Use distinct names per stage. Do not send everything as Lead or you cannot tell the stages apart afterwards.

Let’s implement it

  1. Capture fbclid and _fbp at form submission and store them on the record.

  2. Decide which one or two CRM stages represent real progress.

  3. On stage change, collect the identifiers, the value and the timestamp.

  4. Hash email and phone at send time, not at storage time, so you keep raw values for your own use.

  5. Post to the Conversions API with action_source set to an offline value.

  6. Verify in Meta Events Manager.

Routes for step five: a Make or Zapier scenario, a scheduled job, or server side GTM if you are already running a container.

The timing constraint that catches people

Meta accepts offline events with a timestamp in the past, but only attributes them within its window, currently around 62 days.

So a ninety day sales cycle means your closed deals arrive too late to influence anything. Check your actual cycle length before you build, and if it is long, optimise toward an earlier stage that lands inside the window.

Deduplication

If the same conversion could also be sent from the browser, include an event ID on both so Meta can deduplicate.

For genuinely offline events there is usually nothing to deduplicate against, and including an ID anyway is a good habit that costs nothing.

Before you finish

  • Send a small test batch and check the match rate in Meta Events Manager. Above 60 percent with email plus click ID is reasonable.

  • Confirm events show the correct action source and timestamp.

  • Confirm values are landing rather than showing as zero. Currency mismatches silently zero things.

  • Compare Meta reported qualified leads against your CRM count after a few weeks.

  • Give campaigns two weeks to relearn before judging performance.

FAQ

Will my reported conversions go down?

Yes, and that is the point. Qualified leads are rarer than form fills. Cost per conversion rises and lead quality usually rises with it.

Do I still need the pixel?

Yes. The pixel and Conversions API handle on site events. This is about what happens afterwards. Different jobs.

What if hashing is wrong?

You get a low match rate and no error. Test by hashing a known email separately and comparing the strings. Whitespace and capitalisation are the usual culprits.

No CRM, just a sheet?

The same principle applies for Meta. I wrote a full walkthrough of that for Stape using nothing but a spreadsheet: Google Ads offline conversion tracking without a CRM. Click to read it here.

Need this built properly?

Meta will optimise toward whatever you feed it, so feed it revenue. I set up and repair tracking for ecommerce stores and lead generation businesses, so the numbers in your ad accounts match the money in your bank account.

Have a look at what I do, or book a call and we can go through your setup together.

Need accurate tracking?

Its Free

500+ Happy Clients ⭐️

Keep Reading

See exactly where you’re wasting ad spend and how better tracking can double your sales.

See exactly where you’re wasting ad spend and how better tracking can double your sales.

Tracking in 3 Hours

Tracking in 3 Hours

I Manage Everything

I Manage Everything

24/7 Expert Support

24/7 Expert Support

TESTIMONIALS

Trusted by 500+ satisfied clients

Discover how we’ve driven growth and innovation.

500+ Tracking

500+ Tracking

Adélaïde De Vos

3,922 followers

I had the pleasure to work with Abdul and I can say that he exceeded my expectations. He was professional, patient, and clear in his explanations and committed to client satisfaction. If you're looking for someone who is not only highly skilled but also reliable and committed to client satisfaction, I highly recommend Kayium!

Dean Watson

1,030 followers

Kayium setup our tracking for Google Ads and Meta Ads, which helped us get 20%+ more conversions on the same ad spend. He didn’t just handle the technical setup,he also took the time to explain why it works and how it improves results. If you’re looking for someone skilled, reliable, and committed to delivering real results, I highly recommend him!

David Friend

CEO: Profitable Sites

Kayium set up accurate tracking that helped us scale ads fast and boost conversions by over 25%. He gave us clear insight into which ads drive revenue.

Lalita Sundari

7,924 followers

I've worked with Kayium; his strategic mindset and expertise in GTM, GA4, Pixel & Server Side Tracking, are invaluable! I highly recommend Kayium!