Skip to Content
Fingerprint ProtectionPerformance Fingerprinting

Performance Fingerprinting

Performance timing and execution speed create a hardware-level fingerprint. BotBrowser provides comprehensive protection against timing-based tracking.


Prerequisites


Quick Start

chromium-browser \ --bot-profile="/path/to/profile.enc"

Start with this launch to establish a clean baseline before adding extra overrides.

Overview

Performance and timing data can serve as a hardware-level fingerprint. BotBrowser provides comprehensive protection across all timing-related surfaces.


Configuration

Performance Timing Protection

Use --bot-time-seed for deterministic execution timing diversity (ENT Tier2):

# Each seed produces a unique, stable performance profile --bot-time-seed=42

This applies deterministic timing diversity across browser operations and navigation timing entries.

Timing Scale

Use --bot-time-scale to compress high-resolution timing intervals (ENT Tier2):

# Scale down timing intervals (range 0.80-0.99) --bot-time-scale=0.92

This emulates lower system load and reduces timing skew signals.

Frame Rate Control

Control frame rate behavior with --bot-fps (ENT Tier2):

# Use profile-defined frame rate --bot-fps=profile # Use native frame rate --bot-fps=real # Set specific frame rate --bot-fps=60

Network Information Override

Control network connection property values with --bot-network-info-override:

# Use profile-defined network info values --bot-network-info-override

This overrides network connection properties and corresponding Client Hints headers with profile-defined values.

Stack Depth Control

Control JavaScript recursive call stack depth with --bot-stack-seed (ENT Tier2):

# Match profile's exact depth --bot-stack-seed=profile # Use native depth --bot-stack-seed=real # Per-session depth variation --bot-stack-seed=42

How BotBrowser Provides Protection

BotBrowser provides protection across all performance and timing surfaces: operation timing, navigation timing, frame rate, network connection properties, stack depth, and CPU core scaling. The flags listed above can be combined for comprehensive coverage. --bot-time-seed and --bot-time-scale protect against different aspects of timing and can be used together.


Common Scenarios

  • Capture a baseline result using the Quick Start setup.
  • Change one relevant setting at a time and compare the new output.
  • Keep your final launch command documented so future checks are reproducible.

Troubleshooting / FAQ

ProblemSolution
Timing profile identical across instancesUse different --bot-time-seed values for each instance.
Frame rate doesn’t match profileSet --bot-fps=profile or specify a target rate like --bot-fps=60.
Network connection info shows real valuesEnable --bot-network-info-override to use profile-defined values.
Performance entries show real server timing--bot-time-seed redistributes entry timing. Verify it is set.

Next Steps


Related documentation: Advanced Features: Performance Timing Protection | Advanced Features: Stack Depth Control


Legal Disclaimer & Terms of Use Responsible Use Guidelines . BotBrowser is for authorized fingerprint protection and privacy research only.