Leads Not Showing in Meta Ads Manager: Complete Fix Guide
You're generating leads but Meta Ads Manager shows zero conversions. Here's exactly how to configure the Lead event in GTM and fix your tracking.
The Problem
You run Meta lead gen campaigns. People submit your contact form. You get the leads in your email or CRM. But Meta Ads Manager shows zero conversions. The algorithm can't optimize because it has no idea which ads are actually generating leads.
This is incredibly common. Most stores set up basic Meta Pixel tracking for ecommerce (PageView, ViewContent, AddToCart, Purchase) but never configure the Lead event. Meta has no way of knowing when someone submits a form unless you explicitly tell it.
Why Leads Don't Track Automatically
Unlike ecommerce tracking where Shopify or WooCommerce can automatically push purchase data, lead form submissions require manual setup. You need to:
- Detect when someone submits your form
- Fire a Meta Pixel Lead event to Meta
- Configure the event as a conversion in Meta Ads Manager
If any of these steps are missing, Meta doesn't know the lead happened.
How to Fix Lead Tracking
Step 1: Identify Your Form Submission Event
First, figure out how to detect when someone submits your form. This depends on what form tool you use:
- Gravity Forms, Contact Form 7, Typeform: These tools often push a dataLayer event on submission. Check their GTM integration docs.
- Custom HTML forms: You need to add code that pushes a dataLayer event when the form submits successfully.
- Thank-you page: Simplest method—if your form redirects to a /thank-you page after submission, use that page load as the trigger.
For testing, complete a form submission on your site. Open browser console and check what happens in the dataLayer or if the URL changes.
Step 2: Create a GTM Trigger for Form Submission
In GTM, create a trigger that fires when someone submits your form. Common trigger types:
- Page View trigger: If form redirects to /thank-you, create a Page View trigger where "Page URL contains /thank-you".
- Custom Event trigger: If your form pushes a dataLayer event like "formSubmission", create a Custom Event trigger for that event name.
- Form Submission trigger: GTM has built-in form submission detection. Go to Triggers → New → Form Submission. This fires whenever any form on your site is submitted.
Use GTM Preview Mode to test your trigger. Submit your form and verify the trigger activates in the Preview panel.
Step 3: Create Meta Pixel Lead Event Tag
In GTM, create a new tag:
- Tag Type: Custom HTML
- HTML: Add the following code:
<script>
fbq('track', 'Lead');
</script>- Trigger: Your form submission trigger from Step 2
Save the tag. This tells Meta Pixel to fire a Lead event whenever your trigger activates.
Step 4: Test with Meta Pixel Helper
With GTM Preview Mode active, submit your form again. Watch Meta Pixel Helper. You should see a "Lead" event fire immediately after submission.
If you see the Lead event in Pixel Helper, your tracking is working. If not:
- Check if your GTM trigger fired (use GTM Preview panel)
- Check if your Meta Pixel base code is installed (you need fbq('init') before fbq('track', 'Lead') works)
- Check browser console for JavaScript errors
Step 5: Verify in Meta Events Manager
Go to Meta Events Manager → your pixel → Test Events. Submit another form and watch the Events Manager. You should see the Lead event appear in real-time.
If it shows up, your pixel is sending data to Meta correctly.
Step 6: Mark Lead as Conversion
In Meta Events Manager, find the Lead event in your events list. Click the toggle to mark it as a conversion. Without this, the Lead event fires but Meta Ads won't count it as a campaign conversion.
Step 7: Add Lead as Campaign Objective
In your Meta Ads campaign, edit your conversion event settings. Select "Lead" as the conversion event you want to optimize for. Now Meta will optimize your ads to generate more leads.
Advanced: Adding Lead Value
If you want to assign a value to each lead (e.g., each lead is worth £50 to your business), you can pass a value parameter:
<script>
fbq('track', 'Lead', {
value: 50.00,
currency: 'GBP'
});
</script>This helps Meta optimize for high-value leads if you have different lead types with different values.
Common Mistakes
- Lead event fires on every page: Your trigger is too broad. Make sure it only fires on form submission or thank-you page, not sitewide.
- Lead event fires but not counted: Check if Lead is marked as a conversion in Events Manager. Also verify your campaign is optimizing for the Lead event.
- Multiple lead events per submission: You have duplicate pixel installations or multiple tags firing the Lead event. Clean up duplicates.