Start free
All posts
Guides · October 29, 2026 · 7 min read

How to run Meta video ads for lead generation (and train the pixel on buyers)

Most Meta video ads are optimized for the wrong event, so they find thousands of viewers and almost no buyers. How to send the ad to a video that asks who is watching, score the answers, feed them back to the campaign as the event it should optimize for, build audiences from real leads, and read cost per hot lead instead of cost per lead.

Most Meta video ads for lead generation are optimized for the wrong event. The campaign is set to find people who will watch, or click, or land on a page, and Meta does exactly that: it finds thousands of them, and almost none of them buy. The ad is not the problem. The signal the ad learns from is the problem, and the fix is to let the video itself produce a better one.

This guide is how to run Meta video ads that get cheaper per real lead every week, by sending the video somewhere that asks the viewer who they are, scoring what they answer, and feeding that back to the campaign as the event it should optimize for. Everything in it can be done from Ads Manager and the StreamAgent call sheet; the parts StreamAgent automates for some workspaces are called out at the end.

Why do video ads get cheap views and expensive leads?

Because Meta optimizes toward whatever you measure, and a view tells it almost nothing about a person. Optimize for ThruPlay and it finds people who leave videos running. Optimize for landing-page views and it finds people who click on anything. Optimize for a lead that only exists after someone chose a branch, cleared a gate, and scored hot, and it has to go find people like that. The algorithm is only ever as smart as the event you hand it.

Meta will find you more of whatever you count. Count buyers.
Step 1

Send the ad to a video that asks, not a page that plays

The destination decides what signal you get back. A plain video page produces a view. A video that pauses at the right second to ask “what are you trying to do?” produces an answer, and an answer is the first fact you know about that person. Build the destination as a route with a choice point, a capture gate at peak interest, and a booking step on the qualified branch. If you are starting from a sales letter, turning a VSL into a route is the shortest path.

Step 2

Connect Meta once, through the business sign-in

On the Smart Pixels page, connect Meta and pick the business portfolio, the ad account, and the pixel. The connection belongs to the business, not to the person who clicked, and it does not expire. From here every meaningful action inside your videos, the choice, the gate, the score, the booking, streams to the pixel as a conversion event, from the browser and from the server, so the campaign sees the whole chain and not just the click.

Step 3

Optimize the campaign for the lead, not the view

With the pixel receiving real events, set the ad set to optimize for the Lead event. Now Meta is looking for people who will do what your last leads did inside the video. This is the single change that moves cost per real lead, and it is impossible without step one, because a video that never asks anything never fires a lead.

Step 4

Point the ad at the route, and tag it so leads match back

In Ads Manager, build one campaign with the leads objective, one ad set optimized for the Lead event on your pixel, and one ad with the video as the creative and the route’s public link as the destination. Then add tracking tags to the ad’s URL parameters, with the campaign, ad set, and ad IDs filled in by Meta’s own placeholders, so that every lead who arrives carries the ad that brought them. Those tags land on the lead in StreamAgent beside the lead’s choices, score, and booking, which is what makes the rest of this loop possible: you can now ask not “how many leads did this ad bring” but “how many hot leads.”

Step 5

Build audiences from the leads you already have

Your best seed audience is not people who watched. It is people who booked. Filter the call sheet to booked calls and export the list, upload it to Ads Manager as a Custom Audience, and build a closest-match Lookalike from it. Do the same with hot leads as a second seed, and with every lead as a third, so you have a retargeting pool and two Lookalikes of increasing size. A Lookalike needs a seed of about a hundred matched people before Meta will build it, so start with the widest list that is still made of real buyers and tighten the seed as the booked list grows. When you set up the next ad set, target those audiences instead of Broad: you are now reaching people who resemble the people who booked, not people who resemble the people who watched.

Step 6

Read cost per hot lead, not cost per lead

Cost per lead rewards the ad that attracts form-fillers. Cost per hot lead rewards the ad that attracts buyers. Because every lead carries its ad tag and its score, the second number is a filter away: take one ad’s spend from Ads Manager, count the leads tagged with that ad who scored hot or booked, and divide. Do it per creative, and expect the ranking to disagree with cost per lead more often than you would like. Judge every creative on the second number.

Step 7

Move budget on evidence, once a week

Pick a morning and compare the ads on cost per hot lead. Two rules keep this honest. Nothing is judged until it has had a few days live and enough leads to compare; a two-day ad with three leads has no verdict yet. And the budget is never raised: the only move is to pause the weaker ad and hand its daily budget to the stronger one, so your total spend stays exactly where you set it. If the evidence is not there, make no change, which is the correct answer for a new account.

What this looks like after a month

Week one, the campaign is learning and the numbers are noisy. Week two, the booked list is long enough to seed the first Lookalike. Week three, cost per hot lead starts to separate the creatives. Week four, you move budget from the ad that wins views to the ad that wins buyers. None of this required a new video. It required a video that asked a question, and a campaign that was allowed to hear the answer. The longer argument for why the answers matter more than the views is in your videos are an ad training dataset.

Stop teaching Meta to find viewers. Teach it what a buyer looks like.

One platform, seven layers

This article covered one slice. The machine ships whole: record it, get it found, arm it, test it, rank the leads, train the ads, and ask your AI how it is going.

01
Record
StreamAgent Studio: a teleprompter, camera, and screen capture, all in the browser.
02
Found
Every video publishes a citable page, so search engines and AI assistants can find it.
03
Interact
Choices, quizzes, and capture gates working inside the player.
04
Test
Smart Rotations run versions head to head and promote the winner.
05
Know
Lead intelligence scores every viewer into a ranked call sheet.
06
Advertise
CAPI streams real buying signals to Meta, Google, TikTok, and LinkedIn.
07
Ask AI
Your AI assistant plugs in and answers: which video prints leads?

Common questions

Why do my Meta video ads get views but no leads?
Because the campaign is optimized for an event that says little about the person, such as a view or a click, so Meta finds more people who do that. Optimize for a lead that only exists after a viewer chose a branch, cleared a gate, and scored hot, and the algorithm has to find people like that instead.
What should a Meta ad set be optimized for in lead generation?
The Lead event, fired by a server-side conversion when someone becomes a real lead inside the video, rather than ThruPlay or landing-page views. The event has to exist first, which means the ad has to point at a video that asks the viewer something.
How do I build Meta Custom Audiences and Lookalikes from video leads?
Filter the call sheet to booked calls, export the list, upload it to Ads Manager as a Custom Audience, and build a closest-match Lookalike from it; repeat with hot leads and with all leads for a retargeting pool. A seed needs about a hundred matched people before Meta builds a Lookalike. Workspaces with audience sync enabled get the three audiences kept current and the Lookalikes built automatically.
Can I launch a Meta ad directly from a video?
In workspaces with Promote on Meta enabled, yes: from a video’s Share button, the Promote tab launches a Meta ad with the Page, the audience, the daily budget, and the words on the ad, with the tracking tags added for you. Everywhere else, build the campaign in Ads Manager with the route’s public link as the destination and add the tracking tags yourself; the Lead event and the loop in this guide work the same way.