Developer Tools
Live

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.

Quick start: Paste a User-Agent string into the input, or load your own browser's UA. → Read the parsed fields: browser, version, operating system, device, and engine. → Check the bot flag if you are auditing logs or unexpected traffic.

How to use User-Agent Parser

  1. 1

    Paste a User-Agent string into the input, or load your own browser's UA.

  2. 2

    Read the parsed fields: browser, version, operating system, device, and engine.

  3. 3

    Check the bot flag if you are auditing logs or unexpected traffic.

  4. 4

    Remember the result is inferred, so treat a surprising classification with suspicion.

Real examples of User-Agent Parser in action

Chrome on Windows
Before
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0 Safari/537.36
After
Browser: Chrome 124 | OS: Windows 10 | Device: Desktop | Engine: Blink
Safari on iPhone
Before
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
After
Browser: Safari 17.4 | OS: iOS 17.4 | Device: Mobile | Engine: WebKit
Googlebot crawler
Before
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
After
Bot: Googlebot | flagged as crawler
Popular tools

Try our most-used tools

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.

ToolMain limitation
WhatIsMyBrowser UA parserComprehensive but ad-supported and sends your input to its server-side API
ua-parser-js libraryExcellent in code but requires a build step and is overkill for a quick paste-and-read
Reading the UA by eyePossible for experts but slow and error-prone given how deliberately confusing UA strings are
User-Agent ParserFree, 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

Not as proof. The UA is sent by the client and is trivially editable, so it can be spoofed. Parsing is heuristic, correct for most real traffic but unreliable as a security signal.
Since iPadOS 13, Safari on iPad requests desktop sites by default and sends a Mac-style User-Agent, so parsers (including this one) often report it as macOS rather than iPad.
It flags common bot patterns like bot, crawler, spider, and HeadlessChrome, which catches honest crawlers. Sophisticated bots can copy a real browser's UA and will not be flagged.
No. The UA string is parsed entirely in your browser with JavaScript, and nothing is transmitted.

Your files never leave your device

Every tool on Xevon Tools runs 100% in your browser. No uploads, no servers, no tracking. Free forever.

Learn more

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>
Share: