Skip to content
Shrake DevTools
  • JSON FormatterData & Format
  • JSON ValidatorData & Format
  • JSON MinifierData & Format
  • JSON ↔ YAML ConverterData & Format
  • XML FormatterData & Format
  • Base64 Encoder / DecoderData & Format
  • URL Encoder / DecoderData & Format
  • JWT InspectorData & Format
↑ ↓ to navigate↵ to openEsc to close

User-Agent Parser

Runs locally in your browser. Your input is not uploaded.Free, no sign-up

Parse a User-Agent string into browser, engine, OS and device.

How to use the User-Agent Parser

  1. Paste a user agent from a log or header, pick an Example, or click Use my browser.
  2. Read the browser, engine, operating system and device type, and the notes on what the string can't tell you.

Why user agents are messy

Almost every browser starts with Mozilla/5.0 and mentions Safari and Gecko for historical compatibility, so the order of tokens matters: Edge includes Chrome/, Chrome includes Safari/. The parser checks the most specific tokens first.

  • User-agent reduction: Chrome and Edge now report only the major version (129.0.0.0), and freeze macOS at 10.15.7 and Windows at NT 10.0.
  • Client hints (Sec-CH-UA headers and navigator.userAgentData) carry the precise details in Chromium browsers.
  • iPads send a desktop Mac user agent by default, so they look like Macs.

Frequently asked questions

Should I use the user agent to detect features?

No. Test for the feature itself (e.g. 'share' in navigator); user agents can be spoofed and change often. They're best for analytics, logs and debugging.

How are bots detected?

With the open-source isbot list of crawler patterns. Bots that pretend to be browsers can't be detected from the user agent alone.