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.

We value your privacy

We use necessary cookies to run this website. With your consent, we would also like to use analytics and marketing cookies. Read our cookie policy.