User-Agent parser

Paste a UA string and the browser, engine, OS and device appear at once — or check whether it is a bot. No button, nothing uploaded.

How to use it

  1. Paste a User-Agent string into the box; the browser, rendering engine, operating system and device appear immediately, with no button to press.
  2. Use Sample to drop in a common desktop Chrome UA and see every field filled in. Anything you paste is read exactly as sent — the input is never rewritten.
  3. Known crawlers (Googlebot, Bingbot, Baiduspider, curl, …) are flagged as a bot, and the device type becomes “Bot” instead of being mistaken for a browser.
  4. Copy JSON to get the same result as a stable, language-neutral object — handy when you paste it into code or a ticket.

Example

User-Agent

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36

Result

{
  "browser": { "name": "Chrome", "version": "120.0.0.0" },
  "engine": { "name": "Blink", "version": "120.0.0.0" },
  "os": { "name": "Windows", "version": "10" },
  "device": { "type": "desktop", "vendor": null, "model": null },
  "isBot": false,
  "botName": null
}

The browser name, engine and OS stay in English on purpose (they are proper nouns); only the field labels around them are translated. Any field the parser cannot read comes back as “Unknown” rather than a guess.

Rules, limits and known issues

  • Parsing is heuristic, driven by controlled regular expressions — it aims to be correct on mainstream browsers, engines, OSes and devices, and to stay honest on the long tail.
  • Fields that cannot be determined are shown as “Unknown”; no vendor or model is invented. Bots expose no browser or engine.
  • Windows 10 and Windows 11 share the same UA token (Windows NT 10.0), so this tool reports “Windows 10” and cannot tell the two apart from the UA alone.
  • Android model extraction relies on the “Build/” marker; when it is absent the model is “Unknown” rather than guessed.
  • Up to 2,000 characters; above that an error appears instead of a truncated result. Nothing is uploaded, no history is kept, and there is no share link carrying your input.

Once you know the visitor, these are the usual next steps.