Skip to content
All fingerprint checks
Input & behaviour

The pointer never crossed a long distance in one report from rest

Pim· Clearcote Research 2 min readCheck id pointer-jump-from-rest

After at least 50 ms at rest, the next pointer report moves less than 100 pixels. A readout until calibrated against real visitors (severity: info).

What a detector infers

When a hand starts moving a mouse that has been still, the first reports cover a few pixels each as the movement builds up. A single DevTools-protocol mouseMoved event, by contrast, places the pointer at its destination in one report, however far away that is. This row looks for a pointer that was at rest for at least 50 ms and then crossed 100 pixels or more in its very next report; the pointer entering the page, or coming back to it after leaving, does not count.

Measured: Playwright's mouse.move produced single-report jumps of 943, 348 and 319 pixels, and a raw protocol event 361 pixels. What real visitors look like has not been measured — there is no human pointer data in this run — so the row is a readout until it can be calibrated.

There are honest ways to jump, too: eye-tracking and voice-controlled cursors, pen tablets in absolute mode, where the pointer goes wherever the pen touches down, and remote-desktop connections that drop intermediate reports. It complements pointer-movement-precedes-click and the approach rows, which ask whether a path existed; this one looks at its first step.

How to resolve it

Move the pointer along a path in many small reports — Playwright's mouse.move takes a steps option — rather than placing it at the target in one event.

What is behavioural bot detection?

Nearby checks in Input & behaviour

See all 13 checks in Input & behaviour
Who builds this test

Clearcote is a browser built for fingerprint coherence

It is a Chromium fork, maintained by the same people who wrote this reference. It ships as a compiled browser rather than as a stealth script injected into someone else's — which is a description of how it is built, and is not an argument about how it behaves on this check.

This audit takes no position on how Clearcote scores on Input & behaviour checks, on this one, or anywhere else. It has no baseline corpus of other people's fingerprints to rank you against and no vendor scoreboard — nearly every check is self-referential, asking one browser the same question through two independent APIs and reporting whether both answers can be true at once. It runs identically on any browser, including ours. Run it on yours and read the result yourself.

See the other checks in Input & behaviour — the family pointer-jump-from-rest belongs to.