User agent basics

What is a user agent string?

A user agent string is the browser identification text that many websites still inspect for debugging, analytics, download logic, and compatibility checks. It is useful, but it is not a secure identity signal.

Short definition

A user agent string is a text value that usually names the browser family, rendering engine, operating system, and device class in a compact, compatibility-driven format. A browser may expose it in request headers and through JavaScript as navigator.userAgent.

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36

Even when it looks readable, the format is full of historical compatibility tokens. That is why raw user agent strings are often harder to interpret than people expect.

What it usually tells you

  • Browser family clues such as Chrome, Safari, Firefox, or Edge.
  • Rendering engine hints such as Blink, WebKit, Gecko, or Trident.
  • Platform and operating system patterns such as Windows, macOS, Android, iOS, or Linux.
  • Broad device class hints such as desktop, mobile, or tablet.

What it does not prove

  • It does not prove that the browser really has another engine or feature set.
  • It does not reliably identify a unique device or person.
  • It does not include every signal a site may use on the server side.
  • It can be reduced, normalized, or spoofed by browsers, extensions, and automation tools.

Why websites still use user agents

Compatibility handling

Sites sometimes switch download flows, warnings, or fallback behavior when the string strongly suggests a specific browser family.

Analytics grouping

Many analytics systems still normalize traffic into browser, OS, and device buckets using user agent parsing rules.

Support and QA

Support teams often ask for a user agent because it helps reproduce browser-specific bugs and document real test conditions.

Legacy detection

Older code paths may still depend on browser sniffing, even when feature detection would be more robust.

Why the format is getting weaker over time

Modern browsers have been reducing the amount of detail they expose by default. Chromium-based browsers now freeze parts of the string, Safari preserves compatibility tokens that no longer mean what they once did, and many ecosystems are moving toward User-Agent Client Hints for more explicit negotiation.

Treat the user agent as a practical clue. For production-grade decisions, combine it with feature detection, request context, and Client Hints where available.

See your current value

Open the live checker if you want the browser-side string your current session exposes right now.

Check my user agent

Learn the token structure

Use the main guide to understand compatibility markers such as Mozilla/5.0, AppleWebKit, and Safari/.

Read the guide

See real examples

Compare Chrome, Safari, Firefox, Edge, Android, and iPhone examples without having to generate them manually first.

Open examples

Understand modern replacements

Read how user agents differ from Client Hints and why browser detection has been moving in that direction.

Compare with Client Hints
What is a user agent string in simple terms?

It is a browser identification string that usually includes browser family, rendering engine, operating system, and device hints. Websites often use it for compatibility checks, analytics, and debugging.

Is the user agent string the full truth about a device?

No. User agents can be reduced, normalized, or spoofed. They are useful for diagnostics, but they are not a secure proof of device identity.

Where can I see my current user agent?

You can open the checker on this site to inspect the browser-side value exposed by your current session.