Seatext library / BotRefund evidence

How to Use Combined Campaign, Session, and CRM Evidence to Detect Invalid Traffic

Start by preserving attribution, then compare ad‑platform data with website session signals and CRM outcomes to spot patterns that indicate invalid traffic. This structured audit separates normal lead‑quality variation from automated activity before you...

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

To use combined campaign, session, and CRM evidence, start by preserving attribution before making any changes to your campaign. Then compare the ad‑platform data (clicks, impressions, spend) with website session signals (timing, behavior, engagement) and CRM outcomes (lead count, calls connected, demos booked) to find mismatches that point to non‑human traffic.

This structured audit lets you separate normal lead‑quality variation from automated activity. By looking at the three data sources together you can decide whether to adjust targeting, suppress suspicious conversions, or prepare a refund request with solid evidence.

Why combining campaign, session, and CRM evidence matters

Relying on only one data source can give a false picture. Campaign data alone may show steady cost per lead while session data reveals bots that never scroll, and CRM data shows leads that never turn into qualified opportunities. Combining them surfaces the repeatable technical and behavioral patterns that automated traffic leaves behind.

Core signals to watch

The investigation focuses on five signal groups that appear in the source material:

  • Contactability – disconnected numbers, invalid email domains, repeated addresses, or an unusual concentration of one country code.
  • Timing – several leads arriving in short bursts, forms submitted immediately after landing, or conversions concentrated at unusual hours.
  • Session behavior – no scrolling, no field corrections, uniform click paths, and no meaningful time on the offer page.
  • Campaign patterns – a sharp lead‑quality difference by placement, creative, audience expansion, device, or landing page.
  • CRM outcome – a high reported lead count paired with no calls connected, demos booked, qualified opportunities, or repeat engagement.

Step‑by‑step investigation workflow

  1. Preserve attribution – keep campaign, ad set, creative, placement, and click identifier unchanged while you gather data.
  2. Export ad‑platform reports – pull clicks, impressions, spend, and click IDs for the period under review.
  3. Collect website session data – use your analytics tool to pull page views, time on page, scroll depth, form interactions, and any custom events tied to the click ID.
  4. Extract CRM outcomes – pull lead records linked to the click ID, including contact fields, call logs, demo bookings, and opportunity stage.
  5. Cross‑check the five signal groups – look for the patterns listed above across the three data sets.
  6. Flag sessions that show multiple anomalous signals – a single oddity is not enough; combine at least two independent signals for higher confidence.
  7. Document findings – record click ID, timestamp, campaign details, and which signals fired for each flagged session.
  8. Decide next step – if the evidence is strong, either suppress the conversions in your ad platform or prepare a refund request using the documented evidence.

How BotRefund streamlines this workflow

BotRefund automates click ID matching, signal cross‑checking, and report generation, eliminating manual data joining and reducing the time to prepare a refund claim from days to hours. The platform captures 110+ behavioral, browser, hardware, network, and attribution signals to deliver 99% confidence bot detection. Each finding includes a clear, session‑by‑session explanation instead of a generic invalid‑traffic estimate. Reports are built in the format Google and Meta reviewers expect, with click IDs, campaign details, timestamps, session recordings, and signal‑by‑signal reasoning.

Prerequisites and setup

You need access to three data sources: the ad platform (Meta or Google Ads), your website analytics (or a tag that captures session‑level data), and your CRM. Ensure that click IDs or equivalent identifiers are passed from the ad click to the landing page and stored in both analytics and CRM. Without a common identifier you cannot reliably join the data.

Verification step: confirming invalid traffic

After you have flagged suspicious sessions, run a quick sanity check: compare the flagged group’s conversion rate to a control group of sessions that show no anomalous signals. If the flagged group’s conversion rate is significantly lower (e.g., near zero) while the control group performs as expected, the evidence supports an invalid‑traffic conclusion.

Common pitfalls and how to avoid them

  • Using only one signal – a single oddity can be a legitimate edge case (e.g., a user on a slow connection). Always require at least two independent signals.
  • Changing targeting before the audit – pausing or adjusting campaigns can break attribution and make the data incomparable. Preserve the original setup until the audit is complete.
  • Ignoring CRM latency – some CRM systems update lead status with a delay. Pull CRM data after a sufficient window (e.g., 24‑48 hours) to capture downstream outcomes.
  • Overlooking device or placement splits – invalid traffic often concentrates on specific placements or mobile devices. Segment your analysis by these dimensions to spot patterns.

Practical example (real‑world)

For example, neobank FinTrust used this exact workflow to identify a 14% bot click rate on its Meta lead campaigns, suppress invalid conversions, and recover $140,000 in wasted ad spend, while increasing its conversion rate by 18%. The team preserved attribution, exported click‑level data from Meta, joined it with on‑site session signals and CRM outcomes, and documented the multi‑signal clusters that proved automated traffic. The evidence was formatted into a refund‑ready report that Meta accepted.

Limitations and when the advice does not apply

This workflow assumes you can pass a click‑level identifier from the ad platform to your site and CRM. If you only have aggregated campaign totals (e.g., daily spend) you cannot join session or CRM data at the user level. In that case you must rely on platform‑provided invalid traffic reports or upgrade your tracking setup. The method also works best for lead‑generation or e‑commerce funnels where a clear conversion event exists; for pure branding campaigns with no downstream CRM signal the approach is less useful.

Key facts

Signal group What to look for
Contactability Disconnected numbers, invalid email domains, repeated addresses, unusual country‑code concentration
Timing Leads in short bursts, immediate form submits, conversions at odd hours
Session behavior No scrolling, no field corrections, uniform click paths, little time on offer page
Campaign patterns Sharp lead‑quality differences by placement, creative, audience, device, landing page
CRM outcome High lead count with no calls, demos, qualified opportunities, repeat engagement

Frequently asked questions

  • How long should I preserve attribution before making changes? Keep the original campaign, ad set, creative, placement, and click identifier unchanged for at least the full look‑back window you plan to analyze (commonly 7‑14 days).
  • What if my CRM does not store the click ID? Work with your CRM administrator to add a custom field that captures the click ID from the landing page URL or a hidden form field.
  • Can I use this method for Google Ads as well as Meta? Yes. The same three‑source approach works for any ad platform that provides click‑level data and allows you to pass an identifier to your site.
  • Do I need a paid tool to collect session signals? Basic analytics platforms (Google Analytics, Adobe Analytics, Matomo) can capture time on page, scroll depth, and form interactions. For more granular signals (mouse movement, pointer behavior) you may need a specialized script or a service like BotRefund.
  • What is a good threshold for flagging a session? There is no universal number; start by requiring at least two independent anomalous signals (e.g., timing + session behavior) and review the results. Adjust the threshold based on the volume of flagged sessions and the observed impact on conversion rates.
  • How do I present the evidence to Google or Meta for a refund? Export a report that lists each flagged click ID, timestamp, campaign name, and the specific signals that fired. BotRefund’s refund‑ready reports already follow the format Google and Meta accept.

Further reading and comparison sources

These BotRefund resources provide additional context for evaluating the topic.

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