Seatext library / BotRefund evidence
How to Document Invalid Traffic Evidence for a Meta Refund: A Step-by-Step Guide
To document invalid traffic for a Meta refund, capture behavioral logs showing automated patterns — such as superhuman click speeds, missing mouse tremor, grid-aligned movements, and zero scroll depth — alongside Ads Manager placement...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
Meta refunds invalid clicks, but its automated systems catch only a fraction of bot traffic. To recover spend, you must file a claim with evidence that proves traffic was automated — not just suspicious. The strongest proof comes from client-side behavioral logs that show exactly how each visitor interacted with your landing page.
What Counts as Invalid Activity on Meta Ads
Meta defines invalid activity broadly. According to its Advertising Policies, advertisers should not be charged for clicks or impressions determined to be invalid. This includes clicks generated by automated bots, click farms, or malicious scripts targeting your ads, as well as impressions served to fake accounts or generated by automated tools. Accidental clicks and competitor click fraud also fall under this definition. However, Meta's automated detection misses sophisticated botnets that use realistic fake accounts, residential proxies, and browser automation. That gap is why you need your own evidence.
Why Behavioral Evidence Matters More Than Suspicion
Meta's refund process is less structured than Google's, which means having the right evidence is even more critical. Behavioral logs showing that traffic was automated — rather than just suspicious — make the difference between an approved and denied claim. Server-side logs (IP addresses, user agents, request headers) catch basic scrapers but struggle against advanced botnets that rotate IPs and spoof headers. Client-side audits analyze the visitor's actual browser behavior: mouse movements, scroll depth, form interaction timing, and click sequences. These signals are much harder for bots to fake convincingly.
Step-by-Step Documentation Workflow
- Preserve attribution before changing the campaign. Keep campaign, ad set, creative, and placement IDs intact. Do not pause or edit the campaign until you have exported the relevant Ads Manager data.
- Export Ads Manager placement and creative reports. Pull reports showing clicks, impressions, CTR, and cost per result broken down by placement (Facebook Feed, Instagram Stories, Audience Network, etc.), device, and creative. Look for sharp lead-quality differences by placement or creative.
- Collect client-side behavioral logs for the same period. Use a tool that records mouse tremor, click speed, scroll depth, form completion time, and pointer path geometry for every session tied to a Meta Click ID (fbclid).
- Match Click IDs to behavioral anomalies. For each fbclid, note whether the session showed: superhuman input speed (<1ms), absence of humanlike mouse tremor, grid-aligned movement patterns, no scrolling or field corrections, uniform click paths, or form submissions immediately after landing.
- Correlate with CRM outcomes. Flag sessions where the CRM shows disconnected numbers, invalid email domains, repeated addresses, or zero calls connected, demos booked, or qualified opportunities despite high reported lead counts.
- Build a compliance-ready refund report. Structure the report with: campaign/ad set/creative IDs, date range, total spend, list of flagged Click IDs with timestamps, behavioral evidence per Click ID, placement-level quality comparison, and CRM outcome summary.
- Submit the claim through Meta's support channel. Attach the report and request a manual review. Reference Meta's Advertising Policy on invalid activity.
Key Technical Signals to Capture
Not all behavioral signals carry equal weight. The following patterns are strong indicators of automation and are detectable with client-side tracking:
- Superhuman input speed (<1ms): Interactions faster than a person could realistically perform.
- Absence of humanlike mouse tremor: Missing the tiny imperfections and jitter typical of human movement.
- Grid-aligned movement patterns: Movement that snaps to precise lines or blocks instead of natural curves.
- Robotic linear mouse movements: Unnaturally straight pointer paths that rarely appear in real user sessions.
- No scrolling or field corrections: Sessions that stay too static to match a real browsing journey.
- Unnatural session durations: Visit lengths that are too short, too long, or too uniform to be human.
- Honeypot trap interactions: Bots responding to hidden or intentionally deceptive page elements.
- Ghost click detection: Click activity that happens without the natural sequence of human intent.
These signals come from browser-level auditing that captures the full interaction sequence, not just the click event.
How to Package Evidence for a Meta Refund Claim
A successful claim connects three layers: platform data (Ads Manager), behavioral proof (client-side logs), and business outcome (CRM). Structure your submission as follows:
- Executive summary: Total spend, date range, estimated invalid percentage, refund amount requested.
- Placement-level analysis: Table showing spend, clicks, leads, and CRM qualification rate by placement. Highlight placements with high click volume but zero qualified outcomes.
- Click-level evidence appendix: For each flagged fbclid: timestamp, placement, creative, behavioral flags (e.g., "no mouse tremor, 0.8ms click speed, zero scroll"), and CRM status.
- Methodology statement: Describe the detection method (client-side behavioral analysis), confidence threshold (e.g., 99% confidence), and that evidence was captured in real time without ad-account access.
- Policy reference: Cite Meta's Advertising Policy on invalid clicks and impressions.
BotRefund automates this packaging, generating audit-ready refund dispute reports that include video proof for each flagged click and capture GCLIDs/fbclids with behavioral evidence.
Common Mistakes That Weaken a Claim
- Relying only on server-side logs. IP reputation and user-agent analysis miss advanced bots using residential proxies and real browser fingerprints.
- Treating every bad lead as fraud. A weak campaign can attract real people who are not ready to buy. Not every unresponsive contact is a bot. Start with a structured audit comparing ad-platform data, website sessions, and CRM outcomes before filing.
- Changing targeting before preserving evidence. Pausing a campaign or adjusting placements breaks the attribution chain needed to tie refunds to specific clicks.
- Submitting screenshots without Click IDs. Meta needs fbclids to trace the charge. A screenshot of Ads Manager without the underlying Click IDs is insufficient.
- Using vague language. "Suspicious traffic" gets denied. "Automated traffic evidenced by absent mouse tremor and superhuman click speed on fbclid X at timestamp Y" gets reviewed.
Limitations and When This Advice Does Not Apply
- This process applies to Meta Ads (Facebook and Instagram) invalid click and impression refunds. It does not cover Google Ads invalid activity credits, which follow a different process.
- Meta's refund policy and review process can change. The evidence standards described here reflect current practice but are not guaranteed to succeed in every case.
- Client-side tracking requires adding a script tag to your landing pages. If you cannot modify the site (e.g., using a third-party funnel builder that blocks scripts), you cannot capture behavioral evidence.
- Refunds are not guaranteed. Meta's manual review team makes the final decision. Historical approval rates for well-documented claims filed through BotRefund are 83%, but individual results vary.
- This guide assumes you have administrative access to Ads Manager and CRM data. Agencies managing client accounts need client permission to export reports and submit claims.
Key Facts
| Fact | Detail | Source |
|---|---|---|
| Meta refund eligibility | Advertisers should not be charged for clicks or impressions Meta determines are invalid, including automated bots, click farms, malicious scripts, fake accounts, accidental clicks, and competitor click fraud. | S6 |
| Meta's automated detection gap | Sophisticated bot traffic using realistic fake accounts, residential proxies, and browser automation routinely bypasses Meta's filters. | S6 |
| Evidence standard | Behavioral logs showing traffic was automated — rather than just suspicious — make the difference between an approved and denied claim. | S6 |
| Key behavioral signals | Superhuman input speed (<1ms), absent mouse tremor, grid-aligned movements, robotic linear paths, no scrolling, honeypot interactions, ghost clicks, unnatural session durations. | S2 |
| Investigation signals | Contactability issues (disconnected numbers, invalid emails), timing bursts, session behavior anomalies (no scroll, uniform paths), campaign pattern differences by placement/creative, CRM outcome mismatch (high leads, zero qualified). | S1 |
| BotRefund detection confidence | Identifies non-human traffic with 99% confidence. | S7 |
| BotRefund refund approval rate | 83% of refund claims filed by BotRefund are approved by ad platforms. | S2, S7 |
| Setup time | Add BotRefund to your website in about one minute; no credit card required for free audit. | S2 |
FAQ
What is the minimum evidence Meta requires for a refund?
Meta does not publish a formal evidence checklist. In practice, claims need Click IDs (fbclids), timestamps, placement data, and proof the interactions were automated. Behavioral logs showing absent mouse tremor, superhuman click speed, or grid-aligned movements meet this standard.
How far back can I claim a Meta refund?
Meta does not state a fixed lookback window. Claims are typically reviewed for recent spend (30–90 days). Older claims are harder to support because Ads Manager data exports and Click ID traces may no longer be available.
Can I get a refund for Audience Network traffic specifically?
Yes. Audience Network placements historically show high CTRs and near-instant bounce rates from publisher bots. If your placement report shows Audience Network driving clicks but zero CRM-qualified leads, document that pattern with behavioral logs for those fbclids.
Do I need to give Meta access to my ad account?
No. You export the reports yourself and submit them through the support channel. BotRefund does not require ad-account access either; it uses a single script tag on your site.
What if Meta denies my claim?
You can request a re-review with additional evidence. Some advertisers escalate through a Meta account representative. BotRefund's process includes negotiation through the platforms' own invalid-traffic channels, which contributes to its 83% approval rate across filed claims.
How much does it cost to use BotRefund for this?
The free bot audit requires no credit card. Enterprise recovery fees come out of what BotRefund gets back — no upfront cost. Pricing tiers are based on monthly Google + Meta spend (under $10K, $10K–$50K, $50K–$250K, $250K–$1M, $1M–$5M, over $5M).
Does this work for lead gen campaigns using Instant Forms?
Instant Forms keep users on Meta's platform, so client-side tracking on your landing page does not capture that interaction. For Instant Forms, rely on CRM outcome signals (invalid emails, disconnected numbers, burst submissions) and placement-level quality differences. Behavioral evidence applies to traffic that lands on your website.
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.