User Agent Detector
See your full user agent string and a parsed breakdown of browser, OS, and device.
What is User Agent Detector?
A user agent string is the identification token a browser sends in the User-Agent HTTP request header to tell servers which browser, rendering engine, operating system, and device it is running on. Defined in RFC 7231 section 5.5.3, the string is a free-form sequence of product tokens like Mozilla/5.0, AppleWebKit/537.36, and Chrome/124.0.0.0, each loosely meant to identify one piece of software in the request chain.
This User-Agent parser reads the value from navigator.userAgent and surfaces the browser name, version, operating system, and rendering engine. Web developers, QA engineers, and analytics teams use it to verify how their site identifies a visitor and to debug feature-detection fallbacks.
Why use a User-Agent parser?
- See exactly what your browser claims to be. The parser shows the raw string and four decoded fields side by side.
- Debug device-detection libraries. When a server-side library mis-attributes a request, paste the value to see how the tokens resolve.
- Validate feature-detection fallbacks. Some legacy paths key off
SafariorFirefoxsubstrings. Confirm whether your UA still matches. - Spot User-Agent Client Hints freezing. Chrome now reports a frozen, generic UA and emits richer details via
Sec-CH-UA-*headers.
How to use the User-Agent Parser
- Open the page. The parser reads your current user agent string automatically.
- Read the User Agent String card and copy it with the inline copy button if needed.
- Inspect the four decoded cards below: Browser, Version, OS, and Engine.
- Switch browsers or toggle a UA override extension and reload to see the fields change.
User-Agent token reference
Browsers stitch a UA together from a handful of product tokens. The table maps the tokens this parser recognizes.
| Token | What it identifies | Example |
|---|---|---|
Mozilla/5.0 | Legacy compatibility prefix on every modern UA | Mozilla/5.0 |
AppleWebKit/<v> | WebKit engine (also used by Chromium) | AppleWebKit/537.36 |
Gecko/<v> | Firefox rendering engine | Gecko/20100101 |
Chrome/<v> | Chromium browser version | Chrome/124.0.0.0 |
Safari/<v> | Safari WebKit build | Safari/605.1.15 |
Edg/<v> | Microsoft Edge | Edg/124.0.2478.97 |
Firefox/<v> | Mozilla Firefox | Firefox/126.0 |
Windows NT <v> | Windows OS release | Windows NT 10.0 |
Mac OS X <v> | macOS version | Mac OS X 10_15_7 |
Android <v> | Android device | Android 14 |
How browsers identify themselves
Every major browser pretends to be several others for backwards compatibility. A modern Chrome UA on macOS:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36The Mozilla/5.0 prefix is a Netscape-era leftover. AppleWebKit satisfies WebKit sniffers. KHTML, like Gecko is Konqueror compatibility. Edge appends Edg/...; Opera appends OPR/....
All detection runs locally with navigator.userAgent. The value is read once on render and never transmitted.
Common use cases
- QA engineers verifying browser support claims. Confirm the version reaching staging matches the matrix you committed to support.
- Analytics engineers debugging segmentation. Spot why a session is bucketed as “Other” by checking which token the parser failed to match.
- Web scrapers tuning request headers. Capture a real browser UA to send from a scripted client and avoid trivial bot filters.
Frequently asked questions
What is a user agent string?
The value of the User-Agent HTTP header. It identifies the client software making the request, along with its version, engine, and operating system.
Can I change my user agent?
Yes. Every major browser lets you spoof the UA from DevTools, and extensions can override it for normal browsing.
Why does Chrome say Mozilla and Safari in its user agent?
Chromium kept the Mozilla/5.0 prefix and the AppleWebKit and Safari tokens so older UA-sniffing code still serves Chrome the modern HTML path. The tokens are compatibility scar tissue, not impersonation.
Is the user agent reliable for device detection?
No. Users can spoof it, browsers freeze parts of it for privacy, and emulators report the same string as real devices. Prefer feature detection or navigator.userAgentData.
What is User-Agent Client Hints?
A replacement for the free-form UA string. Browsers expose structured fields like Sec-CH-UA-Platform and only send high-entropy details when the server asks via the Accept-CH header.
Does this parser send my user agent anywhere?
No. The value is read from navigator.userAgent and parsed inline. Nothing is sent, logged, or stored.
Related tools
- HAR Viewer: Open and inspect HTTP Archive files captured from browser DevTools.
- Browser Info: Surface your browser, OS, language, and hardware capabilities.
- Browser Size: Live readout of viewport and screen dimensions.
- Local IP: Detect your local network IP via WebRTC.
Related tools
HAR Viewer
Drop a .har file and get a network timeline. Filter by status, method, or slow requests.
Open toolURL Parser
Decompose a URL into components and edit query params interactively.
Open toolUnix Timestamp Converter
Convert Unix timestamps to readable dates and back. Supports seconds and milliseconds.
Open toolShotMark captures what you do here, in one click.
The traces, payloads, and tests you run by hand? ShotMark grabs the whole bug and hands it to your AI agent.