User-Agent Header Parser & Client Detector

HOT

Parse User-Agent strings to extract browser brand, version, OS, device class, in-app webviews, and crawlers.

ADVERTISEMENT · TOP BANNER

Responsive 728x90 / 320x100 Ad Slot

(CLS Prevention Active · Zero Shift)
100% Client-Side Processing (Zero Server Upload, Complete Privacy)
Interactive Client Mode
User-Agent Parser & Device Inspector
User-Agent Header String
Web Browser
Google Chrome
Version: 128.0.0.0
Operating System
macOS
Version: 10.15.7
Device Class
desktop
Engine: Blink (WebKit fork)
Bot & WebView Status
Standard Client
Regular user browser environment
ADVERTISEMENT · HIGH CTR IN-FEED

Native In-Feed / High Viewability Ad Slot

(CLS Prevention Active · Zero Shift)

User-Agent Architecture, Token Parsing & Client Diagnostics

The User-Agent (UA) request header is an essential HTTP networking string transmitted by web browsers, mobile applications, web scrapers, and automated bots to identify their technical runtime environment to remote web servers. It encodes rich metadata encompassing client application families (Chrome, Safari, Firefox), layout rendering engines (Blink, WebKit, Gecko), host operating systems (Windows, macOS, iOS, Android, Linux), and physical device form factors (Desktop, Mobile, Tablet, Bot).

However, due to decades of defensive compatibility hacks originating from the 1990s Browser Wars, nearly all contemporary browsers still prepend `Mozilla/5.0` to their header strings and simultaneously advertise contradictory tokens like `AppleWebKit`, `Chrome`, and `Safari` in the same sequence. For example, modern Google Chrome on macOS transmits `Safari/537.36` at the tail end of its UA string. A naive substring check like `ua.includes('Safari')` mistakenly identifies Chrome users as Safari users. Robust token prioritization and regular expression parsing are strictly required.

The OrvoKit User-Agent Parser decodes convoluted client strings into clear, normalized data cards. It pinpoints embedded in-app social webviews (KakaoTalk, Instagram, Facebook), flags search indexing crawlers (Googlebot, Bingbot), and provides architectural clarity regarding modern User-Agent Reduction and the emerging Client Hints (`Sec-CH-UA`) ecosystem.

Hierarchical Token Matching & Engine Disambiguation

Deterministic regular expression matching logic designed to bypass legacy compatibility tokens and isolate true browser identities.

Browser Identity Disambiguation LogicMathematical Formulation
Browser = if (UA.includes('Edg/')) 'Edge'; else if (UA.includes('Chrome/') && !UA.includes('Edg/')) 'Chrome'; else if (UA.includes('Safari/') && !UA.includes('Chrome/')) 'Safari';

Processes proprietary tokens with higher specificity before falling back to generic engine signatures.

Parsing Microsoft Edge User-Agent on Windows 11
Raw UA IngestionMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ... Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0Multi-token payload
OS Evaluation'Windows NT 10.0' ➔ Windows 10 / 11 64-bitWindows 11
Engine Identification'AppleWebKit/537.36' ➔ Blink layout engineBlink (Chromium)
Priority Brand Check'Edg/122.0' detected; overrides preceding Chrome and Safari tokensMicrosoft Edge 122.0

👉 Correctly classifies the browser as Microsoft Edge despite the presence of Safari and Chrome compatibility tokens.

  • Brand Prioritization Pipeline: Evaluates modern derived forks (Edge, Opera, Vivaldi) before Google Chrome, and Chrome before Safari, preventing false positives from inherited engine tokens.
  • Embedded In-App Webview Detection: Pinpoints custom mobile app signatures including `KAKAOTALK`, `Instagram`, `FBAN/FBAV`, and `Line`.
  • OS & Kernel Mapping: Decodes `Windows NT 10.0` into Windows 10/11, resolves macOS version strings, and parses Linux distribution markers.
  • Bot & Crawler Isolation: Segregates indexing bots (`Googlebot`, `bingbot`, `DuckDuckBot`) from human interactive browser sessions.

Common User-Agent Signatures & Parsed Architecture Reference

Target ClientRepresentative User-Agent PatternParsed BrowserParsed OSDevice Form Factor
Chrome (Windows)Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ... Chrome/122.0 ... Safari/537.36ChromeWindows 10/11Desktop
Safari (macOS)Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 ... Version/17.3 Safari/605.1.15SafarimacOSDesktop
Mobile Safari (iPhone)Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 ... Mobile/15E148 Safari/604.1Mobile SafariiOSMobile
Chrome (Android)Mozilla/5.0 (Linux; Android 14; SM-S918N) AppleWebKit/537.36 ... Chrome/122.0 ... Mobile Safari/537.36Chrome MobileAndroid 14Mobile
KakaoTalk (iOS Webview)... iPhone OS 17_4 ... Mobile/15E148 KAKAOTALK 10.5.0KakaoTalk In-AppiOSMobile (WebView)
Googlebot (Search Bot)Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)GooglebotLinux (Bot)Search Bot
Bingbot (Search Bot)Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)BingbotWindows (Bot)Search Bot
Microsoft Edge (macOS)Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) ... Chrome/122.0 ... Safari/537.36 Edg/122.0EdgemacOSDesktop
ADVERTISEMENT · IN-ARTICLE CONTENT

High-Engagement In-Article Native Ad Slot

(CLS Prevention Active · Zero Shift)

How to Use

11. Paste UA String or [Detect My Browser]

Paste a raw User-Agent header from server access logs into the input field, or click [Detect My Browser] to instantly pull your active device configuration.

22. Inspect Deconstructed Diagnostics

Review parsed badges highlighting browser brand, version, host operating system, layout engine, and physical form factor (Desktop, Mobile, Tablet, Bot).

33. Check Webview & Crawler Flags

Examine whether the client represents an in-app social browser (Instagram, KakaoTalk, Facebook) or an automated indexing spider (Googlebot).

44. Export Normalized JSON Metadata

Click [Copy JSON] to export the structured schema for immediate integration into your Express, Django, Spring, or analytics log pipelines.

Real-World Engineering Scenarios for User-Agent Parsing

From breaking out of social webviews to analyzing web server security logs.

In-App Browser External Safari/Chrome Escaping

Detect embedded social webview tokens to trigger external OS browser launches for restricted file downloads or OAuth logins.

Auditing Scraping Bots in Nginx Access Logs

Filter high-frequency server logs to identify malicious spiders posing as genuine user desktop browsers.

Conditional Mobile App Store Redirection

Detect iOS vs Android clients on promotional landing pages to route users directly to the Apple App Store or Google Play Store.

Deprecated Browser Deprecation Notices

Identify users navigating via outdated Internet Explorer or legacy Safari versions and surface polite browser upgrade recommendations.

💡 User-Agent Engineering Pro Tips & Industry Trends

✓ Understand User-Agent Reduction Policies

Modern Chrome and Safari releases intentionally freeze and truncate OS and hardware details to prevent cross-site user fingerprinting.

✓ Leverage Client Hints (Sec-CH-UA)

When granular hardware architecture or model numbers are required, request structured `Sec-CH-UA-*` HTTP headers instead of relying on legacy UA parsing.

✓ Handle iPadOS Desktop Mode Correctly

Modern iPads default to sending desktop Mac Safari UA strings. Combine UA checks with `navigator.maxTouchPoints > 1` to reliably distinguish iPads from Macs.

✓ Never Treat User-Agent as a Security Boundary

HTTP headers can be trivial to spoof using cURL or developer proxies. Never authorize administrative access based solely on User-Agent inspection.

⚠️ Common Pitfalls & Mistakes to Avoid

❌ Naive includes('Safari') matching
✅ Chrome and Edge include 'Safari' for legacy compatibility; always evaluate Edge and Chrome before checking Safari.
❌ Assuming 100% stable device model strings
✅ Modern privacy initiatives actively randomize or freeze device tokens; avoid writing hardcoded model regexes.
❌ Classifying Googlebot mobile crawlers as human mobile traffic
✅ Check bot tokens first to ensure automated crawlers do not pollute human analytics funnels.
❌ Relying on UA strings for responsive layouts
✅ Prioritize modern CSS media queries and container queries over server-side UA-based CSS swapping.

Frequently Asked Questions (FAQ)

Expert answers to the most frequently asked questions and edge cases.

6 Q&As

It is a legacy compatibility artifact from the 1990s. When Netscape (codename Mozilla) pioneered modern web features, servers were configured to only serve pages to 'Mozilla' browsers. Competitors like Microsoft added 'Mozilla/5.0 (compatible; ...)' to their headers so servers would deliver identical content, a convention that persists across all modern web browsers today.

ADVERTISEMENT · FOOTER BANNER

Wide Responsive Banner

(CLS Prevention Active · Zero Shift)