SNITCHTESTGLOSSARY

Snitchtest vs CreepJS

CreepJS is the most aggressive public fingerprinting demo on the internet — a research-grade tool that reads attributes most trackers do not, runs timing attacks on permission APIs, and specifically detects browsers that are lying about their own identity. Snitchtest covers a smaller attribute set but presents results as a readable dossier with specific defensive recommendations. Here is the honest positioning of each.

Updated 2026-04-22 · 5 min read · Snitchtest editorial

Summary comparison

DimensionCreepJSSnitchtest
Attribute count80+ (research-grade)~20 (common vectors)
Experimental APIs?Yes (WebGPU, trust tokens, etc.)No — stable attributes only
Lie-detection?Yes (trust score)No
ReadabilityDense, technicalPer-attribute dossier
Defensive guidance?MinimalPer-attribute recommendations
Intended audienceSecurity researchersGeneral privacy-curious users
LicenseMIT, open sourceIndependent, not open source
Use case"What is the worst-case fingerprint?""What is leaking and how do I fix it?"

What CreepJS does that nothing else does

CreepJS's distinguishing feature is lie-detection. The tool runs consistency checks across related attributes: if your user agent claims Firefox but your permission-API timing matches Chrome, CreepJS flags the inconsistency. If your canvas hash matches Tor Browser but your WebGL renderer string shows an Intel GPU, CreepJS flags that too. The resulting "trust score" specifically penalizes browsers that attempt fingerprint spoofing without committing to it fully.

This matters because most real-world fingerprint defenses do some version of spoofing. Brave randomizes canvas output. Firefox's resistFingerprinting standardizes the user agent. Extension-based spoofers like Canvas Blocker change specific attributes while leaving others untouched. CreepJS is the only public tool that specifically looks for the telltale signs of partial-spoofing — and uses those as identifying signals in themselves. "The browser that lies about its canvas but tells the truth about its WebGL renderer" is its own fingerprint category.

The attribute breadth is also best-in-class. CreepJS probes APIs most trackers ignore because they are not yet widely deployed: WebGPU renderer metadata, trust-token implementations, offscreen canvas rendering paths, permission-query timing signatures. Any tool built in 2026 that claims "comprehensive fingerprinting" but does not include these vectors is incomplete. CreepJS includes all of them.

Where Snitchtest positions differently

CreepJS is a research tool. Snitchtest is a dossier. The distinction is in the output surface: CreepJS produces pages of dense technical readouts optimized for someone evaluating fingerprinting techniques; Snitchtest produces a plainer per-attribute breakdown optimized for someone who wants to understand their own exposure and take action.

The attribute subset Snitchtest reads is deliberately smaller. It covers the vectors that mainstream ad-tech trackers actually use in production — canvas hash, WebGL renderer, audio hash, font list, screen metadata, user agent derivatives, timezone, hardware concurrency. It skips experimental APIs because most vendors do not yet consume them. The trade-off is research completeness for actionability: Snitchtest tells you what specifically to change, CreepJS tells you what is theoretically possible.

Which should you use?

Credit where due

CreepJS and its maintainer abrahamjuliot have pushed the public understanding of fingerprinting further than any commercial effort in the past five years. Every tool in this space — Snitchtest included — benefits from the research CreepJS has made public. If you want to see what is actually possible with browser fingerprinting in 2026, CreepJS is the single most educational site on the internet.

Frequently asked questions

What is CreepJS?
An open-source fingerprinting research project by abrahamjuliot. The most comprehensive public demonstration of browser fingerprinting techniques, including lie-detection.
Why is CreepJS called "creepy"?
Because it reveals fingerprinting vectors most users have never heard of, and flags browsers that appear to be lying about their own attributes.
Does Snitchtest use CreepJS?
No. Snitchtest is independent with its own fingerprint-reading engine. The two share conceptual lineage only.
Which is more complete?
CreepJS in research terms; Snitchtest in actionable defensive guidance.
Should I run both?
For a privacy-focused user, yes. CreepJS for the worst-case picture, Snitchtest for the "what do I change" answer.

Related reading