Seatext library / BotRefund evidence
How to Tell Real Leads from Fake Leads in Meta Ads: A Practical Decision Framework
Real Meta leads show relevant answers, verifiable contact details, and follow-through engagement. Fake leaves leave repeatable technical patterns — instant form fills, identical field structures, disconnected contact info, and zero CRM progression. Start by...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
Real leads from Meta ads have relevant answers, verifiable contact details, and some level of follow-through or engagement. Fake leads — whether from bots, click farms, or accidental clicks — leave repeatable technical and behavioral patterns: unusually fast form completion, identical field structures, sudden placement-level spikes, or conversion events with no meaningful page engagement. The key is evidence, not assumptions. A weak campaign can attract real people who aren't ready to buy; treating every unresponsive contact as fraud can make you exclude a valuable audience.
A hypothetical scenario: two leads, two outcomes
Imagine two form submissions from the same campaign. Lead A — Sarah — lands on your page, scrolls for 45 seconds, reads the headline, corrects a typo in her email, and submits a business domain address. Her phone rings on the first attempt. Lead B — Mike — arrives, submits in 3 seconds with zero scroll, uses a disposable email domain, and the phone number returns a disconnected tone. Both appear in Ads Manager as leads. Only Sarah is real. The audit criteria — contactability, timing, session behavior — separate them instantly. This scenario mirrors what advertisers see daily: real humans leave behavioral traces; automation leaves patterns.
Start with a structured audit across five signal categories
Before you change targeting, pause campaigns, or file a refund request, compare three data sources: Meta Ads Manager, your website analytics, and your CRM outcomes. Look for consistent patterns across these five areas:
- Contactability: Disconnected numbers, invalid email domains, repeated addresses, or an unusual concentration of one country code.
- Timing: Several leads arriving in short bursts, forms submitted immediately after landing, or conversions concentrated at unusual hours.
- Session behavior: No scrolling, no field corrections, uniform click paths, and no meaningful time on the offer page.
- Campaign patterns: A sharp lead-quality difference by placement, creative, audience expansion, device, or landing page.
- CRM outcome: A high reported lead count paired with no calls connected, demos booked, qualified opportunities, or repeat engagement.
If multiple categories point the same way, you have evidence. If only one signal looks off, keep watching.
Preserve attribution before you change anything
The first step in any investigation is to keep campaign, ad set, creative, placement, and click identifiers intact. Turning off a campaign or rewriting UTM parameters destroys the trail you need to isolate the problem. Export your lead data with all attribution fields before you make adjustments. This lets you trace bad leads back to a specific placement, audience expansion setting, or creative variant.
Compare platform data, website sessions, and CRM results
Meta reports a lead when the form submits. Your website analytics show what happened before and after that submit. Your CRM shows what happened after your team reached out. Align them by timestamp and click ID. A real lead typically has a session with scrolling, time on page, and maybe a return visit. A bot lead often shows a session under five seconds, zero scroll events, and a direct path from ad click to form submit with no intermediate pages.
Use client-side behavioral signals that server logs miss
Server-side logs capture IP, user agent, and request headers. They miss what happens in the browser: mouse movement, scroll depth, keystroke timing, and interaction with hidden page elements. Bots that rotate residential proxies and mimic human headers still fail at natural mouse tremor, variable scroll speed, and the micro-pauses humans make while reading. Client-side detection catches these gaps — superhuman input speed (<1ms), grid-aligned pointer paths, absence of mouse tremor, and interactions with honeypot fields that real users never see.
Know the common entry points for invalid traffic on Meta
Meta's Audience Network opts you into thousands of third-party apps and sites by default. Many publishers there run automated clicks to inflate revenue. Profile scrapers and directory bots crawl Facebook and Instagram, following outbound links on ads and posts. Competitor click networks target high-CPC keywords. Low-intent users from broad audience expansion may click accidentally. Each source leaves a different fingerprint: Audience Network traffic often shows high CTR and instant bounce; scraper traffic may cluster at odd hours; competitor clicks may concentrate on specific campaigns.
Score leads with a simple weighted checklist
Assign points for each positive signal: verified email domain (+2), phone connects on first attempt (+2), session >30 seconds with scroll (+1), return visit within 24 hours (+2), CRM stage progression (+3). Deduct for: disposable email domain (-2), disconnected phone (-2), form submit <5 seconds after landing (-3), identical field values across multiple leads (-3), zero CRM activity after 5 business days (-2). A score above 5 is likely real; below 0 is likely fake; between 0-5 needs manual review. Adjust weights for your sales cycle.
When to request a refund versus when to optimize targeting
Request a refund when you have forensic evidence: client-side behavioral logs showing non-human patterns, click IDs tied to invalid sessions, and a clear placement or network source. Meta's automated systems catch some invalid activity, but they miss advanced proxies and residential botnets. Optimize targeting when the signals point to low-intent humans — broad audience expansion, weak creative, or mismatched offer. Exclude Audience Network, tighten location targeting, add a qualifying question to the form, or switch to a conversion objective that requires a downstream event.
Key facts at a glance
| Signal Category | What to Check | Fake Lead Indicator | Real Lead Indicator |
|---|---|---|---|
| Contactability | Email domain, phone validity, address uniqueness | Disposable domains, disconnected numbers, repeated addresses | Business domains, connected calls, unique addresses |
| Timing | Lead velocity, form submit speed, hour distribution | Burst arrivals, instant submits, odd-hour clusters | Steady flow, realistic fill time, business hours |
| Session Behavior | Scroll depth, time on page, mouse movement, corrections | Zero scroll, <5 sec session, linear pointer, no corrections | Natural scroll, 30+ sec, tremor/jitter, field edits |
| Campaign Patterns | Quality by placement, creative, audience, device | Sharp drop in specific placement or expansion setting | Consistent quality across variants |
| CRM Outcome | Calls connected, demos booked, stage progression | Zero contact, no progression after 5+ days | Contact made, qualified, moves to opportunity |
Limitations of this approach
This framework works for lead-gen campaigns using Instant Forms or landing-page forms. It does not apply to e-commerce purchase events, app installs, or offline conversion imports. Sophisticated fraud rings can mimic human behavior well enough to pass basic checks — they use real browsers, residential IPs, and recorded human sessions. Client-side behavioral detection raises the bar but isn't foolproof. Also, a real lead may score low if they're on mobile with poor connectivity, using autofill, or genuinely uninterested after submitting. Always combine automated scoring with human review for borderline cases.
Terminology
- Invalid traffic: Clicks or form submissions not from genuine user interest — includes bots, click farms, accidental clicks, and competitor fraud.
- Pixel poisoning: When bot conversions train Meta's algorithm to optimize for more bot traffic.
- Click ID: Unique identifier (fbclid, gclid) appended to landing-page URLs that ties a session to a specific ad click.
- Client-side detection: JavaScript that records browser behavior (mouse, scroll, keystrokes) to distinguish humans from automation.
- Honeypot field: Hidden form field that real users never see; bots often fill it, revealing themselves.
Frequently asked questions
How fast is too fast for a form submission?
Under 5 seconds from page load to submit is a strong fake signal. Humans need time to read, decide, and type. Autofill can speed this up, but combined with zero scroll and no mouse movement, it's likely automated.
Should I block Audience Network entirely?
If your audit shows Audience Network leads consistently score fake, exclude it. But test first — some B2C offers perform well there. Turn it off at the ad set level and compare lead quality for two weeks.
Can I get a refund from Meta for fake leads?
Yes, but you need evidence: click IDs, behavioral logs, and a clear pattern tied to a placement or network. Meta's automated systems issue some credits automatically; for the rest, you file a dispute with your rep. BotRefund clients see an 83% approval rate on submitted claims.
What's the difference between a bad lead and a fake lead?
A bad lead is a real person who isn't qualified — wrong budget, no authority, not ready. A fake lead has no human behind it. Bad leads deserve nurture or disqualification; fake leads deserve exclusion and refund requests.
How often should I audit lead quality?
Weekly for high-volume campaigns (>100 leads/week). Monthly for lower volume. Automate the scoring checklist so you catch shifts early — placement quality can change overnight when a new publisher joins Audience Network.
Do I need a tool to do this, or can I build it myself?
You can build the scoring checklist in Sheets or your CRM. Client-side behavioral detection requires JavaScript on your landing pages — either build it or use a service like BotRefund that installs in one minute and captures video proof for each bot click.
What if my sales team says leads are bad but the scores look okay?
Align definitions. Sales may define "bad" as "not ready to buy this month." Your score defines "fake" as "non-human." Track both: fake rate (automated) and qualification rate (sales). They're different problems with different fixes.
Further reading on lead quality and Meta advertising
These sources provide additional context for evaluating lead quality and invalid traffic on Meta platforms.
Further reading and comparison sources
These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.
Learn more
Visit the website for more information.