Skip to main content

Know which leads are people before anyone picks up the phone.

Botscope checks every form submission as it is sent and tells your backend whether a person sent it — no CAPTCHA. Your CRM keeps the people; the scripts never reach a sales call.

Seven days, tag-only. Nothing is dropped until you have seen the numbers.

A fake lead costs more than the click that brought it.

Forms on paid landing pages are filled by scripts, headless browsers and form-spam tools. Each one is paid for three times.

×1Your sales team calls it

Several dial attempts on a number nobody answers, a follow-up email, a note in the CRM. Multiply by every automated lead in a week.

267 calls89 leads × 3 attempts

×2Your CRM keeps it

Pipeline, conversion rate and cost per lead are all calculated over leads that were never people, so every report you read is off by an amount you cannot see.

$50 → $73reported CPL → real, same spend

×3Your ad platform learns from it

Smart bidding optimises toward whatever you report as a conversion. Report automated sign-ups and it goes looking for more traffic that behaves like them.

89false conversions taught

Figures from the example week below: 420 leads, 287 of them people, so the same spend buys a third fewer real leads. Yours come from your audit.

A week to see it, one setting to act on it.

The audit is the product running in tag-only mode. Nothing about your form changes for visitors.

  1. Add the script

    One script tag on the landing page. It signs a verdict into every form as it is submitted.

    ~5 minutes
  2. Check each lead

    Your form handler asks Botscope about each submission before it goes to the CRM. Send this part to your developer — or, on a form builder, wire it in Zapier or Make.

    ~10 min of a developer's time
  3. Tag for a week

    Every lead goes through as usual, marked with its verdict. Your team sees which "never answers" leads were never people.

    7 days
  4. Read the report, then decide

    Switch bots from tag to drop when the numbers convince you — or keep tagging.

    1 setting

What you get on day seven.

The audit report from your panel: how last week's leads split, why each automated one was flagged, and what calling them cost. Agencies get one per client site.

Free for the audit week. No card.

What it catches, and what it does not.

Worth knowing before the audit, so the number it gives you means what you think it means.

Caught

  • Scripts posting straight to your form handler without loading the page
  • Headless browsers and automation drivers filling the form
  • The same page view submitted over and over
  • Submissions from datacenter, proxy and Tor networks — flagged, so you choose

Not caught

  • Real people paid to fill forms by hand on ordinary phones
  • A real person who typed their number wrong
  • A real person who changed their mind before you called
  • Leads from native ad-platform forms (Meta Lead Ads) that never touch your page

Questions

How is this different from reCAPTCHA or Turnstile?

Those give the page a pass/fail and leave it there. Botscope answers your backend, at the moment of the submission, with a verdict, the reasons, and an action you configured — and keeps a record you can audit. A form posted by a script that never loaded the page has no token at all, and that is counted too. Nobody is asked to solve anything.

What about visitors with ad-blockers?

If our script was blocked, the lead arrives without a token. That is reported as "no token" and only ever tagged, never dropped, whatever your settings say — a missing token is evidence, not proof.

Will ad-platform reviewers see something different?

No. Every visitor, reviewer and crawler sees the same page. Botscope only decides what your backend does with a form submission.

Do you see our customers' personal data?

No. Your backend sends us the token from the form, not the form's contents. We store the verdict, the signals and a pseudonymous visitor id, for 90 days.

We run campaigns for clients. Can an agency use this?

Yes — each client's landing page is its own site in one account, each with its own audit report. Running the audit week across a few clients is the quickest way to show which campaigns are buying automated leads.

Send this to your developer.

One check per submission, before the lead goes to the CRM: about ten minutes in a PHP handler, one HTTP call from anything else, or a Zapier/Make step on a form builder. The answer is a verdict — human, suspect or bot — and an action from your settings: accept, tag or drop.

Show the integration

One file, no dependencies, PHP 7.4 and up — it fits a contact-form handler on shared hosting.

  • Fails open. No answer within two seconds and the lead goes through, tagged "unknown".
  • Form data stays yours. Only the token is sent — not the name, phone or email.
  • Report only real conversions. Fire the ads conversion on accept.

Download FormVerdict.php

// contact-form handler
$v = Botscope\FormVerdict::check($panel, $apiKey);

if ($v->shouldDrop()) {
    show_thank_you();   // the script learns nothing
    exit;
}

$lead['botscope_verdict'] = $v->label();
send_to_crm($lead);

if ($v->action() === 'accept') {
    report_conversion($lead);
}

Find out how many of last week's leads were people.

Seven days in tag-only mode on your own landing page. You keep every lead; you get the report.

After the week it stays on the same plan as any Botscope site — free up to 100K events a month, then priced by traffic. Or keep the report and leave. Pricing