Seatext library / BotRefund evidence

How to Detect Ad Network Fraud in Your Campaigns: A Step-by-Step Guide

Detect ad network fraud by combining real-time traffic analysis, behavioral anomaly rules, and third-party verification tags. Watch for ghost clicks, robotic mouse movements, and unnatural session patterns, then log click IDs and build a...

Built for advertisers who need clear, refund-ready traffic evidence.

Ad network fraud is not a single problem. It is a mix of bot clicks, publisher click fraud, and poisoned conversion pixels. To detect it early, you need to combine real-time traffic analysis, anomaly detection rules, and third-party verification tags. This guide walks you through a practical detection process you can set up today.

What Counts as Ad Network Fraud

Ad network fraud includes any invalid click or impression that you pay for but that never leads to a real customer. Google officially categorizes invalid clicks into competitor click activity, publisher click fraud, and bot traffic or web scrapers. These are the segments you can dispute if you have proof.

Competitor click activity happens when rival firms manually or automatically click your ads to exhaust your daily budget. Publisher click fraud occurs on search partner websites that generate fake clicks to boost their own AdSense revenue. Bot traffic and web scrapers are automated scripts, headless Chrome instances, and data scrapers that visit paid listings as they index the web.

Modern fraud is harder to spot because it uses residential proxies and AI-generated behavior. Simple filters miss it. You need client-side signals.

Key Detection Signals to Monitor

Watch for these behavioral signals on your landing pages:

  • Ghost clicks – clicks that happen without the natural sequence of human intent. For example, a click that occurs before the page finishes loading or without any preceding mouse movement.
  • Honeypot trap interactions – bots that respond to hidden or intentionally deceptive page elements. These traps are invisible to humans but visible to automated scripts.
  • Robotic linear mouse movements – unnaturally straight pointer paths. Real users move in curves, with slight arcs and pauses.
  • Absence of humanlike mouse tremor – real humans have tiny jitter. Even when trying to move straight, your hand shakes slightly. Bots often produce perfectly smooth lines.
  • Superhuman input speed – interactions faster than a person could perform. For instance, a click that registers in under 1 millisecond is physically impossible for a human.
  • Grid-aligned movement patterns – movement that snaps to lines or blocks. Bots often move in pixel-perfect straight lines or follow a grid.
  • Absence of clicks or scrolling – sessions that stay too static. A real visitor will at least scroll or move the mouse.
  • Unnatural session durations – too short, too long, or too uniform. For example, a session that lasts exactly 0.1 seconds or a series of sessions all lasting 2.5 seconds.

These signals are not proof by themselves, but they are strong flags. Combine them with IP reputation, device fingerprints, and click timing.

Step-by-Step Detection Process

Step 1: Install a Client-Side Tracking Script

You cannot rely only on ad platform reports. Install a script that records mouse movements, scroll depth, click coordinates, and session timing on your landing pages. This gives you raw behavioral data.

Why client-side? Because ad platforms only see server-side data like IP and user agent. They cannot see what happens on your page. A client-side script captures the full user interaction. For example, it can record that a visitor moved the mouse in a perfect straight line from the top-left corner to the ad click button in 0.5 seconds. That is a red flag.

You can use a simple JavaScript snippet or a full-fledged tool. The script should run on every page where you expect paid traffic. It should store data in a way that you can later export and analyze.

Step 2: Set Up Anomaly Detection Rules

Define thresholds for each signal. For example, flag sessions with no mouse movement, or clicks that happen in under 1 millisecond. Use rules that catch the patterns listed above.

Start with conservative thresholds. You do not want to flag too many real users. For instance, a mobile user might not move the mouse because they are tapping. So you need separate rules for mobile and desktop. On mobile, look for touch events and gyroscope data instead of mouse movement.

Set up alerts. When a rule triggers, you should get a notification. This allows you to investigate in real time. You can also create a dashboard that shows the number of flagged sessions per day.

Step 3: Add Honeypot Traps

Place hidden form fields or invisible links that only bots interact with. If a session triggers a honeypot, mark it as invalid immediately.

For example, add a form field that is hidden with CSS. A human will never see it, so they will not fill it out. A bot that auto-fills every field will fill it. Similarly, you can add an invisible link that is not styled as a link. Bots that crawl the page might click it, but humans will not.

Honeypots are cheap and effective. They catch bots that are not sophisticated enough to check for hidden elements. However, advanced bots may detect and avoid them. So use them as one layer, not the only layer.

Step 4: Log Click IDs and Session Data

Capture GCLID for Google Ads and FBCLID for Meta. Store the full session recording, including timestamps and behavioral signals. This becomes your evidence.

Click IDs are unique identifiers that link a click to a specific ad and keyword. They are essential for building a refund case. Without them, you cannot prove which clicks were invalid.

Store the data in a structured format. For each session, record the click ID, IP address, user agent, device type, timestamp, and all behavioral signals. Also store a video recording of the session if possible. This visual proof is very persuasive when you submit a refund request.

Step 5: Compare Against Platform Reports

Pull your ad platform's click data and compare it with your own session data. Large discrepancies—like Meta reporting more clicks than GA4 sessions—are a red flag.

For example, if Meta reports 1,000 clicks but your landing page only received 800 sessions, that is a 20% gap. Some of that gap might be due to tracking delays or users who click but never load the page. But if the gap is consistent and large, it suggests invalid clicks.

Use a tool like Google Analytics to get session counts. Compare the number of sessions from paid traffic to the number of clicks reported by the ad platform. A healthy ratio is usually above 0.8. If it drops below that, investigate.

Step 6: Verify with Third-Party Tags

Use independent verification tags from a fraud detection service. These tags run alongside your own script and provide an unbiased second opinion.

Third-party tags are useful because they are not controlled by the ad platform. They can detect behaviors that the platform misses. For example, they can check for headless browsers, missing fonts, or unusual rendering parameters.

Choose a service that provides a clear report. You want to see which sessions were flagged and why. This report can be used as evidence in your refund claim.

Step 7: Build a Refund Case

When you have enough flagged sessions, compile a report with video proof and behavioral logs. Submit it to Google or Meta's click quality team. This is the only way to recover your wasted budget.

Your report should include a summary of the fraud, the number of invalid clicks, the total cost, and the evidence. For each flagged session, include the click ID, the behavioral signals, and a video recording. Be specific. Google and Meta receive many claims, so you need to make yours easy to verify.

Follow the platform's dispute process. For Google Ads, you submit a form to the Click Quality team. For Meta, you contact support or use the dedicated channel. Keep records of all communication.

Tools and Trade-offs

You have three main options: manual analysis, in-house rules, or a dedicated fraud detection service. Manual analysis is free but slow and error-prone. In-house rules give you control but require constant tuning. A dedicated service like BotRefund automates detection and provides refund-ready evidence.

Manual analysis works for small campaigns. You can review session recordings and look for obvious signs. But it does not scale. If you get thousands of clicks a day, you cannot review them all.

In-house rules are better for medium-sized campaigns. You can write custom scripts and set up alerts. But you need technical skills and time to maintain them. Fraudsters change tactics, so your rules must evolve.

A dedicated service is best for large spenders. It uses machine learning and a team of analysts to stay ahead of fraud. It also handles the refund process for you. The cost is a percentage of your ad spend or a flat fee.

Choose based on your ad spend and team size. If you spend under $10,000 per month, manual checks might be enough. Above that, automation pays for itself.

Key Facts

FactDetail
Budget impactBot clicks steal up to 20% of your Google and Meta ad budget.
Detection signalsGhost clicks, honeypot traps, robotic mouse movements, superhuman speed, grid-aligned paths, static sessions, unnatural durations.
Refund eligibilityGoogle credits back competitor clicks, publisher fraud, and bot traffic if you provide sufficient proof.
Setup timeAdd BotRefund to your website in about one minute.
Recovery rate83% of customers successfully get a refund (per BotRefund).

Limitations and When This Advice Does Not Apply

No detection method catches everything. Residential proxies and AI-generated behavior can fool even advanced filters. Also, if your campaigns are small and your traffic is mostly direct, you may not need a full fraud detection stack. The process above works best for advertisers with meaningful paid traffic on Google or Meta.

There are also false positives. Real users can trigger some signals. For example, a user with a touchscreen might not move the mouse. A user with a slow connection might have a long session duration. So you need to review flagged sessions before taking action.

Refunds are not guaranteed. Recovery rates vary by traffic quality and available evidence. You must have solid proof. Even then, Google and Meta may reject your claim. Be prepared to appeal.

Finally, this advice focuses on click fraud. It does not cover other types of ad fraud like impression fraud or domain spoofing. For those, you need different detection methods.

Frequently Asked Questions

How quickly can I detect ad fraud?

With real-time tracking, you can flag suspicious sessions within minutes of the click. But building a refund case takes longer because you need to collect enough evidence.

What is the cost of detection tools?

Costs range from free manual methods to paid services. BotRefund offers a free audit and pricing tiers based on monthly ad spend.

Can I detect fraud without a third-party tool?

Yes, you can use Google Analytics, server logs, and manual session reviews. But this is time-consuming and less reliable for modern fraud.

How do I prove fraud to Google or Meta?

You need client-side behavioral proof, click IDs, and session recordings. Export these into a clear report and submit it through the platform's dispute process.

What is pixel poisoning?

Pixel poisoning happens when bots send fake conversion events to your ad platform, corrupting your optimization data. Detection tools can block these events in real time.

Why do my Meta clicks not match my GA4 sessions?

There are legitimate reasons like tracking delays and ad blockers. But a large, consistent gap often indicates invalid traffic. Compare the numbers over several days to spot trends.

How often should I review my fraud detection rules?

At least monthly. Fraud tactics evolve quickly. Review your flagged sessions to see if any false positives are slipping through, and adjust thresholds accordingly.

Further reading and comparison sources

These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.

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.

Learn more