54+ Local Tools Available
100% Browser Execution (No Uploads)
Zero Latency Instant Output
100% Private & Secure
Developer & Data Client Local

User Agent Analyzer

A client-side developer utility that parses web browser User-Agent (UA) strings and Client Hints metadata in real-time. Accurately extracts browser name, granular version, host operating system (OS), device category (Desktop, Mobile, Tablet, Bot), layout engine, and CPU architecture, running entirely in your browser.

100% Local Browser Decoding: The User-Agent string you enter is never transmitted to any server — it is analyzed entirely and securely on your own device.

Client-Side, No Server Transmission

Not a single byte of your User-Agent or device data leaves your device. All regex matching and hardware API inspection run locally in your browser memory.

What is a User-Agent (UA) String?

An identification token transmitted in HTTP request headers, allowing web servers to identify client browser engines, operating systems, and device form factors to deliver responsive web content and polyfills.

HTTP Protocol & Client Identification Architecture Guide

User-Agent String Anatomy, RFC 7231 Specifications, and User-Agent Client Hints (UA-CH)

The User-Agent (UA) string is a legacy client identification header dating back to the 1993 NCSA Mosaic browser, formalized in HTTP/1.0 and RFC 7231 (now RFC 9110). Web servers analyze this header to perform mobile/desktop viewport branching, inject browser polyfills, and filter malicious automated crawlers.

Due to historical browser compatibility wars, modern UA strings contain redundant legacy tokens like Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36. This tool utilizes composite regular expression tokenizers to isolate authentic browser, engine, and OS properties.

Multi-Token Regex Parsing Engine

Accurately isolates the true browser product and version from tangled legacy prefixes like Mozilla, AppleWebKit, and Safari.

Next-Gen Client Hints (UA-CH) Integration

Analyzes modern high-entropy navigator.userAgentData properties alongside legacy UA strings.

Bot & Search Crawler Identification

Identifies automated crawlers (Googlebot, Bingbot) and categorizes device form factors (Mobile, Tablet, Desktop).

1. User-Agent String Anatomy & Token Structure

Technical breakdown of standard Chrome/Safari desktop UA string segments.

Token SegmentSample ValueTechnical Context & Purpose
Compatibility PrefixMozilla/5.0Legacy token asserting Netscape compatibilityStandard across all modern browsersPreserved for historical web compatibility
Platform & Host OS(Windows NT 10.0; Win64; x64)Host operating system, kernel version, and CPU bit widthPrimary indicator for OS detectionmacOS frozen to 10_15_7 for privacy
Layout EngineAppleWebKit/537.36 (KHTML, like Gecko)Rendering engine lineage derived from KHTML/WebKitCSS layout & parsing pipelineShared across Chrome, Edge, and Safari
Actual Browser ProductChrome/128.0.0.0 Safari/537.36Primary browser application identifier and major build numberIdentifies end-user browserAppends Edge, Brave, or Whale tokens

2. UA Freezing & The Transition to User-Agent Client Hints (UA-CH)

① Browser Fingerprinting & Privacy Concerns:

- Legacy UA strings exposed granular patch versions and chipset details, enabling third-party tracking scripts to fingerprint users across the web without consent.

② W3C & Google Chromium UA Reduction (Freezing):

- Major browsers now freeze OS minor versions (e.g. Mac OS X 10_15_7) and minor build numbers to standard baseline values.

③ Next-Gen User-Agent Client Hints (Sec-CH-UA):

- Servers now request high-entropy details explicitly via HTTPS response headers (Accept-CH: Sec-CH-UA-Platform-Version, Sec-CH-UA-Model) or JavaScript APIs (navigator.userAgentData.getHighEntropyValues()).

3. Multi-Language User-Agent Parsing Code Examples

JavaScript / Node.js (ua-parser-js)
// npm install ua-parser-js
const UAParser = require('ua-parser-js');

const parser = new UAParser(navigator.userAgent);
const result = parser.getResult();

console.log("Browser:", result.browser.name, result.browser.version);
console.log("OS:", result.os.name, result.os.version);
console.log("Device:", result.device.type, result.device.model);
Python 3 (user-agents library)
# pip install user-agents
from user_agents import parse

ua_string = "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X)..."
user_agent = parse(ua_string)

print("Browser:", user_agent.browser.family, user_agent.browser.version_string)
print("OS:", user_agent.os.family, user_agent.os.version_string)
print("Is Mobile:", user_agent.is_mobile)
print("Is Bot/Crawler:", user_agent.is_bot)
Nginx (Bot Filtering & Device Routing)
# Mobile redirection based on User-Agent
map $http_user_agent $is_mobile {
    default 0;
    "~*android|iphone|ipod|mobile" 1;
}

server {
    if ($is_mobile) {
        rewrite ^/$ /mobile/ permanent;
    }
}

Frequently Asked Questions (FAQ)

Q.Why does almost every modern browser UA start with "Mozilla/5.0"?

In the 1990s, websites built exclusively for Netscape Navigator (code-named Mozilla) blocked non-Netscape browsers. Internet Explorer and subsequent browsers added Mozilla/5.0 to assert full compatibility, creating a permanent convention.

Q.Why does Windows 11 report as Windows 10 (Windows NT 10.0)?

To maintain compatibility with legacy web applications, Microsoft and browser vendors froze the default UA OS string to Windows NT 10.0. Windows 11 is differentiated via the newer navigator.userAgentData Client Hints API.

Q.Why does macOS always show "Mac OS X 10_15_7" on newer versions like Sonoma?

Apple Safari and Google Chrome freeze the macOS version token to 10_15_7 across macOS 11 through 14+ as part of UA Freezing to reduce browser fingerprinting surface area.

Q.Is my User-Agent string logged or stored on external servers?

No. All parsing runs client-side in your local browser JavaScript runtime — no identifiers or logs are sent to a remote server.

Q.Can users forge or spoof their User-Agent string?

Yes. Browser DevTools (F12 > Network Conditions) and browser extensions allow users to freely override their User-Agent. Never rely solely on UA strings for security authentication.