Seatext library / BotRefund evidence
How to Avoid Using a Single Blanket Label Like 'Bad Lead' — A Classification Framework That Protects Real Prospects
A single 'bad lead' label lumps together bots, low-intent humans, data errors, and targeting mismatches — causing you to block real buyers or waste budget on fraud. The fix is an evidence-based classification system...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
Why a Single Label Fails
When every unresponsive contact gets marked "bad lead," three costly things happen. First, you risk suppressing a valuable audience segment that simply needs different messaging or a longer nurture cycle. Second, you miss the technical patterns that identify actual bot traffic — patterns like superhuman form completion speeds, missing mouse movement, or placement-level quality spikes. Third, you weaken any refund claim with ad platforms because you cannot show the specific evidence they require.
The source material puts it plainly: "Not every bad lead is a bot, and that matters. Treating every unresponsive contact as fraud can make a team exclude a valuable audience." (S1) A structured audit that compares ad-platform data, website sessions, and CRM outcomes must come before any targeting change or refund request.
The Main Categories of Lead Quality Issues
Lead quality problems fall into four distinct buckets. Each requires a different response.
- Automated fraud (bots, scripts, headless browsers) — non-human traffic that fills forms to earn affiliate payouts, inflate publisher metrics, or exhaust budgets. These leave repeatable technical fingerprints.
- Low-intent humans — real people who click accidentally, browse casually, or submit forms without purchase intent. They behave like humans (scrolling, hesitating, correcting fields) but don't convert downstream.
- Data-quality errors — typos, disposable emails, fake phone numbers entered by real users who don't want contact. The session is human; the contact data is unusable.
- Targeting mismatches — the right person for the wrong offer, or the wrong person for the right offer. Campaign structure, creative, or audience expansion settings drive the gap.
Collapsing these into "bad lead" loses the signal that tells you whether to block an IP, adjust creative, tighten form validation, or exclude a placement.
Evidence-Based Classification Framework
Replace the blanket label with a three-tier evidence model. Every lead gets a classification backed by observable data, not a sales rep's gut feel.
Tier 1 — Technical Evidence (Automation Signals)
Client-side behavioral checks capture what server logs miss. The source pack describes 106 independent checks — including scrollbar width leaks, clean-context iframe mismatches, pointer tremor absence, superhuman input speed (<1ms), and grid-aligned movement patterns. (S4, S5) A single anomaly is not a verdict; the system cross-checks each signal against browser, network, device, and behavior context before an AI prediction weighs the complete pattern. (S4, S5)
Tier 2 — Session Behavior (Human vs. Low-Intent Human)
Real visitors produce "imperfect, varied behavior: pauses, hesitation, natural movement, and interactions shaped by reading and decision-making." (S4) Low-intent humans still scroll, dwell, and correct fields. Bots often show: no scrolling, no field corrections, uniform click paths, and no meaningful time on the offer page. (S1)
Tier 3 — Downstream Outcomes (CRM Reality Check)
Pair ad-platform lead counts with CRM stages: calls connected, demos booked, qualified opportunities, repeat engagement. A high reported lead count paired with zero downstream movement signals either fraud or severe targeting mismatch — not merely "bad leads." (S1)
Step-by-Step Investigation Workflow
Follow this sequence before relabeling or suppressing traffic.
- Preserve attribution before changing the campaign. Keep campaign, ad set, creative, placement, and click identifiers intact so you can trace any quality pattern back to its source. (S1)
- Export ad-platform lead data with all segment dimensions. Pull placement, device, audience expansion, creative, and landing-page breakdowns.
- Match leads to website sessions using click IDs. Client-side tracking (not just server logs) captures the behavioral evidence — mouse movement, scroll depth, input timing, focus states — that distinguishes humans from automation. (S3)
- Score each session against the 106-check behavioral model. Flag sessions with multiple independent automation signals corroborated across browser, network, and device layers. (S4, S5)
- Overlay CRM outcome data. Tag each lead: connected, qualified, lost-real, lost-fake, data-error. This turns "bad lead" into four actionable categories.
- Identify the dominant pattern per segment. If 80% of fake leads come from one placement on Android devices, you have a suppression target. If low-intent humans cluster on a creative promising a free trial that doesn't exist, you have a creative fix.
- Act on the specific cause. Block automation at the edge, suppress the placement, fix the creative, or add form validation — each action tied to its evidence class.
- Verify the change. Re-run the same segment comparison after 7–14 days. The automation rate should drop; real-human lead volume should hold or improve.
Signals Worth Investigating — Quick Reference
| Signal Category | What to Look For | Typical Cause | Action |
|---|---|---|---|
| Contactability | Disconnected numbers, invalid email domains, repeated addresses, unusual country-code concentration | Data-error or fraud | Add real-time validation; flag disposable domains |
| Timing | Burst arrivals, immediate form submit after landing, unusual-hour concentration | Automation or click-farm | Check session behavior; suppress placement if bot signals corroborate |
| Session Behavior | No scroll, no corrections, uniform click paths, zero dwell time | Headless browser / script | Client-side behavioral audit; block at edge |
| Campaign Patterns | Sharp quality difference by placement, creative, audience expansion, device, landing page | Targeting mismatch or publisher fraud | Exclude placement; test creative; audit audience expansion |
| CRM Outcome | High lead count, zero calls/demos/qualified ops/repeat engagement | Fraud or severe mismatch | Classify by Tier 1–3 evidence; act on root cause |
Common Mistakes and How to Avoid Them
| Mistake | Why It Hurts | Correction |
|---|---|---|
| Labeling all unresponsive leads "fraud" | Suppresses real audiences; weakens refund evidence | Require Tier 1 technical corroboration before fraud tag |
| Relying only on server-side logs (IP, user-agent) | Misses advanced botnets using residential proxies and real browsers | Add client-side behavioral auditing (106 checks) (S3, S4, S5) |
| Changing targeting before preserving attribution | Breaks the trail back to the offending placement/creative | Freeze campaign structure; export full segment data first (S1) |
| Treating one behavioral anomaly as a bot verdict | False positives from privacy tools, corporate networks, unusual devices | Cross-check every signal against independent browser, network, device, behavior context (S4, S5) |
| Filing refund claims without forensic evidence | Platform reps reject vague "bad quality" claims | Submit click-level behavioral evidence with GCLIDs/FBCLIDs and video proof (S2, S7) |
Limitations and When This Advice Does Not Apply
- Very low volume campaigns — statistical patterns need minimum sample sizes; manual review may be more practical.
- Pure brand-awareness campaigns — if the goal is reach, not lead capture, lead-quality classification is the wrong metric.
- Offline-only conversion funnels — without digital session data, you cannot run client-side behavioral checks.
- Platforms that block client-side scripts — some walled gardens restrict the JavaScript execution needed for behavioral fingerprinting.
- Single-channel advertisers — the framework shines when comparing quality across placements, devices, and creatives; a single placement offers fewer segmentation levers.
Key Facts from the Source Pack
| Fact | Detail | Source |
|---|---|---|
| Bot clicks steal up to 20% of Google and Meta ad budgets | Estimated budget loss from automated clicks | S2 |
| 106 independent behavioral checks | Client-side signals including scrollbar width leak, clean context iframe, pointer tremor, input speed, grid-aligned movement | S4, S5 |
| 99% accuracy claim | Achieved through corroboration across browser, network, device, and behavior layers — not single rules | S4, S5 |
| 83% refund approval rate | Across client refund claims submitted to ad platforms with forensic evidence | S2 |
| FinTrust case study | Neobank recovered $140,000; 14% average bot click rate; 18% conversion rate increase after behavioral auditing & suppressions | S6 |
| Google invalid activity credit system | Credits issued for automated tools, bots, accidental clicks, data-center IPs, impression fraud, competitor click fraud — but detection is incomplete | S7 |
| Affiliate lead fraud methods | Headless browsers (Puppeteer, Selenium, Playwright), CAPTCHA solving centers, spoofed data pools, residential proxy routing | S8 |
| Affiliate fraud signals | Superhuman input speeds, lack of physical pointer movement, disposable email patterns | S8 |
Terminology
- Invalid traffic (IVT) — Meta's term for automated interactions; distinct from valid human traffic. (S1, S3)
- Pixel poisoning — Conversion pixels trained on bot events, causing the ad algorithm to optimize for more bots. (S3)
- Client-side audit — Behavioral analysis running in the visitor's browser (mouse movement, scroll, input timing, browser API consistency) — catches what server logs miss. (S3, S4, S5)
- Server-side audit — Log-file analysis of IPs, headers, user agents; limited against advanced botnets. (S3)
- GCLID / FBCLID — Click identifiers from Google and Meta that tie an ad click to a session; required for refund evidence. (S7)
- Suppression — Excluding a placement, audience, or IP range from future ad delivery based on quality evidence.
FAQ
How do I know if a lead is a bot or just a bad-fit human?
Run a client-side behavioral audit. Bots fail multiple independent checks: superhuman input speed (<1ms), zero mouse tremor, grid-aligned movement, no scroll, no field corrections. Humans — even low-intent ones — show hesitation, varied timing, and natural pointer imperfections. (S4, S5, S8)
Can I use server logs alone to classify leads?
Server logs catch basic scrapers but miss advanced botnets using residential proxies and real browser engines. Client-side checks are necessary for the 106-signal model that reaches 99% accuracy. (S3, S4, S5)
What evidence do Meta and Google require for refunds?
Click-level behavioral data tied to GCLIDs/FBCLIDs, video proof of bot sessions, and a report showing the pattern across placements or campaigns. Vague "low quality" claims are rejected. (S2, S7)
How long does the investigation workflow take?
Initial audit: 1–2 days with client-side tracking installed. Full segment analysis with CRM overlay: 1–2 weeks depending on volume. The key is preserving attribution before any campaign changes. (S1, S2)
Does this apply to affiliate/CPL programs?
Yes — affiliate lead fraud is a primary use case. Bots use headless browsers, CAPTCHA farms, spoofed data, and residential proxies to mimic real signups. The same behavioral signals (input speed, pointer movement, email patterns) expose them. (S8)
What if I don't have developer resources to add client-side tracking?
The source pack notes a one-minute setup with no credit card required for the free audit tier. (S2) For enterprise volumes, a guided implementation call is standard.
When should I suppress a placement vs. fix creative?
If the quality gap persists across multiple creatives on the same placement → suppress placement. If one creative drives the gap across placements → fix creative. The segment comparison in step 6 of the workflow makes this distinction clear.
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.