Loading…
Parse user-agent strings into browser, OS, and device. Use when debugging traffic; for live device data use device-information. Input: UA string. Returns parsed fields. 100% client-side.
User Agent Parser is loading — interactive editor will appear here. Use examples below to try instantly once loaded.
Press ? for keyboard shortcuts
User agent parser that extracts browser name/version, rendering engine (Blink, WebKit, Gecko, Trident), operating system (name, version, architecture), device type (mobile, tablet, desktop, TV, console), and bot/crawler detection. Includes 10 preset user agent strings (Chrome, Firefox, Safari, Edge, Googlebot, Bingbot, etc.), side-by-side UA comparison, and one-click copy as JSON.
User agent strings are long, cryptic, and inconsistently formatted. This tool parses them into readable structured data so developers can make device-specific or browser-specific decisions without manually parsing UA strings.
This tool is part of the DevStackIO platform — a collection of free online developer tools from DevStackIO. Browse more free developer resources on DevStackIO.
Web developers, analytics engineers, QA testers, and anyone who needs to understand what browser, OS, or device is behind a user agent string for debugging or analytics.
Paste a user agent string into the input field; the parsed result updates automatically.
Review the parsed fields: Browser (name, version, engine), OS (name, version, architecture), Device (type, vendor, model), and Bot (boolean + name).
Click a preset button (Chrome, Firefox, Safari, Edge, Googlebot, Bingbot, etc.) to load a sample UA string.
Use the Compare button to load the UA string into a side-by-side comparison view with another UA.
Click Copy JSON to copy the entire parsed result as a JSON object to your clipboard.
Check the Bot Detection section to see if the UA is identified as a known crawler with its specific name.
Input: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" → Browser: Chrome 120, Engine: Blink 120, OS: Windows 10 64-bit, Device: Desktop, Bot: NoInput: "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" → Browser: Googlebot 2.1, OS: unknown, Device: unknown, Bot: Yes (Googlebot)Can it parse iOS user agents? Yes
iOS Safari, Chrome, and other browsers are parsed correctly with OS name "iOS" and device model like "iPhone" or "iPad".
How accurate is bot detection?
It detects over 50 known crawlers (Googlebot, Bingbot, DuckDuckBot, Yandex, Baidu, Slurp, etc.) by matching patterns in the UA string.
Does it support custom UA databases? Not yet
the parser uses a built-in rule set updated for modern browsers.
What does "engine" mean?
Engine is the browser rendering engine (Blink, WebKit, Gecko, Trident) which determines CSS/HTML feature support independent of the browser vendor.
Authoritative specifications, standards, and in-depth reading for User Agent Parser.
Parse raw HTTP headers into readable name-value pairs. Use when debugging responses; for URL parts use url-parser. Input: header text ≤10MB. Returns table of headers. 100% client-side.
Split any URL into protocol, host, path, and query params. Use when inspecting URLs; for encoding query strings use url-encoder. Input: URL text. Returns component table. 100% client-side.
Calculate network, broadcast, and host range from CIDR. Use for subnet math; for geo lookup use ip-lookup. Input: IP/CIDR. Returns network details. 100% client-side.
Look up DNS records for any domain. Use when checking DNS; for IP geo use ip-lookup. Input: domain name. Returns A, MX, TXT records. 100% client-side.
Look up geolocation and ISP for any IP address. Use for geo data; for subnet math use ip-calculator. Input: IPv4/IPv6. Returns location and ASN. 100% client-side.
Generate Basic Auth headers from username and password. Use when testing APIs; for JWTs use jwt-generator. Input: credentials text. Returns Authorization header. 100% client-side.
Calculate IPv4 subnets, masks, and host counts. Use for IPv4 planning; for IPv6 use ipv6-calculator. Input: CIDR or mask. Returns subnet table. 100% client-side.
Convert IPv4 between dotted, hex, integer, and binary. Use for format shifts; for subnet math use ipv4-subnet-calculator. Input: IPv4 address. Returns all formats. 100% client-side.