rendertest / documentation

Documentation

A deterministic benchmark for browser-use / Computer Use / Operator-style agents. 30+ signals across event trust, trajectory, environment fingerprint, and rendering surfaces. Scoring runs client-side — rules are visible in the page source.

How it works

Visit https://rendertest.xyz/. The page runs ~30 deterministic checks against your browser and renders a 0–100 score plus a per-check pass / warn / fail breakdown. Score = 100 − Σ(weight × failure), where each check's weight reflects how strongly it indicates an automated agent.

Two halves contribute to the score:

Endpoints

GET /

Serves the analyzer page. No parameters. HTML only.

GET /ipinfo

Returns the visitor's public IP, country, region, city, ISP, ASN, and timezone via a server-side proxy of ip-api.com with a 6-hour LRU cache. The page uses this to render the network half of your report.

{
  "ok": true,
  "ip": "203.0.113.42",
  "country": "United States",
  "country_code": "US",
  "region": "Texas",
  "city": "Austin",
  "timezone": "America/Chicago",
  "isp": "Comcast Cable",
  "asn": "AS7922",
  "as_full": "AS7922 Comcast Cable Communications, LLC"
}

GET /health

Liveness probe.

GET /docs

This page.

Signal categories

CategoryExamplesMax weight
Environmentnavigator.webdriver, selenium markers, headless UA, document markers25
UA / PlatformUA vs navigator.platform, UA Client Hints mobile flag18
Displayscreen non-zero, DPR range, headless default sizes16
HardwarehardwareConcurrency, deviceMemory, touch points12
Renderingcanvas hash entropy, GPU renderer, audio sum, fonts22
Networktimezone vs IP country, language vs country, ASN class12
BehaviorisTrusted ratio, trajectory straightness, velocity CV, click dwell14
Privacycookies, localStorage, Function.toString native10

Scoring example

# the page outputs (client-side, never leaves the browser):
{
  "score": 87,
  "grade": "B — Looks human",
  "checks_summary": { "ok": 24, "warn": 4, "bad": 1, "total": 29 },
  "fails": ["chrome-runtime"]
}

License & source

Source is readable directly from the page (view-source:https://rendertest.xyz/). All scoring rules are deterministic and visible in the JavaScript — no obfuscation, no remote rule-evaluation. MIT.

Contact

Built by @andreehoan.

github.com/andreehoan @andreehoan on X