User-Agent Parser
Paste a User-Agent string to see the browser, version, engine, operating system and device. Detects crawlers, AI bots and HTTP clients, and parses many at once.
Runs in your browser. Nothing you add is uploaded.
What the User-Agent Parser does
A User-Agent string is a fossil record of the web: it begins with “Mozilla/5.0” in every browser, names engines the browser only resembles, and is being deliberately frozen by Chrome and Safari to reduce tracking. This parser untangles it. Paste one string to see the browser and version, rendering engine, operating system, processor and device, and whether it belongs to a search crawler, an AI bot or a command-line tool. Paste a whole column from a server log to count what is visiting your site.
How to parse a User-Agent string
- Your own browser's User-Agent is filled in to begin with. Replace it with any string you want to check, or choose an example such as Googlebot or Safari on iPhone.
- Read the result tiles: browser, engine, operating system, device and processor.
- Check the notes underneath for caveats such as a frozen macOS version or a reduced Android device name.
- Open “Reading the string, piece by piece” to see why each token is there.
- To analyse traffic, switch to “Many at once”, paste up to 500 lines from a log and copy the parsed table as CSV.
The User-Agent Parser runs entirely in your browser — nothing you enter is uploaded, stored, or logged.
When to use it
Identifying bots in your server logs
Googlebot, Bingbot, GPTBot, ClaudeBot and SEO crawlers all identify themselves in the User-Agent. Parse a log column to see how much of your traffic is automated and which operator it comes from.
Debugging a browser-specific bug
When a customer reports a problem, their User-Agent tells you the exact browser, version and operating system, which is usually the first thing you need to reproduce it.
Checking what an HTTP client sends
Libraries such as python-requests, curl, Go's net/http and OkHttp announce themselves. Some APIs block or rate limit those defaults, so it helps to know what you are sending.
Good to know
- Do not use the User-Agent alone for security decisions. It is trivially forged.
- To verify Googlebot, reverse-resolve the IP address and check it belongs to googlebot.com or google.com, then resolve forward again.
- Brave, Arc and other Chromium browsers intentionally send the same string as Chrome.
- On iPhone and iPad, every browser uses Apple's WebKit engine, so Chrome for iOS reports WebKit.
- Prefer feature detection in your code over sniffing the User-Agent.
Frequently asked questions
Can I trust a User-Agent to identify a crawler?
Why does my Mac show as macOS 10.15.7 and Intel?
Why do all User-Agents start with Mozilla/5.0?
What are User-Agent Client Hints?
Why does my Windows 11 PC say Windows NT 10.0?
Is GPTBot or ClaudeBot a real person?
Related tools
HTTP Header Generator
Generate security, CORS, cache and CSP headers for your server.
Query String Parser
Turn a query string into a table or JSON, decoded.
Query String Builder
Build a correctly encoded query string from rows or JSON.
cURL Command Generator
Build a correct curl command from a form, for any shell.