Skip to main content

Overview

Device Fingerprinting returns two kinds of identifiers based on different hardware, browser, and network characteristics:
  • IDs
  • Fingerprints

IDs

IDs are based on a cookie, and they are guaranteed to be unique. IDs are good for identifying good users returning to your site. However, they are easily changed by bad actors who clear their cookies or use private browsing (incognito mode).

Fingerprints

Fingerprints are deterministically-generated hashes of various low-level signals. These do not depend on stateful storage or IP address, so they remain stable even in incognito mode or when a VPN is used. Fingerprints are usually stable for months or longer, including through routine browser updates. Rarely, a browser update changes low-level signals permanently, which results in new fingerprints. There are four different levels of fingerprints:
  • Visitor (most specific)
  • Browser
  • Hardware
  • Network (least specific)

Table of different identifiers

This table outlines the distinct qualities of each identifier. For more details on different fingerprint characteristics and usage with our /rules endpoint, see Setting Rules.
IdentifierDefinitionUse CasesUniqueness
Visitor IDA stateful cookie stored on the user’s device.Having a unique identifier for a user.Guaranteed unique
Browser IDCombination of Visitor ID and Hardware Fingerprint to create a clear identifier of a browser.Detecting stolen sessions; the browser ID should only be associated with a single hardware fingerprint.Guaranteed unique
Visitor FingerprintA highly unique set of diverse signals.Banning specific kinds of traffic in a cookie-less way.99.9% unique
Browser FingerprintA set of signals that identifies a browser on a specific kind of device.Banning an unusual browser configuration only used for abuse.Low
Hardware FingerprintA set of signals that identifies an operating system and architecture.Detecting mismatches between hardware fingerprint and capabilities.Low
Network FingerprintAlso known as TLS fingerprint: a set of signals associated with a particular network stack.Blocking programmatic access like Golang, Curl, or Node.Low

Using Fingerprints & IDs

You can set rules based on specific fingerprints to customize the behavior for specific devices. Fingerprints can also be tied to other user data to associate known hardware sets, browsers, and other attributes with your user base.
When determining which fingerprint to use for a given use case, consider a fingerprint’s uniqueness and stability.

Examples