Start Your Agency Starting an agency? Get 90 days free on Business, plus training to land your first client New agency? 90 days free on Business · 90 days
Meta Conversion Leads: Requirements, Setup and Whether It's Worth It
|
10 min read
|

Meta Conversion Leads: Requirements, Setup and Whether It's Worth It

Every lead form campaign hits the same wall eventually. Cost per lead looks great, the sales team says the leads are rubbish, and both are right. Meta is doing exactly what you asked: finding people who fill in forms. It has no idea which of them ever answered the phone.

Conversion leads is Meta's fix for that. Instead of optimising for form submissions, it optimises for people who go on to reach a stage in your sales process, such as qualified or booked. To do that, Meta needs your CRM to tell it what happened to each lead.

This guide explains how it works, the exact requirements Meta publishes, what the data you send must look like, and whether it's worth the effort for your account.

The short answer

Question Answer
What is it? A performance goal for lead campaigns using instant forms: "Maximise number of conversion leads". Meta optimises for leads likely to reach a sales stage you choose, using stage updates your CRM sends back.
How is it different from the normal Leads goal? "Maximise number of leads" counts every form fill equally. Conversion leads learns from which leads actually progressed.
What does Meta require? At least 200 leads a month from instant forms, CRM data sent at least once a day, and an optimisation stage that 1% to 40% of leads reach within 28 days.
How does the CRM tell Meta? Through the Conversions API for CRM, matching each update to the original lead with Meta's lead ID.
Does it work with website forms? The classic conversion leads setup is for instant forms.
Is it worth it? When you have the volume and keep the CRM updated, Meta reports meaningful gains. Many accounts never reach the requirements, and setups often fail on CRM hygiene, not on Meta.

How conversion leads works

  1. Someone fills in your instant form. Meta gives the lead an ID, a number of 15 to 17 digits.
  2. The lead arrives in your CRM with that lead ID saved on it.
  3. Your team works the lead and moves it through stages: contacted, qualified, booked, won.
  4. Each stage change is sent back to Meta through the Conversions API for CRM, with the lead ID.
  5. Meta connects each update to the ad, ad set and audience that produced the lead.
  6. You tell Meta which stage to optimise for. It then shows your ads to more people like the ones who reached that stage, not just people like everyone who filled in a form.

The lead ID is the thread through the whole thing. If your CRM drops it, nothing downstream can be matched.

This is a separate integration from the normal Conversions API you may already use for your website. Website events like Lead or Purchase don't count. Meta needs CRM stage events, sent in a specific format.

Meta's requirements

Meta's documentation lists these eligibility requirements:

Requirement Value
Lead volume At least 200 leads per month from instant forms
How often you send CRM data At least once per day
Conversion rate of the stage you optimise for Between 1% and 40% of leads
Time for that stage to happen Within 28 days of the lead being created
How leads are identified The Meta lead ID (15 to 17 digits) stored in the CRM. Hashed email or phone can be used if you don't have it

The 1% to 40% band is the decision that matters most. If you pick a stage that's too rare, such as "closed won" when you close 0.5% of leads, there isn't enough signal. If you pick one that's too common, such as "contacted" when you contact everyone, it doesn't tell Meta anything about quality.

For most service businesses the right stage is somewhere in the middle: qualified, appointment booked or appointment attended.

What the data looks like

Meta documents the event format for CRM stage updates. A single update looks like this:

{
  "event_name": "Qualified",
  "event_time": 1760781600,
  "action_source": "system_generated",
  "user_data": {
    "lead_id": 1234567890123456
  },
  "custom_data": {
    "event_source": "crm",
    "lead_event_source": "Your CRM name"
  }
}

The rules:

  • event_name is the name of the stage. It's free text: use your own stage names, but keep them fixed. If reps can type any status they like, the mapping breaks.
  • event_time is when the lead reached that stage, as a Unix timestamp. It must be within the last 7 days. If one event in a batch is older than that, Meta rejects the whole batch.
  • action_source must be exactly system_generated. Not website.
  • custom_data.event_source must be crm.
  • custom_data.lead_event_source names the CRM the data comes from.
  • user_data.lead_id is the Meta lead ID. If you don't have it, send the hashed email (em) or phone (ph) instead, normalised to Meta's rules.
  • Batches can hold up to 1,000 events. You can backfill data from up to 7 days in the past.
  • Platforms sending on behalf of many advertisers also add a partner_agent value. Advertisers sending their own data don't need it.

Don't change old timestamps to "now" to get past the 7-day rule. Meta will credit the stage to the wrong time, which hurts more than it helps.

How to set it up

1. Make sure the CRM keeps the lead ID

Check a few recent lead ad leads in your CRM. If the Meta lead ID isn't saved on them, fix that first. Nothing else works without it. See how to connect Facebook lead ads to your CRM.

2. Clean up your pipeline stages

Use a short, fixed list of stages that reflect real progress, for example:

  • Lead
  • Contacted
  • Qualified
  • Booked
  • Won

Send the stages that mean something. Don't send every small status change.

3. Connect the CRM in Events Manager

In Events Manager, choose to connect a new data source and pick CRM. You can either use a partner integration (several CRMs and lead tools are Meta partners) or set up the Conversions API yourself with a dataset ID and an access token. Many advertisers create a separate dataset for CRM events so they don't mix with website events.

4. Start sending stage updates daily

Send each stage change with the lead ID, in the format above, at least once a day. Most integrations send them as they happen.

5. Map the funnel

Once Meta has received events for your stages, Events Manager lets you set the order of your funnel stages and see how many leads reach each one.

6. Change the performance goal

In Ads Manager, on a Leads campaign with an instant form, open the ad set and change the performance goal from Maximise number of leads to Maximise number of conversion leads. Choose the stage to optimise for.

7. Leave it alone while it learns

Give it two to four weeks without big changes before you judge it. Your cost per lead may go up at first. Judge it on cost per qualified lead or cost per booking, not on cost per lead.

What results to expect

Meta reports, from its own A/B tests, that advertisers using the Conversions API for CRM with the conversion leads goal saw around 19% lower cost per quality lead and a higher rate of leads becoming quality leads. Those are Meta's figures from its own tests, not an independent audit.

Practitioners are more cautious. Jon Loomer, one of the best known Meta ads educators, has written that successful setups are rare in practice, mostly because advertisers either don't have the volume or don't keep the CRM updated.

Both can be true. The feature works when the data is good. Most accounts just never give it good data.

When it's worth it, and when it isn't

It's worth trying if:

  • You get comfortably more than 200 instant form leads a month.
  • Your team updates lead stages in the CRM every day, as part of how they work.
  • You have a stage that 1% to 40% of leads reach within four weeks.
  • Lead quality, not lead volume, is your real problem.

It's probably not worth it yet if:

  • You're well under 200 leads a month. Get the basics working first.
  • Stages are updated when someone remembers. Fix the process before the integration.
  • Your sales cycle is long and nothing meaningful happens within 28 days.
  • Most of your leads come from website forms, not instant forms.

Cheaper things to try first: a Higher intent form, a qualifying multiple-choice question, faster follow-up, and lead scoring so the team calls the best leads first.

Common mistakes

  1. No lead ID in the CRM. The most common reason it fails.
  2. Optimising for a stage that's too deep. "Closed won" on a 1% close rate is rarely enough signal.
  3. Free-text stages. Every spelling variation is a different event to Meta.
  4. Updates sent weekly. Meta asks for at least daily.
  5. Old events in a batch. One event older than 7 days and the whole batch is rejected.
  6. Confusing it with website CAPI. Having the Conversions API on your site doesn't mean conversion leads is set up.
  7. Judging it on cost per lead in week one. It's built to cost more per lead and less per customer.

Conversion leads and Inflowave

Inflowave receives Meta lead form submissions in real time and stores the Meta lead ID with each one, along with the campaign, ad set, ad and form. That's the piece conversion leads depends on and most setups get wrong.

Pipeline stages in Inflowave are a fixed list per pipeline, so stage names stay consistent, and moving a lead between stages can trigger a workflow.

Inflowave doesn't yet send pipeline stage updates back to Meta in the conversion leads format described above. Its Conversions API events (form submissions, bookings, payments, calls, and the Send CAPI Event workflow step) are standard events, which is what website optimisation and Event Match Quality are about, but they aren't CRM stage events. If you want to run conversion leads today, connect a Meta partner integration for CRM data or send the events from your own server using the format above.

Related guides: How to connect Facebook lead ads to your CRM, Facebook lead ads not syncing to your CRM, Facebook Conversions API setup and Event Match Quality.

Questions people ask

What are conversion leads in Meta ads?

Conversion leads is a performance goal for lead campaigns that use instant forms. Instead of maximising form submissions, Meta optimises for people likely to reach a sales stage you choose, using stage updates your CRM sends back through the Conversions API.

What is the difference between leads and conversion leads?

"Maximise number of leads" treats every form submission the same. "Maximise number of conversion leads" learns which leads went on to become qualified, booked or customers, and finds more people like them.

How many leads do I need for conversion leads?

Meta's requirement is at least 200 leads per month from instant forms.

How do I send converted leads back to Meta?

Send each lead's stage changes to Meta through the Conversions API for CRM, with the Meta lead ID, action_source set to system_generated and event_source set to crm. You can use a Meta partner integration or build it yourself.

How often do I need to send CRM data to Meta?

At least once per day.

Which stage should I optimise for?

One that 1% to 40% of your leads reach within 28 days. For most service businesses that's qualified, appointment booked or appointment attended, not closed won.

Can I use conversion leads with website forms?

The classic conversion leads goal is for instant forms. For website forms, send your website conversion events with the standard Conversions API and optimise for those.

Why did my cost per lead go up after switching to conversion leads?

That's expected. Meta is now looking for people likely to become customers, who are rarer and more expensive to reach than people who just fill in forms. Judge it on cost per qualified lead or cost per sale.

Is Meta conversion leads worth it?

It can be if you have the volume and update your CRM daily. Meta reports around 19% lower cost per quality lead in its own tests. If you're below 200 leads a month or stages aren't updated reliably, fix those first.

What is the Meta lead ID?

A 15 to 17 digit ID Meta gives every lead from an instant form. It's how Meta matches your CRM's stage updates back to the original ad, so your CRM needs to save it with each lead.

What happens if I send events older than 7 days?

Meta rejects the entire batch the old event was in. Send updates daily and drop anything older than 7 days.

Matt Kielbasa

MATT KIELBASA

Instagram automation experts and Official Graph API Accesss

2026 OPERATOR REPORT

The Agency Profit Playbook Is In

How do 80+ agency operators rate their own pricing, retention, and margin? The Agency Profit Playbook has the benchmarks.

You can unsubscribe in one click. Privacy Policy

The Agency Profit Playbook 2026 cover