User-Agent Parser

About the User-Agent Parser

A User-Agent string packs a browser's name, version, rendering engine, operating system, and device type into a single dense, hard-to-read line — often made worse by legacy compatibility tokens that browsers still include for historical reasons.

This tool parses any User-Agent string into clearly labeled fields: browser, engine, OS, device, and CPU architecture.

How it works

Common use cases

Frequently asked questions

Why do some User-Agent strings mention browsers they aren't?

For historical compatibility reasons, most browsers include legacy tokens like 'Mozilla/5.0' or even competitor names (e.g. Chrome includes 'Safari' in its User-Agent) — this is a decades-old web compatibility convention, not a sign the string is fake or wrong; proper parsing (like this tool does) looks at the full pattern, not just individual substrings.

Can a User-Agent string be spoofed or faked?

Yes — since it's just a header the client sends, any browser or script can set an arbitrary User-Agent value, so User-Agent sniffing should never be relied on for security decisions, only for optional feature detection or analytics.

Why does the Device field sometimes show empty vendor/model?

Desktop browsers typically don't include device vendor/model information in their User-Agent, since that's primarily meaningful for identifying specific mobile phones or tablets — an empty device field usually just means it's a desktop browser.

Is User-Agent detection reliable for feature detection?

Modern best practice favors direct feature detection (checking if a specific API exists) over User-Agent parsing, since browsers change their User-Agent strings over time and parsing rules can become outdated — this tool is best used for debugging and analytics rather than production feature-gating.

This tool runs entirely in your browser — nothing you enter is sent to a server. Read more in the Privacy Policy, or browse the full list of tools.