User agent parser API with bot detection
Send a User-Agent string, or call GET from the browser itself, and get browser, engine, OS, device and an is_bot flag as JSON.
What it does
Parses a User-Agent string into browser, engine, operating system, device type, vendor and model, and flags crawlers and bots. Call GET to parse your own request, or POST any string.
- GET /v1/user-agent
- POST /v1/user-agent
Limits: Parses what the string says; it cannot see through spoofed or reduced User-Agent strings (Chrome freezes the OS version). No Client Hints. Strings are never stored or logged.
Use cases
- Show the right download button or app store link.
- Keep crawlers out of analytics and A/B tests.
- Label sessions and devices in account security pages.
Data sources and freshness
ua-parser-js 1.x (MIT) and isbot (Unlicense), bundled in the Worker.
Updated with library releases.
Pricing
Every new account gets 100 free calls. Packs of 10,000 ($5), 100,000 ($15) and 250,000 calls ($29) never expire, or choose Unlimited for $39 a month. Only successful responses use a call. See pricing.
FAQ
Which parser does it use?
ua-parser-js 1.x, which is MIT licensed, and isbot (Unlicense) for crawlers. The AGPL-licensed 2.x line is not used.
Are User-Agent strings stored?
No. Request logs keep only the route pattern; the string is never logged or stored.
Why does Chrome report Windows 10 on Windows 11?
Chrome freezes parts of its User-Agent string, so the string itself says Windows NT 10.0. The parser can only report what the string contains.