- Where it ran
- On the production VPS, called remotely through the public tunnel — the same path your requests take. Not on a developer laptop, and not on a local loopback. Local numbers are consistently better and we do not publish them.
- What is being timed
- Solve time is from the solver accepting the task to producing a token or cookie bundle. Round-trip time — what your client observes — adds roughly 0.5 to 1.5s of network and queue on top, and is what the status page reports as p50.
- Warm, not cold
- Instances are warm: a long-lived real browser reused across tasks. That is the state a running provider is actually in. A cold start adds several seconds and would flatter nobody.
- Sample sizes are small
- The remote suite was 10 of 10 solved, with 3 to 5 runs per scenario. That is enough to see a 3x gap and not enough to argue about 0.2s. We publish the run counts rather than rounding them away.
- Competitor figures are theirs
- Every competitor number is the average that provider publishes, collected at the time of writing. We did not buy their credit and re-run their solvers, so treat those columns as a claim, not a measurement. Success rates are quoted only where the provider states one.
- What we did not test
- Sustained load, geographic spread beyond our region, and enterprise variants of reCAPTCHA and hCaptcha. Concurrency was measured separately: 10 tasks in 12.6s wall clock, about 0.8 solves per second on a pool of six.