Identify the Browser, Operating System, and Device Behind Any User-Agent String
Every time a browser, app, or crawler requests a page, it sends a User-Agent header that describes itself. That single string can tell you the browser name and version, the operating system, and whether the visitor is on a phone, tablet, or desktop. The problem is that real User-Agent strings are long, inconsistent, and full of compatibility tokens that look like noise. This User-Agent parser solves that by turning the raw string into clean, labeled fields in one click. It is useful whenever analytics look wrong, a page renders differently on mobile, or a bot is consuming your traffic. The tool runs entirely in your browser, so the string never leaves your device.
How to Parse a User-Agent String
- Copy the User-Agent string from your browser's developer tools, a server log, or an HTTP client.
- Paste it into the input field. The tool accepts the full header value exactly as sent.
- Click the parse button and review the breakdown: browser, browser version, engine, OS, and device type.
- Check the device classification — desktop, mobile, or tablet — against what you expect for that traffic.
- Use the parsed values to filter logs, segment analytics, or troubleshoot a rendering issue.
- Re-parse a fresh string whenever you suspect the data is stale; browsers change their tokens often.
Real Example: Input and Output
A support ticket reports that a page fails to load on a phone. Parsing the captured header reveals the exact browser version and OS so the team can reproduce the issue on matching hardware.
| Input User-Agent | Parsed Result |
|---|---|
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 | Chrome 126, Windows 10, desktop |
Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Mobile/15E148 Safari/604.1 | Safari 17.5, iOS 17.5, iPhone, mobile |
Tips for Reading Parsed Results
- Spoofing — User-Agent strings are client-supplied and can be faked, so treat them as a hint, never as a security boundary.
- Modern signal — Chromium browsers also send the
Sec-CH-UAheader with structured data; prefer it when accuracy matters. - Bots — crawlers often identify themselves clearly; a parser helps you recognize them before they skew your metrics.
- Don't gate content — never block features based on the User-Agent alone; use feature detection in code instead.
When to Use This Tool
- Analytics audits — confirm which browsers and OS versions actually visit your site.
- Support triage — identify the exact client from a pasted header in a bug report.
- Log filtering — separate bot traffic from human visitors in access logs.
- QA testing — verify that emulated devices send the headers you expect.
Frequently Asked Questions
What exactly is a User-Agent string?
It is a header that HTTP clients send with every request, describing the application, operating system, and device. Servers use it to tailor responses, though it is advisory rather than authoritative.
Why does every User-Agent start with Mozilla/5.0?
It is a legacy compatibility token. Modern browsers keep it so that older servers that once distinguished browsers by this prefix continue to serve standards-compliant content.
Can the parser tell me the exact device model?
Usually only the class — phone, tablet, desktop — because most User-Agent strings omit the model. Mobile Safari and some Android browsers expose more detail than others.
Can a User-Agent string be spoofed?
Yes, trivially. Any client can send any string, which is why you should never rely on it for security, rate limiting, or access control decisions.
What is the difference between a User-Agent and Sec-CH-UA?
Sec-CH-UA is a newer Client Hints header that sends the browser brand and version as structured data. It is harder to spoof in the same way and is the recommended modern replacement.
Why does the same browser show different results on different days?
Browsers update frequently and change their tokens, and some browsers randomize parts of the string to reduce fingerprinting. Re-parse fresh samples for current data.
How do I find my own User-Agent string?
Open the developer tools in your browser, switch to the Network tab, reload the page, and inspect any request's headers. The User-Agent value is listed there.
Is my User-Agent data sent to a server when I use this tool?
No. Parsing happens locally in your browser, so the string you paste is never transmitted or stored anywhere.