Free User Agent Parser
Paste a user-agent string and see the browser, operating system, device, and engine behind it. Your own is filled in to start.
What it does
Every request your browser sends carries a user-agent header, a single line of text that tries to describe what is making the request. This parser takes that line and pulls it apart into the parts you actually care about: the browser name and version, the operating system and its version, the device type, and the rendering engine underneath. It also runs the string through the same bot detection the log analyzers on this site use, so you can tell at a glance whether you are looking at a real browser or a crawler pretending to be one.
How it works
There is no magic and no server. The parser is a set of regular expressions that look for the tokens browsers are known to put in their user-agent strings. It checks the specific, uncommon markers first, because so many clients copy each other. Edge and Opera both include the word Chrome, Chrome and Edge both include the word Safari, and Chrome on an iPhone reports itself as CriOS. Testing the rare tokens before the common ones keeps those lookalikes from being misread. When a field cannot be worked out, it reads Unknown instead of guessing. All of this happens in your browser in JavaScript, so nothing you paste is ever sent anywhere.
What a user-agent string is and how to read it
A user-agent string looks like a mess of words and numbers in parentheses, and most of it is there for historical reasons rather than honesty. Take a normal Chrome line:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36It starts with Mozilla/5.0, which every mainstream browser still sends for compatibility even though none of them are Netscape. The parenthesis holds platform details, so Windows NT 10.0 is the Windows kernel version, which the parser maps to the marketing name. AppleWebKit and KHTML are engine heritage tokens that Blink browsers kept when they forked. The real signal is near the end: Chrome/124 is the browser and version, and the trailing Safari/537.36 is another compatibility relic. Once you know which tokens matter, the rest is noise you can ignore.
How bots fake user agents
A user agent is just a header the client chooses to send, so anyone can set it to anything. Scrapers routinely copy a current Chrome string word for word to blend in with real visitors, which is why a clean browser breakdown here is not proof that a request came from a person. Well behaved crawlers do the opposite and identify themselves plainly, like Googlebot or Bingbot, because they want you to recognize them. The bots worth worrying about are the ones that lie. That is why this tool shows the browser breakdown and the bot check side by side: the breakdown tells you what the string claims to be, and the bot check tells you whether it matches a known automated client. To catch the fakers you have to look past the user agent and at behavior, such as request rate, the paths being hit, and whether the source IP really belongs to the company it claims.
Taking it further
Parsing one string is useful, but the real payoff comes from looking at all of them at once. If you want to find the bad bots hiding in your traffic, the guide to detecting bad bots in nginx walks through spotting fake crawlers, rate limiting the abusive ones, and verifying that a bot claiming to be Google actually is. When you are ready to run the numbers on a whole log file, head back to the main log analyzer, which breaks your access log down by browser, operating system, and bot versus human traffic using the same detection you just saw here.
User agent parser FAQ
Does anything I paste get uploaded?
No. The parsing runs in your browser with JavaScript. There is no server call and no account, so you can paste a user agent from a production log safely.
Why is my browser version slightly off?
Some browsers freeze or round parts of the string on purpose to reduce fingerprinting. Chrome, for example, reports macOS as 10.15.7 on newer hardware. The parser reports what the string says, which is the honest answer.
Can it tell Windows 10 from Windows 11?
No, and neither can any other parser. Both send Windows NT 10.0 in the user agent, so they are indistinguishable from this header alone.
Does no bot match mean it is a real person?
Not necessarily. A missing bot signature only means the string does not match a known crawler or tool. Since user agents are easy to fake, judging whether traffic is genuine needs behavior and IP checks too.