What is browser fingerprinting?

Browser fingerprinting is a technique for identifying or tracking a web user by collecting a combination of attributes exposed by the browser and device — without using cookies or persistent storage. These attributes include the user agent string, screen resolution, installed fonts, canvas rendering behavior, audio context properties, WebGL capabilities, timezone, and dozens of other signals. When combined, they form a pattern that is often unique to a specific device and browser configuration.

A fingerprint is typically expressed as a short hash — the "visitor ID" — computed by hashing all the collected signals together. Even without any cookies, many users can be re-identified across sessions if their fingerprint is stable enough. Understanding what data your browser exposes is the first step toward appreciating the scope of modern tracking techniques.

Tool description

This tool generates your browser fingerprint using FingerprintJS and displays the full breakdown of every signal that contributes to it. You can see your unique visitor ID, the confidence score, and the raw value collected for each individual component — from audio context settings to canvas hash to hardware concurrency.

Features

  • Full component breakdown: Inspect every signal used to build the fingerprint, including canvas, audio, fonts, WebGL, screen, timezone, and more — shown as structured JSON
  • Visitor ID display: See the final hashed visitor ID that websites using FingerprintJS would associate with your browser
  • Confidence score: A value between 0 and 1 indicating how reliable the generated fingerprint is likely to be across sessions
  • Algorithm version: Shows the FingerprintJS library version used to compute the fingerprint
  • One-click refresh: Regenerate the fingerprint at any time to see if values change between sessions

How it works

When you open the tool (or click Generate Fingerprint), FingerprintJS runs entirely in your browser. It collects dozens of browser and device signals, hashes them together into a stable visitor ID, and returns both the ID and the individual component values. No data is sent to any server — all processing happens locally.

Tips

  • If your confidence score is low, some components may have returned errors or unusual values. Check the component JSON for entries with an error key.
  • Comparing the component output between different browsers or devices is a practical way to understand which signals differ most between environments.
  • Private/incognito mode may produce a different visitor ID than a regular session, as some signals like storage-based caches are cleared.