
On this page
Browser fingerprinting is a technique that identifies and tracks a visitor by combining dozens of small, observable characteristics of their browser and device into a single distinctive signature. Unlike cookies, a fingerprint is built from data the browser exposes by default — User-Agent, installed fonts, canvas and WebGL rendering quirks, audio context output, screen resolution, TLS handshake order — and persists even when the user clears cookies or switches to incognito mode.
Quick facts
| Also known as | Device fingerprinting, passive fingerprinting |
|---|---|
| Common signals | Canvas, WebGL, AudioContext, fonts, TLS/JA4, HTTP/2 frames |
| Used by | Cloudflare, DataDome, PerimeterX, Akamai, fraud-prevention vendors |
| Cookie-free | Yes — fingerprints survive incognito mode and cookie clearing |
Code example
// A few of the signals a fingerprinting script collects and hashes.
const signals = {
userAgent: navigator.userAgent,
platform: navigator.platform,
languages: navigator.languages,
hardwareConcurrency: navigator.hardwareConcurrency,
deviceMemory: navigator.deviceMemory,
timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
screen: [screen.width, screen.height, screen.colorDepth],
// Canvas, WebGL, fonts and audio add many more entropy bits.
};
// These are combined into one stable hash that survives cookie clearing.
const fingerprint = JSON.stringify(signals);Related terms
Concept map
How Browser Fingerprinting connects
The terms most directly tied to this one. Hover a node to see its neighbours, click to preview, drag to rearrange.
Frequently asked questions
How unique is a browser fingerprint?
EFF's Cover Your Tracks finds that 80–90% of browsers have a fingerprint that's unique within their visitor set. The exact uniqueness depends on the depth of signals collected — fifteen well-chosen signals are enough to identify most users.
Does using a VPN change my fingerprint?
A VPN changes your IP, not your fingerprint. The canvas hash, TLS signature, screen resolution, and fonts are all the same. Sites correlate the VPN IP with the fingerprint and often flag the mismatch.
Can I spoof a browser fingerprint?
You can spoof any individual signal, but anti-bot vendors check internal consistency. Spoofing User-Agent without spoofing TLS, canvas, WebGL, and Audio in a matching way produces a fingerprint that doesn't exist in the wild — which is itself a strong bot signal.
What's a TLS fingerprint?
It's the JA3 or JA4 hash derived from the order and contents of the TLS ClientHello packet. Chrome, Firefox, Safari, curl, and Python's requests each have a recognizably different ClientHello — sites use this to spot non-browser clients regardless of User-Agent.
Last updated: 2026-05-28