ShotMark
Skip to Content

User Agent Detector

See your full user agent string and a parsed breakdown of browser, OS, and device.

Loading...

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 Safari or Firefox substrings. 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

  1. Open the page. The parser reads your current user agent string automatically.
  2. Read the User Agent String card and copy it with the inline copy button if needed.
  3. Inspect the four decoded cards below: Browser, Version, OS, and Engine.
  4. 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.

TokenWhat it identifiesExample
Mozilla/5.0Legacy compatibility prefix on every modern UAMozilla/5.0
AppleWebKit/<v>WebKit engine (also used by Chromium)AppleWebKit/537.36
Gecko/<v>Firefox rendering engineGecko/20100101
Chrome/<v>Chromium browser versionChrome/124.0.0.0
Safari/<v>Safari WebKit buildSafari/605.1.15
Edg/<v>Microsoft EdgeEdg/124.0.2478.97
Firefox/<v>Mozilla FirefoxFirefox/126.0
Windows NT <v>Windows OS releaseWindows NT 10.0
Mac OS X <v>macOS versionMac OS X 10_15_7
Android <v>Android deviceAndroid 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.36

The 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.

  • 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.
Like this tool?

ShotMark 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.

Private beta accessFounding pricing lockNo spam ever