The campaign report says 200 leads. Your sales team says half the numbers don't connect, a dozen are the same person, and someone called “asdf” wants a quote. Fake leads cost you twice: once in ad spend, and again in the hours spent chasing them.
This guide explains where fake leads come from, how to spot them, and eight ways to stop fake leads without scaring off real buyers, including the one most teams miss: teaching your ad platform which leads were real.
What counts as a fake lead
| Kind | Looks like | Where it comes from |
|---|---|---|
| Bots | Random names, every field filled, bursts at night | Scripts that submit to any form they find |
| Junk details | Real name, fake number or throwaway email | People who want the download or discount, not a call |
| Wrong person | A real number that belongs to someone else | Typos, or a friend's or shop's number |
| Accidental | Correct details, but they don't remember asking | Forms so quick to send that a tap does it |
| Spam and pitches | Sales offers, links, SEO deals | People and bots using your form as a free inbox |
| Duplicates | The same person three times | Impatient taps, or several ads to one person |
Signs your leads are fake
- Numbers that don't connect, or a stranger answers.
- Emails that bounce or come from temporary inbox services.
- Leads arriving in bursts, at odd hours, or from countries you don't target.
- Names in the wrong field, keyboard mash, or links where a name should be.
- One campaign with a low cost per lead and almost no sales.
Why ads make it worse
Ad platforms find more of whoever converts. If a “conversion” is any form submission, the system learns to find people who submit forms cheaply, and that includes people who tap without reading and people who enter junk. Each fake lead you count as real makes the next batch worse.
Lead forms inside the ad app make it easier still: details are filled in from the person's profile, so a couple of taps sends a lead, including one they didn't mean to send. On Meta, the Higher intent form type adds a review step before people submit, trading some volume for leads who meant it.
8 ways to stop fake leads
1. Verify the phone number or email with a code
The single biggest fix. A 6-digit code sent by WhatsApp or SMS, and accepted on the server before the lead is saved, proves the number is real and belongs to the person typing it. For email, send a code or ask for a Google sign-in. See how WhatsApp-verified forms work.
2. Block throwaway and personal emails where it fits
Turn away temporary email services outright. For B2B offers, accept business emails only: someone who won't give a work address is rarely ready to buy.
3. Keep bots out invisibly
A hidden trap field, a time check and a rate limit stop scripts without a CAPTCHA that costs you real leads. Our guide to stopping form spam without CAPTCHA covers all ten methods.
4. Add firewall rules for where you don't sell
If you only serve one country, block or mark as spam the leads from elsewhere. Rules by IP range, referrer or email domain stop a single bad source without touching the rest.
5. Ask one qualifying question
Name, phone, email, submit. Anyone can send it without thinking.
One question that only a real buyer answers easily: budget, timeline, or which service they need.
Use logic to ask follow-ups only when they apply, so the form stays short for everyone else.
6. Tag every lead with its source
Add hidden fields and put the campaign in your links (?source=meta&campaign=diwali). The values are saved with each lead, so you can see which ad, audience or placement brings the junk.
7. Send only verified leads to your ad platform and CRM
This is the fix most teams miss. Fire your Lead event, and send rows to your sheet or CRM, only for verified responses. Your sales team sees only real leads, and the ad platform learns from real people instead of form-fillers. Tapzy's Meta Pixel integration can do exactly that.
8. Score and review instead of deleting
Not every doubtful lead is fake. A trust score lets you call the likeliest buyers first, and keeping suspicious leads aside (not deleting them) means a real one caught by mistake can be restored. Turn on duplicate prevention for forms people tend to send twice.
Measure fake leads by source
Stop judging campaigns by cost per lead. Track, for each source:
- Verified leads, not submissions.
- Share marked spam or unverified, to find the sources that send junk.
- Where people drop off: if many stop at the code step, say up front that a code is coming.
A campaign with a higher cost per lead but twice the verified rate is usually the cheaper one.
How Tapzy handles it
- Verification: WhatsApp codes with no setup, SMS through your Twilio, email codes or Google sign-in.
- Spam protection on every form: invisible bot checks, a spam filter, over 9,000 throwaway email services blocked, and business-emails-only.
- Firewall rules by country, device, IP range, referrer, UTM tags, email domain or answer.
- Trust score on every lead, carried into Google Sheets, webhooks and CSV.
- Hidden fields for campaign and source, and partial responses to see where people stop.
- Verified-only sending to Google Sheets, webhooks, Meta Pixel and email alerts.
See it for your industry: real estate, coaching institutes or agencies.