A browser fingerprint is not a pre-existing device ID built into your computer. It is a recognition result that websites build by combining signals from your browser, operating system, screen, Canvas, WebGL, network, and more. This article breaks down how it is collected, where it is used, the risks it creates, and a layered approach to defending against it.
A website does not have to store a cookie on your device to tell that two visits may have come from the same one. Signals such as browser version, operating system, screen size, language, time zone, fonts, graphics rendering, hardware capabilities, and network characteristics can combine into a highly discriminative "browser fingerprint".
A browser fingerprint is not a fixed ID pre-installed on your computer, and it does not guarantee that every visitor is absolutely unique. More accurately, it is a recognition result produced by standardising, combining, hashing, and scoring a set of observable attributes. Websites use it to estimate how likely it is that the current visit came from the same browser or device as a previous one, and then apply it to security checks, anti-fraud, compatibility adaptation, statistics, or ad measurement.
The technology has legitimate uses, but it can also be used for cross-site tracking that the user never notices. The point is not to look for a switch that makes every field "completely disappear", but to understand which information is exposed, how different protection strategies reduce identifiability, and how to balance privacy, compatibility, and operational stability.
What exactly is a browser fingerprint?
A common browser fingerprint is composed of browser brand and engine, operating system, screen and window, time zone, language, regional formats, fonts, plugins, Canvas, WebGL, audio and media capabilities, network, and other attributes. This taxonomy is widely accepted in research and engineering practice. However, the claims that "every fingerprint is unique" or that "hiding one field prevents correlation" are both too loose.
A single field is usually not distinctive on its own. Many people use Windows, Chrome, and Chinese, for example; but once you add a specific window size, time zone, font list, GPU rendering differences, hardware concurrency, and network characteristics, the number of people who fall into the same combination drops noticeably. Identification systems also weigh signal stability: the browser version changes after an update, the mobile network IP changes, while some hardware and rendering attributes stay relatively stable.
A practical definition is therefore:
A browser fingerprint is a technique by which a website distinguishes, groups, or correlates a visiting environment based on the browser-visible software and hardware, configuration, rendering, and network signals.
A fingerprint may be stored as a hash value, or it may only serve as a set of inputs to a risk model. Two different hashes do not prove the visits came from different devices; two identical hashes do not, on their own, prove the visitor is the same person.
How is a browser fingerprint collected?
Collection generally falls into two categories: passive and active.
Passive fingerprinting
Passive fingerprinting uses information that the browser naturally sends when it opens a connection and requests a page. A website can see some of it without running complex scripts, for example:
- IP address, connection protocol, and request time;
- HTTP request headers, language, and compression support;
- User-Agent or User-Agent Client Hints;
- TLS handshake and network stack behaviour;
- Whether cookies are enabled and any existing session identifiers.
MDN's Client Hints guide explains that a server can use Accept-CH to ask the browser to send device, network, user-agent, or preference information on later requests. The default low-entropy hints include browser brand, platform, mobile state, and data-saver preference. Higher-entropy information is more restricted, but it can still increase identifiability.
Active fingerprinting
Active fingerprinting relies on JavaScript, CSS, or browser APIs in the page to run tests, such as asking the browser to draw graphics, measure font widths, query the GPU, or read media capabilities. It gathers a richer set of fields, but it is also more affected by script blocking, permission settings, and browser privacy policies.
A common flow is:
- Page scripts query the browser attributes they can reach.
- The raw results are normalised and cleaned of anomalies.
- Multiple fields are combined into a digest or feature vector.
- The new result is compared with history for similarity and stability.
- It is scored together with account, behaviour, IP, and cookie signals.
- The score decides whether to allow, require verification, restrict features, or log an analytics event.
Real systems rarely look at a single "fingerprint hash". Account history, behaviour rhythm, login location, and payment information are usually part of the same decision.
What information does a browser fingerprint include?
| Signal category | Common fields | Why they can change |
|---|---|---|
| Browser and protocol | Browser brand, engine, version, HTTP headers, Client Hints | Browser updates, privacy settings, varying server-requested hints |
| System and device | Operating system, CPU architecture, touch points, hardware concurrency, device memory | New device, virtual machine configuration, browser precision reduction |
| Screen and window | Resolution, available area, colour depth, zoom, window size | External displays, zoom changes, window resizing |
| Regional preferences | Language, regional format, time zone, date and number format | Travel, system settings, remote desktop or environment configuration |
| Fonts and extensions | Detectable fonts, content-blocking effects, extension injection signatures | New fonts, extension changes, browser-limited enumeration |
| Graphics rendering | Canvas, WebGL, GPU vendor and renderer, graphics precision | GPU, driver, OS, browser, and randomisation strategy |
| Audio and media | AudioContext output, codecs, number of media devices | Drivers, permissions, peripherals, browser policy |
| Storage and permissions | Cookies, LocalStorage, IndexedDB, permission state | Clearing site data, private sessions, permission changes |
| Network | Public IP, IPv6, DNS, WebRTC candidate addresses, TLS characteristics | Switching networks, proxy or VPN, protocol configuration |
Canvas fingerprinting
Canvas fingerprinting asks the browser to draw text or graphics, then reads the pixel result. Subtle differences in font rasterisation, operating system, GPU, driver, and browser implementation can all change the output. Canvas itself is a normal web graphics feature; disabling it outright can break charts, editors, captchas, or games.
WebGL and GPU fingerprinting
WebGL can expose the renderer, supported extensions, precision, and drawing results. Even when the page cannot read the exact hardware name, the rendering behaviour can still narrow down the device range. Newer interfaces such as WebGPU also require browsers to keep balancing features and identifiability.
Fonts, language, and time zone
The font list can reveal the operating system, language environment, and the user's installation habits. Mismatches between language, time zone, and the IP location are not necessarily fraud, since travel, remote work, and cross-border teams can cause them, but risk-control systems may treat them as signals that need to be checked against other evidence.
Network and WebRTC
A proxy or VPN can change the public exit IP the website sees, but it does not automatically change the screen, fonts, GPU, or browser configuration. WebRTC, IPv6, DNS, and the fallback path when a proxy fails can still present network information that differs from what you expect. A network privacy check should therefore cover normal connections, disconnections, node switches, and system network changes, not just a single IP query.
How is a browser fingerprint different from a cookie?
| Comparison | Cookie | Browser fingerprint |
|---|---|---|
| Where it lives | Written by the website into browser storage | Often observed in real time and combined on the server side |
| User control | Can be viewed, refused, or cleared | Hard to discover and remove field by field |
| Stability | Lost after clearing or expiry | Some signals persist after data clearing, but updates and device changes still alter them |
| Accuracy | The same cookie is usually an explicit identifier | Usually a probabilistic judgement, prone to false positives and false negatives |
| Cross-browser ability | Not shared across browsers by default | Some device signals are similar, but that does not guarantee cross-browser identification |
| Common defences | Cookie controls, partitioning, clearing | Reducing signal entropy, normalisation, randomisation, script limits, and environment isolation |
Clearing cookies can end some of the login and tracking state, but it will not change the GPU, screen, or font attributes. Conversely, lowering fingerprint distinctiveness will not automatically clear the accounts and cookies the website has already saved. The two classes of problem need to be handled separately.
What legitimate uses does browser fingerprinting have?
Browser fingerprinting is not only used for ad tracking. Common legitimate uses include:
- Account security: detect an unusual login environment and add verification for high-risk actions.
- Payment and anti-fraud: score device signals together with order, account, and behaviour data.
- Anti-abuse: spot automated attacks, credential stuffing, mass registration, or promotion abuse.
- Compatibility adaptation: choose graphics, video, or input schemes based on browser capabilities.
- Statistics and frequency control: estimate traffic, deduplicate events, or control display frequency.
Even these uses must follow the privacy and data protection rules of the relevant region, including stating the purpose, minimising collection, setting retention periods, protecting server-side data, and offering users appropriate choices. Needing security does not mean unlimited collection.
What privacy risks does browser fingerprinting create?
Cookie-less tracking is harder to notice
Users can see a website's cookie notice, but they usually cannot see which fonts, graphics, or hardware fields a script has queried. When the server only stores the combined result, there is no equivalent of "clearing cookies" for users to undo it.
Cross-session correlation
If a group of attributes stays relatively stable for a period of time, a website may still judge a new session as similar to an old one after logout or after clearing site data. If multiple sites share the same tracking service, the correlation range can expand further.
False positives and group bias
A fingerprint is a probabilistic signal. Company-issued devices, internet cafés, school computer rooms, and virtual desktops can produce similar environments; browser updates, accessibility features, or privacy tools can also change the same user's fingerprint. Treating a fingerprint as the sole piece of evidence easily leads to normal users being asked to verify again or being wrongly limited.
Combined with other data, the risk rises
Screen size alone may not be sensitive, but combined with account, location, visit time, shopping history, and behaviour data, identifiability rises. When you assess privacy risk, you should look at the full data chain rather than judging each field in isolation.
How can you reduce browser-fingerprint identifiability?
There is no one-click "invisibility mode" that works on every site while keeping every function intact. A more realistic approach is to reduce unnecessary exposure and cross-scenario correlation in layers.
1. Choose a browser with built-in fingerprint protection
Different browsers take different approaches. Tor Browser tries to make large numbers of users look more similar. Tor's anti-fingerprinting notes describe measures such as window-size bucketing and Letterboxing, User-Agent normalisation, font restrictions, Canvas read restrictions, and first-party isolation. It also reminds readers that fully disguising every operating system and piece of hardware is not realistic, and that excessive customisation can actually push a user into a smaller group.
Another approach is to subtly randomise some of the identifiable values. Brave's notes on fingerprint randomisation explain the idea of changing parts of the output per site or per session, so that a tracker cannot stably reuse the same result. Normalisation and randomisation each have trade-offs, and both can run into site compatibility issues.
2. Update your browser and avoid rare configurations
Old browser engines carry security risks and can also make you stand out because of the small size of their user base. Keep your browser and system up to date, and avoid installing extensions from unknown sources. Unusual fonts, exotic plugins, distinctive window sizes, and over-customised privacy parameters can hide one field while creating new ones.
3. Limit third-party scripts and site permissions
Your browser's tracking protection, content blocking, and third-party cookie partitioning can reduce some cross-site scripts. Camera, microphone, location, notification, and clipboard permissions should only be granted when genuinely needed. If strict blocking breaks login, payment, or editing on a trusted site, you can make a minimal exception for that specific site instead of turning all protection off.
4. Put different uses into different contexts
Personal social, work backend, payment, and casual browsing can use different browser configurations or independent environments, to avoid accidental mixing of cookies, LocalStorage, IndexedDB, cache, and extension state. The point of isolation is to control the data boundary, not to fake an identity.
When one person or one team needs to manage multiple authorised business accounts over the long term, environment isolation at the browser layer becomes especially important. PurpleMark's workspace can create a separate browser environment for each account, and each environment keeps its own operating system, User-Agent, resolution, time zone, fonts, WebGL and WebRTC, Canvas and audio fingerprint parameters, along with independent cookies, LocalStorage, extensions, and cache. That way every account sits in a reproducible browser environment that does not cross with others, and cross-account fingerprint correlation, cookie cross-use, and local-data mixing all drop as a result.
However, environment isolation only solves the data boundary at the browser layer. It does not change how a platform evaluates account information, content, behaviour, or relationship networks. Account authorisation, real information, content quality, and compliance requirements are still the foundation of stable operations. To set up a workspace like this quickly, you can open the PurpleMark web app, create your first independent environment, configure its fingerprint parameters for the account and region, and bind the account to that environment.
5. Manage network leakage separately
When you need to hide the public exit IP, choose a trusted proxy or VPN and check the actual behaviour of DNS, IPv6, and WebRTC. Enabling "block traffic when the proxy fails" is more controllable than silently falling back to the local network. Changing the IP only solves the network-layer problem, though; it does not remove the browser-layer fingerprint.
6. Understand the limits of incognito mode
Incognito or private windows mainly reduce the history, cookies, and site data left on your device after the session ends. During the session, the website can still see the IP, browser capabilities, screen, time zone, and rendering results. Incognito is meant for temporary sessions; it is not an anti-fingerprint mode.
How can you check your own browser fingerprint?
In a test environment where you have not logged into any sensitive account, you can use public detection pages to observe the fields your browser exposes. The more useful test is not to chase a "fully anonymous" score, but to do repeatable comparisons:
- Record the browser, system, network, and test time.
- Repeat the test in the same environment after a close and reopen.
- Compare again after a browser or system update.
- Switch networks and see which fields change with the exit IP.
- Use another independent environment to check whether cookies and local storage are isolated.
- Record any site function breakage, and weigh the cost of protection against compatibility.
A detection site can only show the fields it can collect; it cannot prove that other sites use the same script or the same risk model. The "unique" result it shows is also affected by the sample population and the time of the test, and is not a permanent identity conclusion. Likewise, a "common" result does not mean the data cannot be linked by other means.
What should companies keep in mind when using browser fingerprinting?
If a website collects device signals for login security or anti-fraud, the following principles are worth following:
- Only collect fields that match a clear purpose, instead of "collect everything first, figure it out later".
- Explain the purpose, retention period, and sharing scope in the privacy notice.
- Apply access controls to raw high-sensitivity signals, digests, and model outputs.
- Do not use the fingerprint as the sole evidence for blocking, refusing payment, or identifying a person.
- Offer second-factor verification, manual review, and appeal paths for abnormal results.
- Regularly check the model for false positives against shared devices, accessibility users, and privacy-browser users.
- Re-evaluate data flows and cross-border transfers whenever the vendor or SDK changes.
A reasonable device-identification system should help reduce risk rather than take away the user's right to know and to correct mistakes.
Frequently asked questions
Can a browser fingerprint really identify one person uniquely?
Not in any guaranteed way. It identifies the similarity of a browser or device environment, not a legal natural person. The same person can use several devices, and several people can share one device; fields change, and models can still misjudge.
Does clearing cookies delete the browser fingerprint?
No. Clearing cookies removes some of the identifiers and sessions stored on the site, but the screen, fonts, GPU, system, and browser capabilities can still be re-collected.
Will using a proxy or VPN stop fingerprint identification?
No. A proxy or VPN mainly changes the network exit; the browser-layer and device-layer signals are still there. You also need to check that DNS, IPv6, WebRTC, and the disconnection fallback behave as expected.
Is disabling JavaScript the most effective measure?
Disabling JavaScript blocks a lot of active collection, but it also makes many sites unable to log in, pay, or interact, and passive signals such as HTTP headers, IP, and TLS are still exposed. Outside of high-risk temporary scenarios, the browser's built-in tiered protection is usually a better fit.
Does more randomisation always mean more security?
Not necessarily. Frequently changing fields can disrupt stable correlation, but uncoordinated or extremely rare combinations also stand out and can trigger compatibility or risk-control problems. What matters is whether the randomisation is implemented systematically by the browser, whether the fields stay coordinated, and whether the target sites still work.
Can a fingerprint browser prevent all correlation and account bans?
No. It can isolate cookies, storage, proxy, and environment configuration and reduce the chance of data being mixed by mistake; the platform will also evaluate account information, content, payments, behaviour, and relationship networks. Compliant authorisation and stable operations are still the foundation.
Summary
A browser fingerprint is a combined identification technique built from browser, device, rendering, preference, and network signals. It can support account security and anti-fraud, but it can also become a hard-to-notice tracking mechanism. The key to privacy protection is not to make every field vanish, but to cut down unnecessary high-distinctiveness information, restrict third-party collection, control permissions, isolate different uses, and verify that the network and browser policies work as expected.
Treating a fingerprint as a probabilistic signal rather than an absolute identity helps users evaluate privacy tools more accurately, and pushes websites to keep review and correction paths in their security decisions.


