Parse User-Agent strings into browser, OS, device, engine. Free, private, runs in your browser.
100% private — your files never leave your browser. All processing happens locally on your device.
Every HTTP request your browser makes includes a User-Agent header — a string that tries to identify the browser, version, operating system, and sometimes the device. Servers use it to serve different content variants (mobile vs desktop), log analytics, detect bots, or apply compatibility workarounds. Parsing these strings by hand is error-prone; dedicated parsers like ua-parser-js handle the hundreds of edge cases.
User-Agent strings are famously convoluted. A modern Chrome string starts with 'Mozilla/5.0' (Chrome pretending to be Mozilla for compatibility), then mentions Safari and WebKit (for yet more compatibility), then finally names itself. This layering accumulated over 30 years of browsers pretending to be each other to trick websites into serving them the good content. Modern parsers untangle it all transparently.
Clients fully control what they send. Browser extensions spoof them, privacy tools randomize them, scrapers impersonate common browsers to avoid bot detection, and users can override them manually. Never use UA strings for security or gatekeeping — they're hints for serving better content, not proof of identity. For device detection, feature detection (checking `'serviceWorker' in navigator`) is always better than UA sniffing.
Google has been gradually replacing the User-Agent header with 'User-Agent Client Hints' — structured headers that separate brand, version, OS, architecture, and mobile-flag into distinct values. Chrome already freezes most of the UA string to a generic template and sends the real data via Sec-CH-UA-* headers when requested. This tool still parses legacy UA strings because they remain the dominant input for analytics, logs, and older software — but expect the format to shift over the next few years.
A string your browser sends with every HTTP request identifying itself — its name, version, operating system, and sometimes the device. Servers use it to serve the right content variant or count statistics.
No. Clients control what they send, and UAs are trivially spoofed by browser extensions, privacy tools, or automation scripts. Never use UA strings for security decisions — they're hints, not proofs.
Chrome has been gradually replacing User-Agent with structured 'User-Agent Client Hints' headers for privacy. This tool still parses legacy UA strings, which remain the dominant input format server-side and in log files.