Skip to main content

user-agent

A user agent detector reveals the User-Agent (UA) string your browser sends with every HTTP request โ€” the identification of browser name, version, rendering engine, operating system, and device type. Used by web servers for analytics, conditional content (mobile vs desktop layouts), bot detection, and debugging device-specific bugs. The ZTools User Agent Detector parses the current request UA, displays it in a structured way (browser / version / OS / engine / device / type), and shows the modern Client Hints values (browsers progressively replacing the UA string). Useful for QA, debugging, and bot/automation testing.

Use casesโ€‹

Mobile / desktop testingโ€‹

Verify your "is this a mobile device?" detection works correctly across iPhone, Android, iPad, desktop, etc.

Bug reportingโ€‹

When filing a browser-specific bug, attach UA + parsed details to the report โ€” saves the engineer triage time.

Bot detection debuggingโ€‹

Test how your site treats different UAs โ€” bot-like UAs should not get challenged. Whitelist known good bots (Googlebot, Bingbot).

Compatibility checksโ€‹

Old browser UAs help confirm whether your site renders correctly on legacy users (or whether to drop support).

How it worksโ€‹

  1. View current UA โ€” Displays your browser's User-Agent header verbatim.
  2. Parsed breakdown โ€” Browser name + version, OS name + version, rendering engine (Blink / Gecko / WebKit), device type (desktop / mobile / tablet / TV / wearable).
  3. Client Hints โ€” Modern browsers send Sec-CH-UA-* headers; tool displays available values.
  4. Capabilities check โ€” Touch, WebGL, WebRTC, Service Workers, Web Push โ€” quick capability summary.
  5. Copy raw UA โ€” For pasting into bug reports.

Examplesโ€‹

Input: iPhone 16 Pro Safari

Output: Mozilla/5.0 (iPhone; CPU iPhone OS 18_3...) parsed as: Safari 18 / iOS 18 / Mobile / WebKit.


Input: Chrome desktop

Output: Mozilla/5.0 (Windows NT 10.0...) parsed as: Chrome 138 / Windows 10 / Desktop / Blink.


Input: Googlebot UA

Output: Mozilla/5.0 (compatible; Googlebot/2.1; +https://...) flagged as Bot / Crawler.

Frequently asked questionsโ€‹

Why does the UA say "Mozilla/5.0" even for non-Mozilla browsers?

Historical: in 1990s, sites required "Mozilla" to ship modern HTML. Browsers spoofed it for compatibility, and the convention stuck. Every modern browser starts UA with "Mozilla/5.0" for legacy reasons.

What's "Client Hints"?

Modern (post-2020) replacement for the UA string. Servers request specific hints (browser brand, model, full version) via HTTP headers, reducing fingerprinting surface area while preserving useful signals.

Can I spoof my UA?

Yes โ€” browsers expose dev-tool UA override (Chrome DevTools โ†’ โ‹ฎ โ†’ More tools โ†’ Network conditions). Useful for testing mobile-vs-desktop responsive views.

Why does my UA have "iPad" but the site treats me as desktop?

iPadOS 13+ defaults to desktop UA on iPad to encourage desktop-class web experience. Some sites are catching up; iPad-specific detection often requires Touch capability + screen size, not UA.

Is my UA unique enough to fingerprint me?

Combined with screen size, fonts, timezone, etc., yes โ€” UA contributes meaningfully to browser fingerprinting. Modern browsers (Brave, Firefox with strict mode) randomise/reduce UA precision to mitigate.

Should I do UA detection in my code?

Prefer feature detection (if (navigator.serviceWorker)) over UA detection โ€” UAs lie, features tell the truth. Reserve UA for analytics and bot detection.

Tipsโ€‹

  • Always include UA + browser version in bug reports โ€” saves engineering triage time.
  • For detection logic, prefer feature detection over UA parsing โ€” more reliable.
  • Test UA spoofing in DevTools when QAing mobile responsiveness from desktop.
  • Watch out for iPad-as-desktop UA gotcha โ€” affects ~5% of users.
  • Modern Client Hints will replace UA over coming years โ€” design for both.

Try it nowโ€‹

The full user-agent runs in your browser at https://ztools.zaions.com/user-agent โ€” no signup, no upload, no data leaves your device.

Open the tool โ†—


Last updated: 2026-05-06 ยท Author: Ahsan Mahmood ยท Edit this page on GitHub