User-Agent Parser & Analyzer
Parse and analyze User-Agent strings online. Identify browser, version, operating system, device, rendering engine, CPU hints, bots, and Client Hints with batch parsing and JSON/CSV export.
Detection Summary(5 of 7 core signals identified)
Raw User-Agent Token Anatomy
Click on any token chip below to inspect its historical context and semantic meaning.
How to Use
What Is a User-Agent String?
A User-Agent (UA) string is an HTTP request header (and JavaScript property via navigator.userAgent) transmitted by web browsers, search engine web crawlers, AI scraping bots, and automated HTTP clients to identify their software application, operating system, rendering engine, and platform architecture to web servers.
Defined historically in RFC 1945 (HTTP/1.0) and modernized in RFC 9110 (HTTP Semantics), User-Agent strings were originally intended to allow web servers to tailor content, style sheets, and scripts for specific browser capabilities. However, due to decades of historical browser compatibility hacks and modern anti-fingerprinting privacy measures (such as User-Agent Reduction and User-Agent Client Hints), User-Agent strings contain layers of historical artifacts that require structured parsing.
How to Use the User-Agent Parser & Analyzer
ToolMono provides a 100% client-side, zero-telemetry environment to parse, analyze, compare, and audit User-Agent strings:
Paste any string or click Use My Browser's UA to analyze your active browser locally. The tool breaks down browser brand, major/minor version, operating system, device form factor, layout engine, and CPU architecture in real time.
Explore the color-coded token chips to understand why legacy tokens like Mozilla/5.0 and AppleWebKit/537.36 appear in modern Chrome and Edge strings.
Switch to the Batch tab to paste up to 500 server access log lines. Filter by bots, desktop, or mobile devices, search across properties, and download structured CSV or JSON audit reports.
Decode modern Sec-CH-UA headers under the Client Hints tab, or run side-by-side A/B diffs under the Compare tab to inspect changes between browser versions.
User-Agent String Anatomy & Token Breakdown
Modern User-Agent strings follow a standardized multi-part structure composed of product identifiers, version numbers, and parenthetical platform comments:
Browser & Version Detection Rules
Because Chromium-based browsers (Microsoft Edge, Opera, Samsung Internet, Brave, Vivaldi) and Safari share common tokens like AppleWebKit and Chrome, accurate parser implementations must evaluate browser signatures in a strict precedence order:
| Order | Browser | Primary Identifying Token | Disambiguation Logic |
|---|---|---|---|
| 1 | Microsoft Edge | Edg/ or Edge/ | Evaluated before Chrome to prevent misclassifying Edge as generic Chrome. |
| 2 | Opera | OPR/ or Opera/ | Evaluated before generic Chrome tokens. |
| 3 | Samsung Internet | SamsungBrowser/ | Distinguishes Samsung Mobile browser from Android Chrome. |
| 4 | Android WebView | Version/X.X ... Chrome/ | Identifies embedded app WebViews rather than standalone Chrome. |
| 5 | Google Chrome | Chrome/ or CriOS/ | Identifies genuine Chrome when no specialized Chromium fork tokens exist. |
| 6 | Mozilla Firefox | Firefox/ or FxiOS/ | Identifies Gecko-based Firefox on desktop and iOS WebKit Firefox. |
| 7 | Apple Safari | Version/X.X Safari | Requires 'Version/' and absence of Chrome/Edg/OPR tokens. |
Bot, Web Crawler & AI Scraper Detection
Automated web crawlers, search indexers, and AI training scrapers usually declare their identity in their User-Agent header:
Googlebot, Bingbot, DuckDuckBot, Baiduspider, YandexBot, Applebot, Sogou Spider.
GPTBot, ChatGPT-User, ClaudeBot, Claude-Web, PerplexityBot, Bytespider, CCBot.
FacebookExternalHit, Twitterbot, LinkedInBot, Slackbot, Discordbot, UptimeRobot, Pingdom.
Never use User-Agent headers as the sole mechanism to authenticate search crawlers or grant bypasses to paywalls and rate limiters. Malicious bots frequently spoof Googlebot. True verification requires performing a Reverse DNS lookup (rDNS) verifying that the client IP resolves to an official Google hostname (such as crawl-***.googlebot.com) followed by a forward DNS lookup.
User-Agent Client Hints (UA-CH) vs. Traditional User-Agent
To combat passive cross-site browser fingerprinting while still allowing developers to obtain essential client capabilities, the W3C and Chromium introduced User-Agent Client Hints:
| Feature | Traditional User-Agent | User-Agent Client Hints (UA-CH) |
|---|---|---|
| Format | Single unstructured string | Structured HTTP headers (e.g. Sec-CH-UA) |
| Default Exposure | Sent automatically on every HTTP request | Low-entropy hints sent by default; high-entropy requires server negotiation |
| Windows 10 vs 11 | Frozen at Windows NT 10.0 | Distinguishable via Sec-CH-UA-Platform-Version (≥ 13.0.0 = Win 11) |
| Grease / Anti-Sniffing | None (brittle regex matching) | Includes randomized GREASE brands (e.g. "Not?A_Brand") |
User-Agent Reduction & Freezing
Modern web browsers have implemented User-Agent Reduction to protect user privacy. In reduced User-Agent strings, specific high-entropy data points are deliberately frozen:
- macOS Version Frozen at 10.15.7: Safari and Chrome on macOS Big Sur, Monterey, Ventura, Sonoma, and Sequoia report
Mac OS X 10_15_7. - Windows Version Frozen at NT 10.0: Both Windows 10 and Windows 11 report
Windows NT 10.0. - Android Build / Minor Versions Replaced: Android UA strings often report generic device models or omit minor patch numbers.
- Chrome Minor Versions Set to 0.0.0: Chrome desktop UA strings format versions as
Chrome/148.0.0.0rather than exposing minor build revisions.
Step-by-Step User-Agent Breakdown Example
Let's trace how our parser evaluates a real-world mobile User-Agent string:
Mozilla/5.0, AppleWebKit/537.36, Chrome/148.0.0.0, Mobile, Safari/537.36) and platform parameters (Linux; Android 15; Pixel 9 Pro).Android 15 running on the Linux kernel.Mobile token, classifying the device as Mobile, and extracts the hardware model Pixel 9 Pro (Vendor: Google).Chrome/148.0.0.0 as Google Chrome Mobile powered by the Blink rendering engine.Common User-Agent Strings Reference Library
Browse representative User-Agent strings across popular platforms, browsers, and automated crawlers:
Frequently Asked Questions
What is a User-Agent string?▾
What does a User-Agent tell you?▾
How do I check my own User-Agent?▾
Can User-Agent strings be spoofed?▾
Can User-Agent detection identify a real person?▾
Can User-Agent detect bots and crawlers?▾
Why does every browser say Mozilla/5.0?▾
What is AppleWebKit in a User-Agent?▾
Why does Google Chrome's User-Agent contain Safari?▾
What is User-Agent Reduction?▾
What are User-Agent Client Hints (UA-CH)?▾
What is the difference between traditional User-Agent and Client Hints?▾
Should I use User-Agent detection for security decisions?▾
Can I parse multiple User-Agent strings at once?▾
Does ToolMono upload my User-Agent or server logs?▾
Authoritative References & Standards
Official specifications and vendor documentation on User-Agent semantics, Client Hints, and reduction:
Related Tools
Browse all toolsHTTP Headers Analyzer
Analyze HTTP response headers online, audit security headers (CSP, HSTS, CORS), inspect cookies, detect information disclosure, and review caching policies.
HAR File Analyzer
Analyze HTTP Archive (HAR) files online to inspect network requests, response times, status codes, payload sizes, redirects, headers, and performance waterfalls directly in your browser.
Robots.txt Validator
Validate and test robots.txt files online. Check syntax, Allow/Disallow rules, Googlebot access, URL crawlability, sitemaps, AI crawlers, and SEO issues with exact winning-rule explanations.
CORS Tester
Test CORS configuration online, diagnose browser cross-origin errors, inspect CORS headers, test preflight OPTIONS requests, and get actionable server fix recommendations.
Online URL Parser & Parameter Extractor
Instantly parse any URL online. Extract scheme, hostname, path, query parameters, and fragments directly in your browser with 100% client-side privacy.
JSON Formatter
Free online JSON formatter, beautifier, and validator. Format, indent, minify, and inspect JSON with real-time syntax error detection in your browser. 100% client-side.
Regex Tester
Test JavaScript regular expressions with live match highlighting, capture-group inspection, flags, and replacement preview. 100% client-side privacy.