User-Agent Parser
Paste a user-agent string and see what it declares: browser and version, rendering engine, operating system, device type, and whether it identifies as a bot or an HTTP library.
Result
Paste a user-agent string above. Your own browser's is filled in automatically when the page loads.
Parsing happens entirely in your browser; nothing you paste here is sent anywhere. A user-agent is a self-declaration: this shows what the string claims, which is not proof of what sent it.
Why every browser claims to be Mozilla
User-agent strings are a fossil record. In the 1990s, sites served better pages to Netscape ("Mozilla"), so Internet Explorer declared itself Mozilla-compatible; every browser since has kept the prefix, then added its own layer of compatibility claims. That is why today's Chrome says Mozilla/5.0, AppleWebKit, KHTML, like Gecko and Safari, four other browsers' names, before its own. Parsing one means checking the most specific tokens first, which is how this tool works.
User agents and automation
HTTP libraries announce themselves by default: python-requests/2.31.0, curl/8.6.0, Go-http-client/2.0. Sites that filter automated traffic often read this header, alongside the IP and the rest of the request. If you are debugging why a scraper is treated differently from a browser, compare the user agent it sends against the one your browser sends: you can see both on the What Is My IP page, which shows the headers your client sent.
What a UA string cannot tell you
The header is freely chosen by the client, so it proves nothing on its own: a script can send a perfect Chrome string, and some privacy tools deliberately blur theirs. There are also built-in ambiguities: Windows 11 still reports Windows NT 10.0, and iPads on iPadOS 13+ describe themselves as Macs. Where the string cannot distinguish, this parser says so instead of picking a side.
More free tools
Request one URL from a datacenter IP and residential IPs at once, and see which of them gets blocked.
What your HTTP client gives away: header order, missing client hints, and contradictions with your user-agent.
Five questions and a straight answer, including when the answer is that you do not need proxies at all.
Your public IP address, the country it resolves to, reverse DNS and the headers your browser sends.
Derive how many proxies a job needs from volume, deadline, per-IP rate limit, concurrency and retries.
Check a path against a pasted robots.txt and see the exact rule that allowed or disallowed it.
Paste a curl command and read it back as Python, Node.js, Go or PHP, with the flags translated properly.
Turn a proxy host, port and credentials into working curl, Python, Node.js and Scrapy snippets.
Network address, broadcast, usable range and host counts for any CIDR prefix length.
Need proxies behind your code?
Node4 sells datacenter, rotating and residential proxies over HTTP(S), with SOCKS5 on paid plans. Datacenter and rotating exits are in the US, Italy and Spain; residential exits cover 170+ countries. Start with free proxies, no card required.