Media Codec & MIME Type Fingerprint
Test which audio and video codecs your browser supports. Codec support varies significantly across browsers and devices, making it a useful fingerprinting vector.
window.fingerprint.codecs
What are Media Codecs?
Media codecs compress and decompress audio/video data. Support varies by browser, OS, and hardware. Trackers use codec combinations to identify devices—especially AV1, HEVC, and Opus support which indicates newer hardware.
Summary & Global Hash
Codec support overview and combined fingerprintGlobal Fingerprint
Combined hash of all codec support
Video Codecs
Supported video compression formatsAudio Codecs
Supported audio compression formatsCodec API Support Matrix Computing...
Comprehensive codec support across HTMLMediaElement, MediaSource, and MediaRecorder APIsHow Codec Fingerprinting Works
Different browsers, operating systems, and hardware support different codec combinations. For example:
- AV1 support indicates a newer browser or recent OS update
- HEVC (H.265) is supported on Apple devices but rarely on Windows/Linux
- Opus is supported on Firefox/Chrome but not older browsers
- FLAC support varies significantly across platforms
By testing dozens of codec combinations, trackers can narrow down your exact browser, OS version, and sometimes even hardware model.
Codec fingerprinting provides moderate entropy (4-8 bits typically). While not as unique as Canvas or WebGL, it's still valuable because:
- It's extremely stable—codec support doesn't change unless you update your browser/OS
- It's difficult to spoof without breaking media playback
- It correlates with other signals (OS, hardware, browser version)
- Testing is fast and doesn't require user permission
Codec fingerprinting is difficult to prevent because:
- Blocking codec detection breaks video/audio playback
- Spoofing codec support can cause media errors
- Privacy browsers (Tor, Brave) normalize codec support, but this may reduce functionality
Best practices: Use privacy-focused browsers with fingerprint resistance, keep software updated to match common configurations, and avoid browser extensions that add unusual codec support.