Skip to content
Network

User-Agent Parser

Parse a user-agent string into browser, OS, and device.

useragentuabrowseros
Loading tool…

Recommended tools

Affiliate links — we may earn a commission if you sign up.

About the User-Agent Parser

Every browser request carries a user-agent string, a dense little declaration of browser name, rendering engine, operating system, and device, and most people only ever see it as an opaque wall of Mozilla/5.0 noise. The User-Agent Parser unpacks that wall in real time. Paste any string, or hit the Use my User-Agent button to capture your own browser's value from navigator.userAgent, and the tool immediately reports the browser name and version, the operating system with its release number where available, the underlying rendering engine such as Blink, Gecko, WebKit, or Trident, and a device-type classification of desktop, mobile, or tablet with a matching icon. The raw string is echoed back in a card below so nothing gets lost, and a Clear button resets the field whenever you are ready for the next one. Recognition covers Chrome, Firefox, Safari, Edge, Opera, Samsung Internet, and legacy Internet Explorer across Windows, macOS, iOS, iPadOS, Android, ChromeOS, Linux, and FreeBSD. Support teams triaging bug reports, web analytics folks cleaning browser dimension data, and QA engineers verifying what a client is actually sending will all find this browser detection utility a fast, local, and free way to decode UA strings.

Hand-written guide

Examples

Input
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
Output
Browser: Chrome 126.0.0.0
Operating System: Windows 10/11
Engine: Blink
Device type: Desktop
Note: Windows NT 10.0 maps to Windows 10/11 because Microsoft kept the same token across both releases.
Input
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
Output
Browser: Safari 17.5
Operating System: iOS 17.5
Engine: WebKit
Device type: Mobile
Note: The Version/17.5 token identifies Safari, the iPhone and Mobile tokens classify the device, and underscores in the OS token become dots.
Input
Mozilla/5.0 (iPad; CPU OS 16_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.4 Mobile/15E148 Safari/604.1
Output
Browser: Safari 16.4
Operating System: iPadOS 16.4
Engine: WebKit
Device type: Tablet
Note: iPad-only tokens route this to iPadOS rather than iOS, and the Tablet badge appears even though modern iPad strings include Mobile.

How to use

  1. 1

    The field auto-fills with your own navigator.userAgent on load; replace it by pasting any string into the User-Agent string textarea.

  2. 2

    Click Use my User-Agent to restore your browser's current string, or Clear to empty the field.

  3. 3

    Read the Browser, Operating System, and Engine stats; the browser value includes its version when one is detected.

  4. 4

    Check the Device type card for Desktop, Mobile, or Tablet with a matching icon.

  5. 5

    Scroll to the Raw User-Agent card to review the exact input you parsed.

Common use cases

  • Decoding the UA string from a support ticket to confirm which browser and OS a customer used.
  • Classifying traffic patterns during a bug investigation when analytics says "browser: unknown".
  • Verifying bot or crawler user-agents to decide whether a client deserves human-or-bot treatment.
  • Testing how your analytics or server-side logic will classify a new device before rolling out device-based logic.
  • Teaching junior engineers to read UA tokens instead of trusting vendor-prefixed browser detection.
  • Comparing the UA sent by different browser modes, such as Safari's desktop-on-iPad request, using the tablet classification.

Best practices

  • Never use UA parsing for security decisions; every token in the string can be spoofed with a single curl flag.
  • Treat the engine result as advisory, because browsers fake each other's engines for compatibility, which is why Chrome strings mention Safari.
  • Prefer feature detection in your own code and use tools like this only for diagnostics and analytics context.
  • Record the full raw string in bug reports, not just the parsed summary, so the exact tokens remain available for re-analysis.
  • Re-parse old strings when investigating historical traffic; conventions like Windows NT 10.0 change meaning over time.
  • Sanitize UA strings before storing them in logs; long spoofed strings carry noise, and truncating keeps dashboards readable.

Tips

  • Load the page from a phone or tablet and click Use my User-Agent to see your real mobile string parsed.
  • Paste several strings in a row and compare engine results to internalize how Chrome, Firefox, and Safari differ.
  • Clear the field before each new string to avoid mixing partial pastes.
  • Keep the Raw User-Agent card in mind for screenshots; it proves exactly which string produced the result.

Frequently asked questions

It is a compatibility artifact from the browser wars. Early servers checked for Mozilla to serve frames-capable pages, so every browser since has kept the token, and 5.0 simply followed. The parser skips it entirely and reads the meaningful tokens that follow, AppleWebKit, Chrome, Gecko, Version, and OS markers, to produce its results.

Explore more network tools

Browse the full collection of network tools on the hub, or jump back to all categories.

Related tools