User Agent Parser

100% private — runs on your device, never uploaded. Works offline once loaded.

Paste a user-agent string — or use your own, prefilled automatically — to break it down into browser, rendering engine, operating system and device type. Everything runs in your browser.

What a user-agent string tells you

Every browser sends a User-Agent header with each request — a single line that advertises the browser, its version, the rendering engine, the operating system and hints about the device. It is how servers and analytics tools guess what is on the other end of a connection.

The trouble is that the string is dense and historically messy. A modern Chrome UA still mentions Mozilla, KHTML, Gecko and Safari for backwards compatibility, none of which describe Chrome itself. This parser untangles that noise and reports the four facts people usually want: browser, engine, OS and device type.

How the parsing works

The tool applies an ordered series of regular expressions. Order matters because many browsers impersonate others: Edge includes Chrome and Safari tokens, Chrome includes Safari and AppleWebKit, and so on. By testing the most specific brands first — Edge, Opera, Samsung Internet, Firefox — before falling back to Chrome and Safari, it avoids the classic mistake of labelling every Chromium browser as plain Chrome.

Operating systems are matched from their own tokens and translated into friendly names — Windows NT 10.0 becomes Windows 10/11, and underscored Mac and iOS versions are converted to dotted numbers. Device type is inferred from mobile and tablet markers, with a separate check for known bot and crawler signatures.

  • Browser and version, resolving impersonation between Chromium browsers.
  • Rendering engine: Blink, WebKit, Gecko or Trident.
  • Operating system with a human-readable version.
  • Device type: desktop, mobile, tablet or bot.

Where UA parsing is useful — and its limits

Reading user-agents is handy for debugging a bug that only appears on one browser, for checking what your own environment reports, for reproducing analytics segments, and for understanding server logs where each line carries a raw UA string.

It has real limits, though. Users and tools can set any UA they like, so the value can be spoofed. Privacy features are also freezing and reducing the string — Chrome's User-Agent reduction and Safari's minimal UA mean fine-grained version and device data is disappearing in favour of Client Hints. For anything security-sensitive, treat the parsed result as an informed guess rather than proof.

Frequently asked questions

What are the four fields it reports?

Browser (with version), rendering engine, operating system (with version), and device type — the details most people extract from a UA string.

Why does my Edge or Brave show as something else?

Some browsers hide their identity behind Chrome tokens for compatibility. The parser detects explicit brand markers when present, but a browser that omits its own token will read as its Chromium base.

Can I test a user-agent that is not mine?

Yes. Clear the box and paste any UA string — from a log file, a bug report, or a device you do not have — and it parses instantly.

Why does the OS version look approximate?

Windows in particular no longer distinguishes 10 from 11 in the UA, so both report as Windows 10/11. Other systems map their internal version tokens to the marketing name.

Does it detect bots?

It flags common crawler and bot signatures such as Googlebot and Bingbot as the device type, but well-disguised bots can present as a normal browser.

Should I rely on this for feature detection?

No. For deciding what code to run, feature detection (checking whether an API exists) is far more reliable than parsing the user-agent.

Advertisement