Every web request includes a User-Agent string that quietly advertises the visitor’s browser, operating-system, rendering engine and sometimes device model. Developers rely on this identifier to diagnose compatibility issues, deliver polyfills and gather analytics, yet modern strings are long, irregular, and often obfuscated.
This tool parses the raw string entirely in your browser, extracts meaningful tokens, and merges them with live properties such as platform, language and screen resolution. You can copy the results as CSV or JSON, or download them for incident reports and regression testing.
Paste the fragment into a diagnostics dashboard or share the exported file with QA to reproduce edge-case bugs on the exact client profile — remember that spoofed headers may produce misleading output.
User-Agent strings follow no universal grammar; vendors append version tokens, platform hints and localization codes in varying orders. A parsing library tokenises the string, then applies heuristic maps maintained by its community to infer browser family, major version, rendering engine and operating-system lineage. The tool freezes the result object to guarantee immutability and prevent accidental mutation during reactive updates.
Supplementary properties, such as navigator.platform
and window.screen
, come directly from the runtime environment, ensuring that spoofed or truncated strings still yield useful diagnostics.
Symbol | Meaning | Unit | Typical Range | Sensitivity |
---|---|---|---|---|
UA | Raw User-Agent header | string | 200–450 chars | High |
P_b | Browser family | enum | 30+ labels | Medium |
P_v | Browser version | semver | 1–125 | High |
P_o | Operating system | enum | 15+ labels | Medium |
NN_s | Screen resolution | px | 640×480 – 8K | Low |
device.type
token or explicit “desktop”.UA:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36
Browser: Chrome 125 Engine: Blink OS: Windows 10 Device: Desktop
The parser maps “Chrome/125” to the Chromium family and Blink engine, while “Windows NT 10.0” resolves to Windows 10.
navigator.userAgent
returns “Unknown” fields handled.The parsing step runs in O(n) with n equal to the header length. Numeric precision is irrelevant, but string allocations are capped by freezing the result object. All processing is client-side, so no network latency or privacy risk is introduced.
Follow this quick sequence to harvest a complete browser fingerprint for debugging or support tickets.
The parsing library updates regularly; obscure or very new builds may lack a signature. Export the JSON and create an issue upstream to improve detection.
No. All computation occurs locally and the tool never transmits headers, platform data or copies of your clipboard.
Yes; altering the navigator.userAgent
string—via dev-tools or extensions—changes the outcome, which is useful for regression tests.
No. The utility focuses solely on environment metadata and performs no network probes or script integrity checks.
Parsing runs once on mount, consuming negligible CPU time and memory; subsequent UI interactions are practically instantaneous.