Seatext library / BotRefund evidence
How to Prove Invalid Ad Clicks and Get a Refund from Google and Meta
To prove invalid ad clicks you need client‑side behavioral evidence — video recordings of each session, precise timestamps, IP addresses, GCLID or fbclid parameters, and a pattern of non‑human signals such as super‑fast form...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
If you want Google or Meta to refund money spent on bot or fraudulent clicks, you must submit a formal dispute backed by session‑level evidence. Automated platform filters miss a large share of modern residential‑proxy and headless‑browser traffic, so the burden falls on you to show exactly which clicks were invalid and why.
What Counts as Valid Evidence for a Refund Claim
Both Google Ads and Meta Ads evaluate refund requests against a checklist of technical proof. The strongest claims include:
- Client‑side session recordings that capture mouse movement, scroll depth, keystroke timing, and viewport interactions for every paid click.
- Click identifiers (GCLID for Google, fbclid for Meta) tied to each session so the platform can match your evidence to their billing records.
- IP address and geolocation logs showing clusters of clicks from data‑center ranges, known VPN exits, or improbable geographic jumps within seconds.
- Behavioral anomaly flags such as clicks occurring in <1 ms, perfectly straight pointer paths, absence of scrollbar interaction, or forms submitted before the page could render.
- Timestamped server logs that correlate the ad click with the subsequent request, exposing gaps where a bot never loaded assets or executed JavaScript.
Without these pieces, a dispute is usually rejected as "insufficient evidence."
Step‑by‑Step Process to Build a Refund‑Ready Case
- Preserve attribution before changing anything. Keep campaign, ad set, creative, placement, and click‑ID parameters intact in your analytics and CRM. Altering UTM structures or pausing campaigns destroys the chain of evidence.
- Deploy a client‑side detection script. A lightweight JavaScript snippet records every paid visit — mouse tremor, scrollbar width, iframe context, input speed, and 100+ other signals — and stores a tamper‑proof video replay. BotRefund adds this to your site in about one minute with no credit card required. (Source: S2)
- Run a free bot audit. The audit surfaces the percentage of paid sessions that exhibit automated behavior — ghost clicks, honeypot triggers, robotic linear movements, superhuman input speed (<1 ms), grid‑aligned paths, zero engagement, and unnatural session durations. (Source: S2)
- Export the evidence package. The tool compiles a CSV of flagged GCLIDs/fbclids, IP blocks, timestamp ranges, and a zip of video proofs for each suspicious session.
- File the platform‑specific dispute form. For Google, use the Click Quality Investigation form; for Meta, use the Invalid Traffic Report in Ads Manager. Attach the exported package and reference the exact click IDs.
- Follow up with platform reps. Provide the case ID and a one‑page summary linking each flagged click ID to the behavioral anomaly (e.g., "GCLID 12345 — mouse moved 800 px in 0.4 ms, no scroll events").
Google Ads Refund Workflow
Google categorizes invalid clicks it will credit if proven: competitor click activity, publisher click fraud on Search partners, and bot traffic or web scrapers. Accidental double‑clicks or fat‑finger taps are generally not refunded. The Click Quality team reviews your submitted GCLID logs, IP analysis, and behavioral evidence. Approval rates vary; BotRefund reports an approved rate across client refund claims submitted to ad platforms. (Source: S2)
Meta Ads Refund Workflow
Meta evaluates invalid traffic through its Traffic Quality team. Signals worth investigating include contactability failures (disconnected numbers, invalid email domains), burst timing (multiple leads in seconds), session behavior (no scrolling, uniform click paths), placement‑level quality gaps, and CRM outcomes showing zero qualified opportunities despite high reported leads. (Source: S3) The same client‑side evidence package — video replays, fbclid lists, IP clusters — is accepted by Meta support when formatted as a structured report.
Common Mistakes That Weaken or Invalidate Claims
| Mistake | Why It Hurts | Fix |
|---|---|---|
| Relying only on server‑side logs | Server logs show a request arrived, not whether a human interacted with the page. | Add client‑side behavioral recording for every paid click. |
| Submitting aggregate traffic reports | Platforms require click‑level proof; summaries are rejected. | Export individual GCLID/fbclid rows with attached video evidence. |
| Changing campaign structure mid‑dispute | Breaks the attribution chain between click ID and billing record. | Freeze targeting, creatives, and landing pages until the case closes. |
| Treating all bad leads as bots | Low‑intent humans are not refundable; over‑claiming damages credibility. | Use behavioral signals (speed, movement, engagement) to separate bots from poor‑fit humans. |
| Missing the 60‑day filing window | Google and Meta limit disputes to recent billing cycles. | Audit weekly; BotRefund can recover bot‑click refunds from Google Ads spend dating back to 2017. (Source: S2) |
How BotRefund Automates Evidence Collection
BotRefund installs a single script that runs 106 independent browser, network, device, and behavior checks — including scrollbar width leaks, clean‑context iframe traps, ghost‑click detection, honeypot interactions, and motion‑behavior analysis. (Source: S4, S7) Each check produces an independent evidence signal; the AI prediction engine weighs the complete pattern to identify bots with 99% accuracy. (Source: S4, S7) The system captures a video proof for every flagged session, tags it with the click ID, and builds the export package platforms accept. FinTrust, a neobank, used this workflow to recover $140,000 and suppress automated conversion events so Facebook and Google AI trained only on verified accounts. (Source: S5)
Limitations and When This Advice Does Not Apply
- Organic or direct traffic — refund processes only cover paid clicks with a platform click ID.
- Clicks older than platform look‑back windows — Google typically allows 60 days; Meta’s window varies by account type.
- Accidental or low‑intent human clicks — these are not classified as invalid by either platform.
- Accounts without admin access to Ads Manager or Google Ads — you must be able to submit the dispute form.
- Campaigns using third‑party click trackers that strip GCLID/fbclid — the click ID must reach the landing page intact.
Key Terms
- GCLID / fbclid — unique click identifiers appended by Google and Meta to the landing‑page URL.
- Invalid traffic (IVT) — clicks generated by bots, competitors, or fraudulent publishers that platforms agree to credit.
- Client‑side detection — JavaScript running in the visitor’s browser that records behavior impossible to fake at scale.
- Click Quality team — Google’s internal group that reviews manual refund requests.
- Traffic Quality team — Meta’s equivalent review group.
Key Facts from BotRefund
| Metric | Detail |
|---|---|
| Bot click share of budget | Up to 20% of Google and Meta ad spend (Source: S2) |
| Detection accuracy | 99% via 106 cross‑checked signals (Source: S4, S7) |
| Refund look‑back | Google Ads spend dating back to 2017 (Source: S2) |
| Setup time | About one minute, no credit card (Source: S2) |
| Average ad spend recovered | Reported across client billing disputes (Source: S2) |
| Refund approval rate | Approved rate across client claims submitted to ad platforms (Source: S2) |
| Case study example | FinTrust recovered $140,000 with 14% bot click rate (Source: S5) |
FAQ
How long does a Google Ads refund take?
Typically 2–4 weeks after the Click Quality team receives a complete evidence package. Incomplete submissions reset the clock.
Can I get a refund for clicks from a competitor’s office IP?
Yes, if you can tie the IP block to the competitor and show behavioral anomalies (e.g., zero scroll, superhuman speed). Pure IP evidence alone is rarely enough.
Does Meta refund for invalid leads on Instant Forms?
Meta’s policy covers invalid traffic that triggers a conversion event. If the Instant Form submission shows bot signals (instant fill, no field corrections), include the fbclid and session video in your Traffic Quality report.
What if my developer says the tracking script slows the site?
BotRefund’s script is under 15 KB gzipped and loads asynchronously; Core Web Vitals impact is negligible. Test in staging before production.
Can I use my own analytics instead of a dedicated tool?
Standard analytics (GA4, Matomo) do not record mouse tremor, scrollbar width, or iframe context — the signals platforms accept as proof. You need a purpose‑built evidence layer.
Is there a minimum ad spend to qualify?
No published minimum, but the effort of a manual dispute only pays off when wasted spend exceeds a few hundred dollars. BotRefund’s free audit shows the exact amount at risk before you commit.
What happens after a refund is approved?
Credits appear in your Google Ads or Meta Ads billing summary. BotRefund continues monitoring and suppressing flagged IPs/browsers so future bot clicks are blocked before they bill.
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.