User-Agent Parser
Parse a User-Agent header into browser, OS, device, and engine information.
Parse a User-Agent header into browser, OS, device, and engine information.
How to use User-Agent Parser
- 1
Paste a User-Agent string into the input, or load your own browser's UA.
- 2
Read the parsed fields: browser, version, operating system, device, and engine.
- 3
Check the bot flag if you are auditing logs or unexpected traffic.
- 4
Remember the result is inferred, so treat a surprising classification with suspicion.
Real examples of User-Agent Parser in action
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0 Safari/537.36
Browser: Chrome 124 | OS: Windows 10 | Device: Desktop | Engine: Blink
Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 Version/17.4 Mobile/15E148 Safari/604.1
Browser: Safari 17.4 | OS: iOS 17.4 | Device: Mobile | Engine: WebKit
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Bot: Googlebot | flagged as crawler
Who is User-Agent Parser for?
Web developers debugging browser-specific bugs and UA sniffing
Analytics and growth teams cleaning device and browser data
Security and ops engineers auditing suspicious log traffic
QA engineers testing across real device and browser strings
Why use User-Agent Parser?
- Separates Chromium-based browsers (Edge, Brave, Opera, Vivaldi) from plain Chrome.
- Maps OS tokens like Windows NT and iPhone OS to readable names and versions.
- Flags common bot and crawler patterns, including HeadlessChrome and Googlebot.
- Splits a single messy UA into four clean, scannable fields.
- Parses everything in the browser, so the strings you paste are never uploaded.
Common use cases
- Debug user-agent sniffing logic that is misrouting certain browsers in your app.
- Audit access logs to understand which clients and bots are hitting an endpoint.
- Reproduce a bug by identifying the exact browser, version, and OS a user reported.
- Test responsive behavior against real-world UA strings instead of guessed ones.
How User-Agent Parser compares to alternatives
Honest comparison to other popular options — pick the right tool for the job.
| Tool | Main limitation |
|---|---|
| WhatIsMyBrowser UA parser | Comprehensive but ad-supported and sends your input to its server-side API |
| ua-parser-js library | Excellent in code but requires a build step and is overkill for a quick paste-and-read |
| Reading the UA by eye | Possible for experts but slow and error-prone given how deliberately confusing UA strings are |
| User-Agent Parser | Free, runs in your browser, no sign-up, no watermarks, no file-size limits beyond your device memory. |
Limitations & things to know
- Parsing is heuristic, so spoofed or exotic UA strings can be misclassified
- It reads the legacy UA only and does not use Client Hints, which modern browsers prefer
About User-Agent Parser
A User-Agent parser decodes the User-Agent string a browser sends in its request headers into readable fields: browser name and version, operating system, device type, and rendering engine. The UA string is one of the messiest pieces of the web. For historical compatibility reasons almost every browser still claims to be Mozilla, and Chromium-based browsers like Chrome, Edge, Brave, Opera, and Vivaldi all carry similar tokens, so telling them apart takes pattern matching rather than a simple lookup. This tool applies those patterns to split a UA into clean fields, distinguishes the major Chromium browsers from one another, maps OS tokens such as Windows NT, Mac OS X, iPhone OS, and Android to recognizable names and versions, and flags strings that look like bots or crawlers (Googlebot, bingbot, HeadlessChrome, and similar). It is important to understand what UA parsing can and cannot do, and this is the key gotcha: User-Agent parsing is heuristic, not authoritative. The string is sent by the client and is trivially editable, so it can be spoofed, and parsers infer the browser from known patterns rather than reading a verified fact. This tool matches the common real-world strings and is correct for the large majority of genuine traffic, but exotic, very old, or deliberately faked UAs may be misclassified, and a sophisticated bot can present a UA identical to a real Chrome on Windows. Two more caveats worth knowing: modern browsers freeze or reduce UA detail (Chrome reports a frozen version and pushes precise data to the separate Client Hints headers), and iPadOS often reports a desktop Mac UA by default, so an iPad can look like a Mac. Treat the output as a strong hint for analytics, debugging, and log auditing, not as proof of identity. The string you paste is parsed entirely in your browser and is never uploaded.
Frequently asked questions
Your files never leave your device
Every tool on Xevon Tools runs 100% in your browser. No uploads, no servers, no tracking. Free forever.
Embed User-Agent Parser on your site
Add this tool to your own website, blog, or internal tool page with one line of code. Free to use, no attribution required (but appreciated).
<iframe src="https://www.xevontools.com/embed/user-agent-parser" width="100%" height="640" style="border:1px solid #e2e8f0;border-radius:12px;" title="User-Agent Parser — Xevon Tools"></iframe>
