Browser Fingerprint Viewer

See the signals your browser exposes for fingerprinting. Educational privacy tool — nothing is sent to any server.

Educational tool only. This page collects and displays your browser's fingerprint signals locally for learning purposes. No data leaves your browser. Fingerprinting is used by ad networks and trackers to identify users without cookies.
Signals Collected
Entropy (bits)
Uniqueness (1 in N)

A fingerprint canvas draws standardized text and shapes; the resulting pixel data is hashed to produce a near-unique device identifier. The hash below is unique to your GPU, driver, and rendering stack.

SHA-256 hash of canvas pixel data:

Computing…

WebGL exposes the GPU vendor and renderer strings, which are highly unique across device models. These are read via WEBGL_debug_renderer_info extension.

How to reduce your browser fingerprint and protect your privacy online.

Collecting browser signals…

What Is Browser Fingerprinting?

Browser fingerprinting is a tracking technique that identifies users without storing any data on their device. Instead of a cookie, it reads dozens of browser and hardware attributes — screen resolution, installed fonts, GPU model, language, timezone, and more — and combines them into a unique hash called a fingerprint. Because most people have different combinations of these attributes, the resulting fingerprint can be 90-99% unique across the global user population.

Unlike cookies, fingerprints cannot be cleared by deleting browsing history. They persist across private browsing windows. They even survive VPNs, because a VPN only changes your IP address, not your hardware or browser configuration. This makes browser fingerprinting a powerful — and controversial — tracking technique.

How This Viewer Works

This tool collects the same signals that commercial fingerprinting libraries (like FingerprintJS, Amplitude, or Amplitude) use, then displays them to you in a readable format. Everything happens locally in your browser's JavaScript engine — no data is sent anywhere. You can verify this by opening browser DevTools (F12), going to the Network tab, and confirming there are no outbound requests while the tool runs.

Signal Categories

  • Navigator signals — user agent string, browser language, platform, hardware concurrency (CPU core count), device memory, cookie enabled, Do Not Track preference, installed plugins.
  • Screen signals — screen width/height, color depth (bits per pixel), device pixel ratio (detects HiDPI/Retina displays), available screen dimensions.
  • Environment signals — timezone (Intl API), system language list, touch support (max touch points), session storage and local storage availability, IndexedDB support.
  • Canvas fingerprint — draws text and geometric shapes on a hidden canvas, reads the resulting pixel data, and computes a SHA-256 hash. GPU rendering differences produce slightly different pixels across devices.
  • WebGL fingerprint — reads the GPU vendor and renderer strings via the WEBGL_debug_renderer_info extension. Highly unique: a specific laptop model with a specific GPU driver produces a specific renderer string.

Understanding Entropy

Entropy, measured in bits, quantifies how identifying each signal is. A signal with 1 bit of entropy divides users into two equal groups (like a coin flip). A signal with 8 bits divides users into 256 groups. A screen resolution of 1920x1080 is very common, so it has low entropy. A GPU renderer string like "ANGLE (NVIDIA GeForce RTX 4090 Direct3D11 vs_5_0 ps_5_0)" is relatively rare, giving it high entropy. Summing entropy across all signals gives an estimate of how uniquely identifiable a browser is overall. A typical modern browser scores 15-20 bits, meaning it is unique among tens of thousands of users.

Canvas Fingerprinting Explained

Canvas fingerprinting exploits the fact that different hardware and software configurations render the same drawing instructions differently. The differences are in sub-pixel anti-aliasing, font hinting, color blending, and GPU rasterization. This tool draws a standardized set of text (including emoji and special characters), rectangles, arcs, and gradients on a hidden 200×50 canvas, then reads the full pixel data with getImageData() and hashes it with the Web Crypto API's SHA-256. The resulting 64-character hex string is your canvas fingerprint.

WebGL Fingerprinting

WebGL exposes two strings that identify the GPU: the renderer (the GPU model and driver version, e.g., "ANGLE (Intel Iris Plus Graphics 655 Direct3D11 vs_5_0 ps_5_0)") and the vendor (e.g., "Google Inc. (Intel)"). These are read via the WEBGL_debug_renderer_info extension. Some privacy-conscious browsers (Firefox with Resist Fingerprinting enabled, Tor Browser) return generic strings here to reduce uniqueness.

How to Protect Your Privacy

Complete fingerprint prevention is difficult without degrading browser usability, but several approaches help significantly. The Tor Browser standardizes most fingerprint signals so all Tor users look identical. Firefox with privacy.resistFingerprinting enabled rounds screen dimensions, randomizes canvas reads, and hides GPU info. Brave Browser adds random noise to canvas and WebGL reads each session. Browser extensions like CanvasBlocker intercept canvas reads and return slightly randomized data. None of these are perfect — a determined tracker can still narrow down users using timing, behavioral, and network signals — but they raise the cost significantly.

Legitimate Uses of Fingerprinting

Not all fingerprinting is malicious. Banks and payment processors use it as an additional signal for fraud detection — a login from an unusual device combination is more suspicious than one from a familiar fingerprint. Security products use fingerprinting for passwordless device recognition. Game anti-cheat systems use it to identify ban-evading accounts. CDNs like Cloudflare use bot signals (including fingerprint-like attributes) to distinguish real users from automated scrapers. The same technology that enables invasive ad tracking also powers legitimate fraud prevention.

Frequently Asked Questions

Browser fingerprinting identifies users without cookies by combining many browser and hardware attributes — screen resolution, GPU, language, fonts, and more — into a unique signature. It is 90-99% unique across users and persists through clearing cookies, private browsing, and VPN use. Ad networks and trackers use it to follow users across sites.
Canvas fingerprinting draws text and shapes onto a hidden HTML canvas and reads back the pixel data. Subtle differences in GPU rendering, anti-aliasing, font rasterization, and driver versions cause different devices to produce slightly different pixel values. Hashing the pixels produces a near-unique fingerprint for your GPU and rendering stack.
Entropy (in bits) measures how uniquely identifying a signal is. One bit halves the candidate pool. A signal with 18 bits identifies you among 1 in 262,144 users. Summing signal entropy estimates your browser's total uniqueness. Research shows most browsers score 15-20 bits — unique among tens of thousands of users.
No. This tool runs 100% in your browser. No data is sent to any server. Your fingerprint is collected and displayed locally for educational purposes only. You can verify this by opening the browser DevTools Network tab and confirming there are no outbound requests while the tool runs.
Use the Tor Browser (standardizes most signals so all users look the same), Firefox with privacy.resistFingerprinting enabled, or Brave with fingerprint randomization. Extensions like CanvasBlocker add noise to canvas reads. Common OS, common screen resolution, and fewer installed fonts also help. VPNs do not help — they only change your IP address.