Meta Lead Ads: How to Set Up Instant Forms and Get Quality Leads
Practice4 minInnovialabs editorial team
In short
Lead quality from Instant Forms depends on form type, qualifying questions and response speed: use a higher intent form, ask 1-3 questions about the task and push leads to your CRM or Telegram in real time.
In short: why lead forms bring junk and how to fix it
Instant Forms open right inside Facebook or Instagram, and contact details are prefilled from the profile. That makes submitting a lead very easy, and just as easy to submit one by accident. Quality depends on three things:
- Form type: more volume or higher intent.
- Questions: how much effort you ask for and what you learn about the person.
- Response speed: a lead handled a day later is often already lost.
How to set up an Instant Form
- In Ads Manager, create a campaign with the Leads objective and choose Instant Forms as the conversion location.
- At the ad level, create a new form.
- Choose the form type (see below).
- Fill in the intro: a headline and a couple of lines about what the person gets after submitting.
- Add questions: contact fields and your custom questions.
- Add a link to your privacy policy; the form cannot be published without it.
- Set up the completion screen: what happens next, when you will get in touch, a button to the website or a call.
Before launching, preview the form on a phone and fill it in yourself.
More volume vs higher intent
| Parameter | More volume | Higher intent |
|---|---|---|
| Steps | Minimal, quick submission | An extra review screen before submitting |
| Lead volume | Higher | Lower |
| Accidental leads | More frequent | Less frequent |
| When to choose | Simple offer, enough capacity to call quickly | Expensive service, B2B, a small sales team |
If sales complains about unreachable people and leads who do not remember applying, a higher intent form is the first thing to try.
Qualifying questions
Custom questions both filter out accidental submissions and help the sales rep prepare for the call.
- Multiple choice: what is needed, timeline, rough budget or scale. Handy for segmenting leads.
- Short answer: "Describe your task in one sentence." It takes effort, so it filters out casual clicks well.
- Conditional questions: the next question depends on the previous answer.
- Appointment request: if your sales process starts with a call.
Keep the balance: 1-3 questions are usually enough. Every extra step lowers volume, so keep only what actually changes how the lead is handled.
Sending leads to a CRM or Telegram in real time
Manual CSV downloads are the main source of loss: leads sit for hours, and access to them in the interface is time-limited. Automation options:
- Built-in CRM integrations in Meta Business Suite, if your CRM is on the list.
- No-code services: a "new lead → CRM → Telegram notification" chain can be built without development.
- A Graph API webhook: the most reliable and flexible option. Meta sends a
leadgenevent with aleadgen_idto your server, the server requests the lead data and routes it where needed.
A simplified incoming event:
{
"object": "page",
"entry": [{
"changes": [{
"field": "leadgen",
"value": { "leadgen_id": "123", "form_id": "456", "page_id": "789" }
}]
}]
}
The server then fetches the lead fields by leadgen_id, creates a deal in the CRM and messages the sales rep via the Telegram Bot API. Add duplicate checks by phone number and error logging so no lead gets lost.
How to fight low-quality and fake leads
- Use a Higher intent form and add at least one short-answer question.
- Say in the ad what happens next: "we will call you within a business day", "we will send a quote". This filters out people who expected something else.
- Do not promise free stuff with no strings attached: giveaways attract freebie hunters.
- Call back fast. An automatic Telegram message to the rep cuts response time dramatically.
- Feed quality back to Meta. Send CRM statuses (qualified, sale) via the Conversions API and optimize the campaign for quality leads rather than any lead.
- Mark junk in the CRM with a separate loss reason so you can see which ads and audiences bring it.