Risk
Does this session look like fraud? Six kinds of evidence — network, device, speed, behaviour, track record and repeat visits — combined into one Allow, Review or Block result, with cut-offs you set for your own traffic.
THE PRODUCT
You are not buying 1,000 responses. You are buying 1,000 independent opinions. VerifyHuman measures whether you got them — checking traffic at the door silently, with nothing for respondents to do, and adding a camera check only where your study needs it. No images. No identity.
Public docs — no login required. Get a secret key when you're ready.
TWO SCORES, NOT ONE
Most tools collapse them into one number, which forces an argument about a single respondent. We answer both, separately — and neither score can move the other.
Does this session look like fraud? Six kinds of evidence — network, device, speed, behaviour, track record and repeat visits — combined into one Allow, Review or Block result, with cut-offs you set for your own traffic.
How independent is this response from the rest of your sample? A returning respondent is not a fraudster, and a sample can be shown to lack independence without accusing anyone of anything. This is the number a research buyer actually pays for.
THREE LEVELS OF PROTECTION
VerifyHuman checks for real people without interrupting them. You choose how much proof you want for each project — your respondents barely notice either way.
Your server sends us each respondent and gets back Allow, Review or Block, judged on their network, device and track record. Nothing is added to the page.
Nothing
A small script on your page also sees how the respondent behaves there and catches automated browsers — still nothing to see or do.
Nothing
A few seconds of camera to prove a live, unique person. Use it for a whole study, or turn on the option that lets an unsure silent check ask for it.
A short camera check
One platform, three levels. Start silent; add a camera check where a study needs it — or let an unsure silent check ask for one (an option, off by default) — so good respondents sail through.
How it works
It is one scoring system. A silent check on the Server API works from what your server sends us; the script on your page adds what it sees there; a camera check adds proof of a live, unique person. If you turn the option on, an unsure silent check on your page moves the respondent to a camera check.
FOUR WAYS TO VERIFY
Same platform, same results — Allow, Review or Block. Start as light as your study allows; a silent check on your page can optionally ask for a camera check when it is unsure (off by default).
Your server makes one call per respondent and gets back Allow, Review or Block, judged on network, device, speed, repeat visits and track record. No camera and nothing on the page. Fits where your current quality check runs.
Panels & supply you can’t put code on
Integrate itA small script on your page adds how the respondent behaves there and catches automated browsers, on top of everything the Server API checks. Still nothing to see and nothing to do.
Pages you own, zero friction
Integrate itOne click, then a camera check of a few seconds that confirms a live person is present.
Light biometric proof, barely-there friction
Integrate itA full camera check: a live face, short challenges when needed, protection against photos and replays, and a check that the same face has not taken part before. The strongest proof of a live, unique person.
Paid panels, high-incentive, fraud-sensitive
Integrate itTHE EVIDENCE WE REFUSE TO USE
A false rejection costs a panel a good respondent, an incentive, and a reputation. So parts of our system exist purely to throw evidence away.
People who used the same library or office computer are not a fraud ring. When a group of accounts only holds together through one shared device, we test for it and decline to score the group.
Two people with the same phone model and browser version produce the same device fingerprint. When an identity turns up on many unrelated networks — or in two places at once — we withdraw it entirely rather than accuse anyone.
“We checked and it was clean” and “we could not check” are different answers. We tell you which one you got, so a check that could not run never looks like a good result.
BUILT INSIDE A PANEL
A detection vendor sees one customer's traffic at a time. We sit inside a panel — so the models are tuned on the full width of real supply, across hundreds of sources.
EVERY WAY TO WIRE IT IN
The same verification, three places to run it: from your server, on your page, or with a survey link in the survey platform you already use. Every one returns the same result — Allow, Review or Block.
Check a respondent from your own server with nothing added to the page. Have results sent to your systems, or manage projects and keys from an AI assistant.
One script for every kind of site — then choose Silent, Quick camera check or Full camera check for each project.
A survey link works with any survey tool, no code needed; five platforms that accept custom JavaScript can also run the check inside the survey. Each respondent comes back to your survey with their result.
INTEGRATE IN AN AFTERNOON
For traffic where you can't add code to the page, check each respondent from your server, where your current quality check runs. Read recommendation and act on it.
POST https://vhuman.riwi.com/api/v1/lite/score
Authorization: Bearer <your secret key>
Content-Type: application/json
{ "sessionId": "<your-id>",
"clientIp": "<respondent-ip>",
"userAgent": "<respondent-ua>",
"sourceId": "<your-supply-source>" }
// → read response.recommendation (allow | review | block | step_up)Every field and value, how to hash respondent IDs, and how to send us outcomes are in the Server API scoring reference. Prefer to run it on your page? The SDK drops in with one script tag, React, Next.js or plain TypeScript.
BUILT TO BE TRUSTED
The camera picture is checked on the device and never leaves it — only face measurements that cannot be turned back into a face are sent. No photos are stored, and VerifyHuman never learns who anyone is — GDPR- and BIPA-aware by design.
By default, if VerifyHuman cannot be reached, the respondent continues and the response is marked for review. Fraud-sensitive studies can choose to stop respondents instead.
You set the score where Review and Block start, per traffic source. Tell us the outcomes you see and future scores use them. You keep both your response rate and your data quality.
Each score comes with the evidence behind it — every finding, whether it counted, and how the score was worked out at that moment. When a rejection is disputed, you get an answer instead of a shrug.
LEARN MORE
Choose one and set it up
OpenAPI reference and scoring
OpenReact, Next.js, HTML, TS
OpenMCP + the machine spec
OpenPricing is at /pricing. For an agent-readable spec, see llms.txt.
READY TO VERIFY
Sign up free and run VerifyHuman on your next study today. Or talk to us about embedding it across your survey infrastructure.