Skip to Content
ReferenceProfile Configs

BotBrowser Profile Configuration

This is the field reference for configurable subscription profile packages. Profile package authoring requires ENT Tier1; individual fields keep the availability listed below. Public legacy .enc files are read-only. For per-session changes, use the CLI Flag Directory.

Table of Contents


Configuration Priority

  1. CLI flags
  2. Profile configs
  3. Profile defaults

CLI flags have the highest priority. Keep profile defaults unless a persistent override is required.

Apply Configuration

When a supplied profile package permits configuration, place configs before the key block:

{ "configs": { "locale": "auto" }, "key": { /* ... */ }, "version": { /* ... */ }, "profile": { /* ... */ } }

Do not modify public legacy .enc files. BotBrowser accepts profile input from a file; shell process substitution and piped JSON are not supported. Use an absolute path when launching with --bot-profile.


Configurable Fields

Availability applies to custom values or behavior where noted. Core fields are available with the base profile capability.

Identity and Locale

FieldValuesDefault
languagesauto, or a language list such as en-US,en (ENT Tier1 custom)auto
localeauto, or a locale such as en-US (ENT Tier1 custom)auto
timezoneauto, real, or an IANA timezone (ENT Tier1 custom)auto
locationauto, real, or coordinates (ENT Tier1 custom)auto
browserBrandchromium, chrome, edge, brave, opera (ENT Tier2); webview (ENT Tier3)chrome
brandFullVersionBrowser-family full version (ENT Tier2)Empty
uaFullVersionChromium full version matching the active major (ENT Tier2)Empty
colorSchemelight, darklight
disableDeviceScaleFactorOnGUItrue, falsefalse

Timezone, locale, and languages derive from the proxy IP when set to auto.

Session and Behavior

FieldValuesDefault
disableConsoleMessagetrue, false (ENT Tier1)true
injectRandomHistorytrue, false, or a history count (PRO)false
enableVariationsInContexttrue, false (ENT Tier2)false
disableDebuggertrue, falsetrue
keyboardprofile, realprofile
alwaysActivetrue, false (PRO)true
mobileForceTouchtrue, falsefalse
portProtectiontrue, false (PRO)false

Proxy and Requests

FieldValuesDefault
proxy.serverscheme://username:password@hostname:portEmpty
proxy.ipProxy public IP (ENT Tier1)Empty
webrtcICEgoogle, or custom:stun:...,turn:... (ENT Tier1)google
customHeadersHeader object (PRO){}

Use --proxy-server for per-session proxy credentials. For SOCKS5 UDP and QUIC behavior, see UDP over SOCKS5.

Window and Screen

FieldValuesDefault
windowprofile, real, WxH, or a window objectMode-dependent
screenprofile, real, WxH, or a screen objectMode-dependent

Headless and mobile profiles default to profile-backed dimensions. Desktop headful sessions default to real dimensions. Configure window and screen together when overriding either value.

Rendering and Media

FieldValuesDefault
webrtcprofile, real, disabledprofile
fontsprofile, expand, realprofile
webglprofile, real, disabledprofile
webgpuprofile, real, disabledprofile
mediaDevicesprofile, realprofile
speechVoicesprofile, realprofile
mediaTypesexpand, profile, realexpand

Noise and Performance

FieldValuesDefault
noiseCanvastrue, falsetrue
noiseWebglImagetrue, falsetrue
noiseAudioContexttrue, falsetrue
noiseClientRectstrue, falsefalse
noiseTextRectstrue, falsefalse
fpsprofile, real, or a number (ENT Tier2)profile
timeScale1.0, or a number greater than 0 and below 1 (ENT Tier2)1.0
noiseSeed0, or an integer from 1 to UINT32_MAX (ENT Tier2)Profile default
timeSeed0, or an integer from 1 to UINT32_MAX (ENT Tier2)0
stackSeedprofile, real, or a positive integer (ENT Tier2)real
networkInfoOverridetrue, falsefalse

Video playback cadence is a CLI-only policy. See --bot-video-fps. JavaScript heap and storage quota policies are also configured at runtime through --bot-js-heap-size-limit and --bot-storage-quota.

Custom User-Agent (ENT Tier3)

Use these fields together with a --user-agent template:

FieldValuesDefault
platformWindows, Android, macOS, LinuxProfile value
platformVersionOS versionProfile value
modelDevice modelProfile value
architecturex86, arm, arm64Profile value
bitness32, 64Profile value
mobiletrue, falseProfile value

The browser keeps the User-Agent string, Client Hints, main thread, workers, and request headers aligned with these values.

WebKit-Family Profiles (ENT Tier4)

Use the supplied premium profile as the source of browser-family identity. Do not assemble WebKit-family behavior from standalone configs fields. Limit overrides to session-specific values such as proxy, locale, and routing. See WebKit-Family Profile Consistency.


Example Profile configs Block

{ "configs": { "languages": "auto", "locale": "auto", "timezone": "auto", "location": "auto", "colorScheme": "light", "proxy": { "server": "socks5://username:password@proxy.example.com:1080", "ip": "203.0.113.1" }, "window": "profile", "screen": "profile", "webrtc": "profile", "fonts": "profile", "webgl": "profile", "webgpu": "profile", "mediaTypes": "expand", "noiseCanvas": true, "noiseWebglImage": true, "noiseAudioContext": true }, "key": { /* ... */ }, "version": { /* ... */ }, "profile": { /* ... */ } }

Notes

  • The profile package and BotBrowser binary must use the same major version.
  • CLI flags override profile configs.
  • Omitted fields keep the profile default.
  • Keep browser-family and version values aligned with the active profile and Chromium major.
  • Use auto for geographic fields unless the session requires an explicit value.
  • Keep proxy credentials outside shared profile packages when they vary by session.

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

Updated