Search "how to connect Meta ads to CRM" and the answers immediately start talking about Events Manager, the Conversions API and Zapier, in the same breath, as though those were three versions of one thing.
They are not. They are answers to two different questions pointing in opposite directions, and picking the wrong one costs you a week.
Which direction do you actually mean?
There are two flows, and they share almost nothing.
| Leads out of Meta | Conversions into Meta | |
|---|---|---|
| What moves | A person who filled in your lead form | The outcome of a lead you already have |
| Why | So somebody can call them today | So Meta can optimise on who actually converts |
| Built with | Lead Ads integration or the leadgen webhook |
Conversions API, offline events |
| Where you configure it | Page settings, Business Suite, or your CRM | Events Manager |
If your problem is "leads are sitting in Ads Manager and my team cannot see them", you want the first row. That is what the rest of this is about.
If your problem is "Meta is optimising for cheap leads that never buy", you want the second, and I have kept a short section for it at the end.
How do I get Meta lead ads into my CRM?
Four routes, and they are genuinely different in cost and speed rather than being interchangeable.
1. A native integration in your CRM. Your CRM lists Meta or Facebook as a lead source, you authorise it, you pick the page and form. Best option when it exists: no third party in the path, no per-lead cost, and the CRM owns the retry logic.
2. Meta's own CRM setup tab. Meta documents this path: go to your Facebook Page, More tools → Meta Business Suite → All tools → Advertise → Instant forms, then the CRM setup tab. It only offers CRMs on Meta's partner list, so it is a two-minute job if yours is there and a dead end if it is not.
3. An automation tool. Zapier, Make, Pabbly. These connect anything to anything, which is exactly why they are the default advice, and they have two costs nobody mentions up front:
- Per-task pricing. Every lead is a task. At a few thousand leads a month this stops being trivial.
- Latency. Polling tiers check on a schedule rather than instantly. A lead that arrives five or fifteen minutes late is a materially colder lead.
4. A direct webhook. You subscribe to the leadgen field, Meta posts to your endpoint the instant a form is submitted, and you call the Graph API to retrieve the lead's answers. Free, instant, and entirely yours. It needs code, and it has four traps that will each cost you a day.
What are the traps in the direct webhook route?
These are the ones that bit us in production, and none of them announce themselves.
- Development mode sends nothing. An app in Development mode delivers no webhooks for a Page you do not own. Everything looks configured and no lead ever arrives.
- Leadgen reads need a Page token, not a user token. A user token authenticates you, and then the retrieval call fails or returns nothing.
leads_retrievalis not where you expect it. The permission lives under a use case rather than in the flat permission list, so people conclude it does not exist.- A
200is a promise you cannot take back. Acknowledge the webhook before you have stored the lead, then crash, and Meta considers it delivered. It will not send that lead again.
Two of these are worked through properly in Meta says your webhook is connected and it still sends nothing, and the wider set of "leads exist but never arrive" causes in Meta lead ads not syncing to your CRM.
Which route should you pick?
| Your situation | Route |
|---|---|
| Your CRM lists Meta as a source | Native integration |
| Your CRM is on Meta's partner list | Business Suite CRM setup tab |
| Neither, and you have no engineer | Automation tool, and accept the latency |
| Volume is real, or speed matters | Direct webhook |
Kredoo takes the fourth route on your behalf: Meta lead forms post straight into it, with no Zapier and no polling, so a lead is in the pipeline and being messaged on WhatsApp within seconds of the form being submitted. That is the entire reason we built it that way rather than shipping a Zapier template.
And the other direction: conversions back into Meta
If your ads are producing cheap leads that never become customers, the missing piece is that Meta does not know which of them converted. It optimises on what you tell it, and by default you tell it "a form was submitted", so it gets very good at finding people who submit forms.
The fix is to send the outcome back: the Conversions API, configured in Events Manager, reporting the events that happen after the lead leaves Meta's hands. Qualified, visited, purchased.
That is a genuinely different project from lead capture, and it only becomes worth doing once your CRM reliably knows those outcomes. Get the leads flowing in first.
The order to do this in
- Get leads arriving, by the fastest route your stack allows. Nothing else matters until a human can see the lead.
- Verify with a real test lead, using Meta's Lead Ads Testing Tool, and check it appears end to end rather than checking that the configuration looks right.
- Instrument the failures. Log every webhook and every retrieval. Silent failure is the normal failure mode here.
- Then measure time to first contact. If it is minutes rather than seconds, the route is the reason.
- Only then send conversions back to Meta, once your outcome data is trustworthy.
At Kredoo we do steps one to four as part of onboarding, because a lead that arrives fifteen minutes late has already been called by somebody else. See how it works.
Questions people ask
How do I connect Meta ads to my CRM?
There are four routes for getting leads out of Meta. Use a native integration if your CRM lists Meta as a lead source. Use Meta's CRM setup tab, found under your Facebook Page then More tools, Meta Business Suite, All tools, Advertise, Instant forms, if your CRM is on Meta's partner list. Use an automation tool such as Zapier or Make if neither applies, accepting per-task cost and polling delay. Or subscribe to the leadgen webhook directly, which is free and instant but requires code.
What is the difference between connecting a CRM to Meta ads and the Conversions API?
They move data in opposite directions. Lead Ads integrations and the leadgen webhook bring leads out of Meta into your CRM so someone can contact them. The Conversions API sends outcomes from your CRM back into Meta, so Meta can optimise for people who actually convert rather than people who merely submit forms. Most people asking how to connect a CRM mean the first.
Can I connect Meta lead ads to my CRM without Zapier?
Yes. If your CRM offers a native Meta integration, or appears on Meta's partner list in the Business Suite CRM setup tab, no third party is needed. You can also subscribe to the leadgen webhook directly, which costs nothing per lead and delivers instantly, though it requires development work.
Why are my Meta leads arriving late in my CRM?
Almost always because the connection polls on a schedule rather than receiving a push. Automation tools on lower tiers check for new leads every few minutes, so a lead can be five to fifteen minutes old before your team sees it. A direct leadgen webhook delivers within seconds of submission.
Where do I find the CRM setup option in Meta?
Meta documents the path as going to your Facebook Page, then More tools, then Meta Business Suite, then All tools, then Advertise, then Instant forms, and selecting the CRM setup tab. Only CRMs on Meta's partner list appear there.
Why do some Meta leads reach my CRM and others do not?
The most common cause is field formatting rather than the connection itself, and phone numbers are the usual culprit. Meta returns numbers in a format your CRM may reject, and many systems fail the entire record when one field is invalid instead of just skipping that field. Other causes include an expired token, a changed form field, and a webhook that returned a non-200 response, after which Meta stops retrying.
Stop losing leads to the follow-up gap
Kredoo captures leads from Meta and Google Ads, then follows up on WhatsApp automatically. Live in 5 minutes.
Get Started