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.
×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.
×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.
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.
-
Add the script
One script tag on the landing page. It signs a verdict into every form as it is submitted.
~5 minutes -
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 -
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 -
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.
Why automated
- No token — posted straight to the handler
- 51
- Bot verdict
- 31
- Token reused
- 7
Signals on non-human leads
- Datacenter network
- 38
- Headless browser
- 24
- Automation driver
- 17
- VPN
- 12
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.
// 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); }
POST the token the script put in the form — field botscope_token — with your site's API key. Send an empty token rather than skipping the call: a form without one is the commonest automated lead, and the audit counts it.
Each token is accepted once; a second use answers replayed.
POST /api/v1/verdict/verify X-Botscope-Api-Key: <site key> {"token": "<botscope_token from the form>"} → {"valid": true, "verdict": "bot", "action": "tag", "visitor_id": "…", "signals": {"headless": {"result": true}}}
Each checked lead can be sent to your webhook as a signed form.verdict event, so Zapier, Make or n8n can mark it in HubSpot, Pipedrive or a sheet by visitor id.
The check itself still has to happen: on a hosted form, make it the automation step that runs before the CRM record is created.
{"type": "form.verdict",
"data": {
"verdict": "bot",
"action": "tag",
"visitor_id": "…",
"signals": ["headless"],
"checked_at": "…"
}}
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