AZ Tools

User Agent Parser

Network

The User-Agent header is the messy, free-form string browsers send to identify themselves. This parser uses pragmatic regex matching (the same approach as ua-parser-js) to extract the browser name + version, rendering engine, OS + version, device type/vendor/model, and CPU architecture. Auto-fills with your current browser's UA on load. Useful for analytics debugging, bot identification, and understanding what your server logs are seeing.

Paste a User-Agent string above.

Parsing runs entirely locally. Regex-based — same approach as ua-parser-js, with simpler rules and recent bot signatures (GPTBot, ClaudeBot, PerplexityBot).

How to use

  1. By default, your own browser's User-Agent is parsed.
  2. Click 'Use current' to refresh from `navigator.userAgent`, or paste any UA string.
  3. Read the parsed fields. Bots get a special highlight.

Frequently asked questions

Why are user-agent strings so weird?
Historical compatibility hacks. Every browser pretends to be 'Mozilla/5.0' because old servers gated content on that string. Chrome adds 'Safari' because old WebKit detection used that. The cargo cult never ends.
Will Client Hints (UA-CH) replace this?
Slowly. Chrome is freezing UA contents (User-Agent Reduction) and offering structured Client Hints headers (Sec-CH-UA-*) as the replacement. For now, both coexist. This parser works on the legacy UA string.
How accurate is bot detection?
Reliable for honest bots (Googlebot, Bingbot, GPTBot, ClaudeBot — they identify themselves). Useless against bad-faith bots that spoof a desktop Chrome UA. For those you need behavioral fingerprinting or CAPTCHAs.
Why doesn't it show device model on iOS?
iOS user agents have not included a specific model since iOS 13 — they all say 'iPhone' or 'iPad'. Apple deliberately strips this for privacy. Server-side, you'd use a separate Client Hint or the screen dimensions to guess.

Related tools