Back to blog

What is browser fingerprinting? A complete guide to classification, identification principles and practical applications

Browser fingerprinting is how a website combines request headers, runtime environment, device capabilities and behavioral signals to determine whether an access environment is consistent or whether multiple users share the same origin. This article lays out the four dimensions—collection method, signal layer, state and stability—so that you can apply fingerprint knowledge to risk control, compliance and team environment management in practice.

To answer the most common question first: browser fingerprinting is a way for a website to collect multiple signals from requests, APIs, devices, environments and behavior, and then combine them to infer whether the access environment is consistent or whether multiple users share the same origin. It is not a single fixed "ID number"—it is a probabilistic judgment based on multiple observations. Any single signal such as screen resolution or browser version almost never reveals you on its own, but once you stack a dozen signals together, the chance of a unique combination drops fast.

The most useful way to understand browser fingerprinting is not to memorize a list of parameters, but to break it apart along four dimensions:

  1. How it is collected: passively received, or actively probed;
  2. Which signals it looks at: network layer, browser layer, operating system layer, screen layer, Canvas and WebGL, audio layer, API capabilities, behavior layer;
  3. Whether it has state: relying on local storage like Cookies, or able to identify without storing anything;
  4. How stable it is: relatively stable, or changing with windows, network or operations.

Once these four axes are clear, questions like "which signals should I care about", "why does the platform flag me as abnormal", and "how do I manage environments for multiple accounts" stop being guesswork. The sections below follow this order, and each one maps a real business action to specific fingerprint dimensions, so you can drop the points directly into a checklist.

Browser fingerprinting vs. Cookies: what is actually different

Many people treat fingerprinting and Cookies as the same thing, but they are fundamentally two different mechanisms.

DimensionCookiesBrowser fingerprint
Data sourceWritten by the website, stored in the browserAttributes that websites observe in requests, APIs and the device itself
Does a unique ID need to be written firstYes, the website must set itNo, the website does not need to write it first
Can the user delete itUsually by clearing browser dataNo single "fingerprint file" to delete; characteristics change but do not disappear with a cache clear
Identification methodReading a deterministic IDMulti-signal matching plus probabilistic judgment
Common usesLogin, shopping cart, preferences, analyticsRisk control and anti-fraud, unique visitor statistics, cross-session association
Main riskCross-site sharing and long-term trackingHard-to-detect, hard-to-control stateless tracking
Protection focusThird-party cookie isolation, SameSite, clearing cacheReducing exposed APIs, UA reduction, adding noise to read-back results

Mature anti-fraud systems do not rely on Cookies alone, nor on fingerprints alone—they judge by combining account, device, network, payment and behavior. Conflating the two mechanisms makes you blind to each one's blind spots: a "privacy browser" that only clears Cookies does almost nothing against Canvas-based device identification; conversely, scrambling Canvas noise while keeping the same login Cookie and IP segment still leaves the platform able to associate you.

Classification by collection method: passive vs. active fingerprinting

Passive fingerprinting

Passive fingerprinting is information that the browser sends or exposes anyway when it visits a website, and the website can obtain it without extra probing. Common signals include:

  • IP address and approximate geographic location;
  • User-Agent or User-Agent Client Hints;
  • Request headers such as Accept-Language, Accept-Encoding;
  • TLS handshake and HTTP/2, HTTP/3 protocol negotiation features;
  • Request order, cache behavior, network timing.

web.dev's explanation of browser fingerprinting defines passive fingerprinting as "information websites get by default." Most of this data is necessary for content negotiation, connection setup and secure operation, and browsers can almost never hide it completely.

The most representative example is User-Agent: it used to expose detailed operating system, device model and browser minor version, giving high distinguishability. The MDN User-Agent reduction guide notes that browsers supporting UA reduction actively reduce sensitive fields such as precise system version, device model and minor version, which compresses the passive fingerprint surface. If your environment still returns a full UA, you should first check whether your browser or fingerprinting tool is outdated.

Active fingerprinting

Active fingerprinting comes from page scripts that actively probe browser APIs, and it is the "deep layer signal" websites can obtain. Common items include:

  • Screen size, color depth, zoom factor, window size;
  • Time zone, language, preferred color scheme;
  • Font availability and text measurement results;
  • Canvas 2D drawing and pixel read-back results;
  • WebGL rendering, GPU vendor and graphics capabilities;
  • AudioContext output differences;
  • Coarse hardware capabilities such as CPU cores and memory;
  • Media devices, sensors, permission states;
  • API and feature combinations supported by the browser.

The advantage of active probing is that signals are richer and can distinguish more finely; the drawback is that browsers more easily detect, restrict, add noise to, or require permission for these APIs. The privacy protection features of major browsers are tightening this layer: limiting high-precision reads, adding noise to read-back results, and forcing permission prompts. A concrete example is font enumeration: many browsers now only return the system default font set, and third-party custom fonts are no longer enumerated.

To be clear: active fingerprinting is not a reliable "device ID"; it is one piece in a multi-feature profile. Treating a single Canvas read as a unique identifier is a common simplification in older material; modern browsers have dramatically reduced the distinguishing power of such signals. In practice, active fingerprinting usually needs to be combined with network layer and behavior layer to form a stable profile.

Classification by signal layer: what makes up a fingerprint

After understanding "passive vs. active", the next step is to look at what each layer actually contains. The nine layers below are the common signal layers from network to behavior, from low-level to high-level, and they are also the typical feature fields in a risk control backend.

1. Network and protocol layer

This includes IP, ASN, proxy type, TLS handshake, HTTP/2 frame settings and more. The value is in judging approximate location, network stability and abnormal access; but shared Wi-Fi, corporate NAT, mobile networks and proxies make many real users look similar, so IP alone can never equal a person. When the real business region and the proxy exit region disagree, this layer is the first to give you away.

2. Browser and request header layer

Browser type, version, rendering engine, language support, request header order, feature support and so on make up the protocol layer characteristics. Browser vendors keep reducing unnecessary high-precision UA information, but unifying everything would hurt compatibility, so the protocol layer fingerprint still exists. The default request header order differs between Chrome, Firefox and Safari, so an abnormal "Chrome UA + Firefox header order" is a clear risk signal.

3. Operating system and local configuration layer

System platform, font set, time zone, regional format, input capabilities, color scheme and accessibility preferences reflect local configuration. Each item on its own is mundane, but combined the distinguishability rises significantly. For example, a combination of "language preference zh-CN, time zone Europe/Berlin, keyboard input method de" is extremely rare for a real user and almost always indicates an assembled environment.

4. Screen and display layer

Screen width and height, available area, device pixel ratio, color depth and zoom settings are used for page layout, and are also commonly used as fingerprint signals. External monitors, remote desktops, and zoom changes can all change this part. The same computer looks like a different "device" to a platform when switching between a 4K and a 1080p monitor.

5. Canvas and font rendering layer

Canvas lets a web page draw a piece of graphics and then read the pixels; font enumeration uses text size measurement to infer which fonts are available. Differences in operating system, font library, graphics driver and anti-aliasing implementation lead to subtle differences in the output. Modern browsers add noise or limit precision, so it works as one of multiple features rather than as an absolute identity. A common misconception is that "a new computer will give you the exact same pixels"—in reality, on the same OS version, a driver update can also change Canvas results.

6. WebGL / WebGPU and GPU fingerprinting

WebGL can expose graphics capabilities, extension support, precision range and rendering details; the MDN WebGPU documentation notes that as a new-generation graphics interface, WebGPU exposes finer device capabilities. GPU and driver features matter for games, ad verification and high-security pages, but are similarly tightened by browsers. The GPU lists on mobile and desktop differ dramatically, which is a useful supplementary signal for judging "is this a real device".

7. Audio fingerprinting (AudioContext)

Audio fingerprinting usually lets the browser process a synthesized sound and then compares the floating point output and processing path. Like Canvas, it is more of a supplementary signal than a stable unique value. Firefox and Chrome produce different output at different sample rates, so "no audio difference" is also a hint of environmental authenticity.

8. Feature and API support fingerprinting

CSS, JavaScript, media formats, permissions and Web APIs supported by the browser also form a fingerprint dimension. Feature detection is needed for compatibility, but overly detailed capability enumeration expands the fingerprint surface. When an environment reports "supports AV1, HDR, HEVC, WebCodecs, desktop notifications, geolocation all at once", real users typically trigger permissions on demand, while "all on" is a sign of a virtual environment.

9. Behavior and interaction fingerprinting

Mouse trajectory, click rhythm, scrolling pattern, input speed, touch style and page dwell order form the behavior layer. It is closer to "user or automation behavior" than to "configuration", and is heavily influenced by task, device, mood and network. Risk control systems use it to detect abnormal automation, but be careful not to mistake "different from most users" for malicious—users of accessibility tools, beginners, and older devices all produce "abnormal" curves.

Classification by state: stateful vs. stateless tracking

Strictly speaking, browser fingerprinting usually means stateless tracking, but real systems mix multiple mechanisms:

  • Stateful tracking: relies on local storage such as Cookies, Local Storage, IndexedDB, cache identifiers, written by the website and stored by the browser;
  • Stateless tracking (fingerprinting): matches by browser, device, network and behavior, without depending on any explicit ID;
  • Hybrid tracking: first establishes a deterministic relationship with an account or Cookie, then uses fingerprinting to help detect abnormal logins, associate devices and recover sessions.

The WebKit tracking prevention policy describes fingerprinting as tracking based on user behavior and computing environment properties, and lists fonts, User-Agent, GPU, CPU, IP and TLS as possible vectors. It also distinguishes stateful, covertly stateful, navigation and cross-site tracking. In other words, mainstream engines treat fingerprinting by default as a stateless, covert, cross-session form of tracking.

For operations teams, this means: the account system's ID is the primary key, and fingerprinting only plays a "clustering" role when the ID is unavailable or suspicious. If you only change IP but not Cookie, you have effectively changed nothing; if you only change Cookie but not the environment, the account's behavior profile is still continuous.

Classification by stability: stable, dynamic and short-term signals

Many readers ask: "If I swap hardware, can the platform still recognize me?" That depends on signal stability. The three common stability levels are:

  • Relatively stable: hardware architecture, common fonts, GPU series, system platform—rarely change in the short term, but change after an upgrade or device swap;
  • Dynamic: window size, IP, network latency, battery, permission state, browser version, theme—change frequently;
  • Short-term event correlation: nearly simultaneous events across multiple pages, close timestamps, or short-term network behavior—used to infer session correlation, but with a higher false-positive risk.

"Stable" and "unique" are two different things. A signal can be very stable but identical for everyone (e.g., "all are Windows"), and a signal can be unique but change often (e.g., IP). Risk control systems usually trade off among differentiability, stability and privacy risk—which is also why a single Canvas value is neither enough to uniquely identify a machine nor something to ignore entirely.

In practice, to judge "will swapping the environment be detected", you can quickly cross-check with this table:

What you changedLayer affectedRisk control relevance
Only IPNetwork layerMedium (IP is dynamic, must be combined with other layers)
Change OS versionSystem layer + browser/UAHigh (affects multiple dimensions at once)
Change browser versionProtocol layer + APIMedium (version combination is distinguishing)
Change GPURendering layer (Canvas/WebGL)High (driver-level differences are obvious)
Change behavior rhythmBehavior layerMedium (must be combined with account and time)
Change nothingAllVery high (stable association)

Practical applications and boundaries of browser fingerprinting

Fingerprinting itself is neither good nor bad—how it is used decides that. Below are the most common real-world uses and their boundaries.

Account security and abnormal login

Unfamiliar environments, unusual regions, obviously different device combinations can trigger two-step verification, risk prompts, or restrictions on high-risk operations. Fingerprinting should be a risk signal here, not a direct basis for "banning the account"; otherwise the false-positive rate will be high. If a product blocks login directly based on fingerprinting without providing manual review, it will lose real users and the corresponding complaints at the same time.

Payment anti-fraud and abuse control

E-commerce and payment systems combine device similarity with order, payment method, shipping address and refund history to detect bulk registration, card theft and offer abuse. Multiple legitimate users may share one computer or one home network, so a manual review and appeal channel must be kept. Device clustering can only be a clue, not a "ban" conclusion.

Bot and automation detection

Page rendering differences, interaction rhythm and network behavior can detect abnormal automation. But assistive technologies, corporate proxies, remote work and low-performance devices can also look abnormal; it is wrong to equate "different from typical users" with "is a bot". A common counterexample: users of screen readers have mouse trajectories and click rhythms that obviously differ from average users, and systems should actively avoid false positives.

Login experience and device trust

With user authorization and controllable risk, device identification can reduce repeated verification in trusted environments. Users should be able to view logged-in devices, revoke trust, and receive abnormal alerts—this should be the baseline in any product that uses fingerprinting. Making "trust" an invisible, irrevocable black box is essentially shifting the cost of risk control onto the user.

Site compatibility and content adaptation

Browser and feature detection is used to choose the right video format, graphics capabilities or page logic. The best practice is to detect the required feature, not judge by the browser name, and certainly not to covertly extend compatibility data into a cross-site profile. if (canvas) draw(); is a reasonable use; if (ua.includes("Chrome")) track(); is an anti-pattern.

Statistics, advertising and cross-site tracking

Fingerprinting is widely used to estimate UV, associate advertising behavior, but the privacy risk is also the highest. Users often have a hard time detecting, clearing or refusing this kind of tracking. The MDN Web privacy page notes that fingerprinting distinguishes users by aggregating data points such as browser and fonts; modern browsers reduce identification by limiting access or adding noise. When choosing tools, operations teams should prefer tools that support transparent opt-out, session clearing and dimension limits—this is more sustainable than chasing a so-called "high recognition rate".

What the browser itself is doing: privacy protection versus precision

Major browsers are actively reducing identifiability. Common practices include:

  • Reducing the precision of User-Agent and device fields;
  • Restricting high-entropy information such as font enumeration, sensors and media devices;
  • Adding subtle noise to Canvas and other read-back results;
  • Making more users present a unified default value;
  • Requiring explicit user authorization for sensitive APIs;
  • Isolating third-party storage and blocking known tracking scripts;
  • Shortening the validity period of some states or identifiers.

The Firefox Enhanced Tracking Protection page lists protections for cross-site Cookies, known fingerprinting scripts and other tracking content. The stricter the protection, the more likely websites that depend on high-precision environment information will run into compatibility issues—which is why browsers have to keep trading off "privacy vs. functionality".

The most effective actions for ordinary users: keep the browser updated, enable built-in tracking protection, grant permissions carefully, minimize unnecessary extensions, and check site permissions regularly. Installing a pile of "anti-fingerprint" extensions is not necessarily safer—a rare configuration itself can increase your distinguishability. A real example: globally turning WebRTC off makes you one of a tiny minority of users, which becomes exactly the kind of target risk control systems look for.

Environment management in multi-account scenarios: from classification to execution

When a team has to manage multiple business accounts in a compliant way, "fingerprint classification" stops being an abstract concept and becomes a daily operation. Common requirements are:

  • Different accounts bound to independent browser environments;
  • Different environments using different proxy regions, languages and time zones;
  • Different members accessing designated environments according to authorization groups;
  • Operation logs that trace who did what and when;
  • Ability to transfer or clean up environments when an account is recycled or staff changes.

The essence of this management logic is turning fingerprint classification into a configurable, auditable workflow. Under compliance, what a browser environment management tool should do is not "impersonate someone else" but rather:

  1. Bind an account to a clearly defined environment (account + group);
  2. Make the environment's proxy, language, time zone, geographic location consistent with the real business region;
  3. Layer member permissions by "who can open which environments, who can change which settings";
  4. Make operation logs queryable, for after-the-fact review;
  5. Let window sync, RPA and other automation run under "explicit authorization, explicit frequency, explicit review".

In multi-account business scenarios, PurpleMark web app turns the workflow above into out-of-the-box capabilities: when creating an environment you can set operating system, kernel version, UA, resolution, language, time zone, geographic location, WebGL, WebGPU, WebRTC, Canvas, AudioContext, media devices, ClientRects, CPU/memory, font list and startup parameters; proxies are maintained separately and bound per environment; groups, sharing, transfer, member permissions and operation logs cover team collaboration; window sync and RPA can automate repetitive processes under compliance.

To be clear: the value of such a tool lies in putting account, environment, network and responsibility in the same workspace for long-term management—not in promising "absolute anonymity" or "bypassing risk control". Deliberately falsifying identity, evading bans or generating inauthentic activity can still violate platform rules, and ends up increasing account risk. What is actually stable: business region consistent with proxy region, device profile consistent with the target user group, behavior rhythm close to real people, with traceable records of changes.

Common misconceptions and decision checklist

These are the most frequent misconceptions we see in practice, listed up front so you can self-check:

  • "Just change IP and you have a new device." Wrong. IP is a dynamic signal; without changes in other layers you are running naked.
  • "It is fine to log in to the same account across multiple environments." Wrong. The account is the primary key; cross-environment logins directly create abnormal session association.
  • "The more random Canvas is, the better." Not necessarily. Excessive randomness deviates from the real device profile and is easier to flag as forged.
  • "Incognito mode = invisible." Wrong. Incognito mainly reduces local history; it does not change active or passive signals like Canvas, WebGL or TLS.
  • "More expensive proxies are safer." Not necessarily. IP pool quality, region consistency and stability matter more than unit price.
  • "A ban must be a platform mistake." Not necessarily. First confirm the environment is stable and the behavior matches expectations, then appeal on that basis.

FAQ

Q: Is a browser fingerprint a fixed "device ID"?

No. A fingerprint is a combination of multiple signals with no single fixed ID; browser upgrades, system setting changes, or turning on privacy protection can all drift the result.

Q: Can I clear my fingerprint by clearing Cookies?

No. Cookies are only one class of stateful identifier; clearing them does not affect browser, device, network and rendering signals. At the same time, fingerprints also change with the environment and are not permanent.

Q: Does changing IP count as changing fingerprint?

No. IP is just one of the network layer signals; without changing system, browser, fonts, screen, graphics and behavior, the platform will generally not treat it as a "new device".

Q: Can incognito / private mode block fingerprinting?

Incognito mode mainly reduces local history and session storage; it does not hide the environment information needed when visiting a website. Some browsers strengthen protection in private mode, but that is not the same as full anonymity.

Q: Is browser fingerprinting always accurate?

Not always. Shared configurations, browser protection, environment changes and data noise can all cause false positives or misses; security decisions must combine account, network, behavior and business evidence, with review and appeal channels.

Q: Should I use a fingerprinting browser for multi-account management?

It depends on whether the business complies with platform rules and is properly authorized. If the business is allowed and compliance is clear, using an environment isolation tool with a real proxy region and time zone is more stable and auditable than "installing a pile of camouflage extensions". If the business itself violates platform rules, no amount of tooling can close the compliance gap.

Q: How do I fix a WebRTC IP leak?

Prefer a browser environment that supports WebRTC policy control, restricting mDNS candidate addresses and srflx candidate addresses to the proxy exit segment; also check whether the page is getting your local intranet IP through WebRTC.

Q: Will inconsistent behavior rhythm be detected?

Yes. Bulk operations, fixed intervals, zero scrolling and similar features are easily captured by risk control. Within compliance, distribute the operation rhythm within a reasonable range and keep manual review checkpoints.

Summary

Browser fingerprinting is not a single parameter but a combination judgment across multiple layers of signals. By collection method it splits into passive and active; by signal source it splits into network, request header, system, screen, Canvas, WebGL, WebGPU, audio, API and behavior layers; by state it splits into stateful, stateless and hybrid tracking; by stability it splits into stable, dynamic and short-term events. Once these dimensions are clear, "which signals should I care about", "why does the platform flag me as abnormal" and "how do I manage environments for multiple accounts" stop being guesswork.

What really determines risk is not the fingerprint itself, but why it is collected, whether it is necessary, how users are informed, how long it is kept, and whether users are allowed to control it. For operations teams, compliant environment management and clear permissions are more reliable—and more sustainable—than chasing a so-called "perfect disguise".

References

  1. web.dev Browser fingerprinting
  2. MDN User-Agent reduction guide
  3. WebKit Tracking Prevention Policy
  4. MDN Web privacy
  5. Firefox Enhanced Tracking Protection
  6. MDN WebGPU API