Privacy researchPlan
A fixture you can describe exactly.And run again next year.
Device values here live inside the browser build rather than in JavaScript injected at page load, so what a detector reads is the engine's own answer and a study measures the browser instead of the patch. A persistent profile answers the same way on its five hundredth launch; a one-time profile answers with nothing carried in.
Work like this usually starts and stays on a plan. Enterprise starts at $5,000 and is about the fleet, the seats and the people behind it rather than a larger profile count.
- Signals in the build
- canvas · WebGL · WebGPU · audio · fonts
- Lifetimes
- persistent · one-time
- Read it yourself
- /tools/fingerprint
- Deployment
- self-hosted fleet
01The work
The work
Three properties a measurement fixture has to have
- Not an artefact
A patched browser measures the patch
Values produced by overriding getters have to be re-applied for every document and frame, and the surface underneath still answers with the engine value. A study run on that fixture is partly a study of the override. - Repeatable
A result you cannot re-run is an anecdote
The signature is a property of the profile bundle and the build rather than of the session, so the same profile presents the same canvas, WebGL, WebGPU, audio and font values on every launch. Repeat runs are comparable by construction. - Describable
A method section needs values, not adjectives
Which signals are set in the build, which are derived from the exit address, and which are left alone: all of it is documented and readable from the profile rather than inferred from behaviour.
02What carries it
What carries it
Four capabilities do the work here
Capabilities doing the work
- In-build signals
- Canvas, WebGL, WebGPU, audio, fonts, client hints, device metricsSet inside the browser build and the profile bundle: one source rather than two, with nothing re-applied at page load and no unpatched surface left to contradict it.
- Named lifetimes
- Persistent for repeatability, one-time for a clean roomA persistent profile is a fixture you return to. A one-time profile is a session that leaves nothing behind. Both are properties of the profile rather than steps in your harness.
- Automation over CDP
- A run is a script somebody else can executePuppeteer, Playwright or Selenium over CDP, plus a REST API and a typed SDK for creating and configuring the profiles a study needs. Fixture and procedure are both code.
- Self-hosted fleetOnly here
- Your infrastructure, your retentionThe fleet deploys onto machines you operate, which is what lets a lab run inside a network you control. What still talks to our cloud is account state and licence verification, and the security page says exactly what and when.
The fingerprint check on this site runs the same signal set in whatever browser you are reading this in and shows the values, plus the automation tells it can see. It stores nothing, and it is the cheapest way to decide whether this fixture is any use to you.
03Plan or enterprise
Plan or enterprise
A researcher runs on a plan; a shared lab does not
- PlansTypical herePick one and pay by card
- One person, a handful of fixturesProfiles, lifetimes and a script. A single study needs nothing more, and needs no conversation with sales.
- EnterpriseFrom $5,000
- A shared lab on infrastructure you controlSeats for a team, roles that separate who can change a fixture from who can read one, and a fleet deployed where your data policy requires it.
Neither a plan nor enterprise includes detector inventory, test corpora or panel data. This is the browser side of the experiment and nothing else.
Plans and enterprise run the same platform. The difference is who operates the fleet and how many people need a seat on it.
04Where it stops
Where it stops
Two things this page will not claim
- Not anonymity
This does not make anybody anonymous
It controls what a browser reports and where its traffic exits. It does not address account-level identification, network-level correlation, or anything a person types, and it is not a privacy product for end users. - One engine
Chromium and Android only
There is no Safari or Firefox engine and no iOS target, so a cross-engine study stops at the edge of this platform.
Where the mechanism is written down
Read your own browser first
The fingerprint check reports what a page can see about the browser you are using now. If those are the signals your work is about, the fixture on this page is the controlled version of the same thing.
- Signals
- canvas, WebGL, WebGPU, audio, fonts, client hints and device metrics, set in the build
- Repeatability
- the same bundle answers the same way on every launch
- Not claimed
- anonymity, other engines, iOS
The fingerprints reference documents which signals come from the build, which are derived from the exit address, and which are left alone. A method section can cite it.