Browser fingerprinting is a browser identification technique through a combination of unique signals that together yield an almost unique "print". Does not require cookies — works even in incognito.
Main signals (2026):
- Canvas fingerprint — draw a specific pattern, hash the result pixel-by-pixel. Different per device (GPU, driver, font rendering).
- WebGL fingerprint — GPU vendor + renderer + supported extensions.
- Audio fingerprint — generate a sine wave via AudioContext, hash the output.
- Fonts — what fonts are installed (enumerate via canvas measuring).
- Screen + colorDepth + pixelRatio.
- Timezone + locale + Intl preferences.
- Plugins, MimeTypes (deprecated but still used).
- Hardware: hardwareConcurrency (CPU cores), deviceMemory.
Combining 8-15 signals yields 97-99.5% uniqueness — you can be tracked without cookies.
Anti-detection: production scrapers use fingerprint rotation — a generator of real-looking canvas/WebGL hashes per request. Simply randomizing values is easily detected (impossibly inconsistent fingerprints).