Developer Tools
User Agent Parser
Paste a user agent string and instantly get browser, version, OS, device type, and whether it looks like a crawler. Works with URL-encoded headers too. Everything is parsed locally in your browser.
Browser
—
Version
—
Operating system
—
Device type
—
Engine
—
Crawler
—
What makes this tool different
Full breakdown
Browser, version, OS, device type (mobile, tablet, desktop), engine, and crawler flag.
URL-encoded support
Headers that come in as URL-encoded strings are decoded automatically before parsing.
Crawler detection
Known bots — Googlebot, Bingbot, and more — are flagged so you can separate real users from crawlers.
No dependencies
A compact rule-based parser runs in your browser with no external libraries or network calls.
About this tool
User Agent Parser: everything you need to know
Every request your server receives includes a User-Agent header, and it tells a surprisingly complete story: which browser, which operating system, whether the visitor is on a phone, tablet, or desktop, and even whether the request came from a crawler. Parsing it correctly powers analytics, responsive-fallback logic, and bot filtering.
This user agent parser decodes any string into its components — browser and version, OS, device type, and rendering engine — using a compact rule set that runs in your browser. Paste a header from your logs or dev tools and the breakdown appears instantly, including URL-encoded strings that many tools fail to handle.
Device type detection is particularly useful for analytics and A/B testing. Knowing whether a visitor is on iOS Safari, Android Chrome, or a desktop Windows browser lets you tune layouts and track engagement by platform without any client-side scripting.
Crawler detection is built in. Googlebot, Bingbot, and similar bots are flagged by name, so you can separate organic search traffic from real users in your reports — and avoid serving bot-specific responses by accident.
Because the parser is dependency-free and runs locally, there are no privacy trade-offs. The user agent you paste never leaves your browser, and the tool works offline. Open the DevTools Network tab and you will see zero requests.
While user agents are client-supplied and can be spoofed, they remain the standard, practical way to identify the requesting environment at scale. Use this parser to inspect and debug strings during development, and to sanity-check the output of your own parsing libraries.
FAQ
User Agent Parser — frequently asked questions
What is a user agent string and what does it contain?
A user agent string is the text a browser or bot sends in the User-Agent header describing itself. It typically contains a product and version (like Mozilla/5.0), the rendering engine, and a comment block naming the browser, OS, and platform. Browsers include history to stay compatible, which is why they are verbose.
How do I parse a user agent in JavaScript / Python / PHP / Node / Go?
In JavaScript and Node, libraries like ua-parser-js or express-useragent parse the string. Python has user-agents and ua-parser; PHP has get_browser; Go has ua-parser. All follow the same pattern: feed the raw string, get browser, OS, and device objects. This tool demonstrates the result instantly for any string.
Why is a user agent not 100% reliable?
User agents are client-supplied strings, so they can be spoofed or outdated, and browsers sometimes omit version info. Treat them as a hint for analytics and feature detection, never as a security boundary. Server-side checks of the actual request (like TLS fingerprints) are stricter.
How do I detect if a UA is a crawler or bot?
Match the string against known bot signatures such as Googlebot, Bingbot, DuckDuckBot, and common keyword patterns like bot, crawl, and spider. This parser flags those automatically and shows the bot's name when it recognizes one.
What does each user agent token mean?
The leading product token (Mozilla/5.0) is a compatibility marker, not the real browser. The engine (AppleWebKit/537.36, Gecko, etc.) identifies the rendering engine, and the comment block lists the actual browser, version, OS, and device. This parser extracts those into readable fields.
Is the user agent parser free and private?
Yes. OpenToolLab's user agent parser is completely free, requires no signup, and parses strings entirely in your browser — your data never leaves your device.
How can I get the current browser's user agent string?
In a browser, navigator.userAgent returns the string of the current browser. In Node.js, inspect the request.headers['user-agent'] header on an incoming request, or in PHP use $_SERVER['HTTP_USER_AGENT']. This parser works with any of those.
What is a bot or crawler user agent and how is it different from a real browser?
Crawlers identify themselves with strings like Googlebot or Bingbot so site owners can let them in. Unlike real browsers they do not render pages for humans, so analytics tools usually want to filter them out. This parser flags known crawlers automatically by name.
Keep exploring