Start from the basics
Read the overview if you want the broad definition, common use cases, and reliability limits before diving deeper.
Read the overviewInteractive parser plus guide
Paste any user agent below to inspect it, then use the guide sections that follow to understand why browser strings contain so many strange compatibility tokens.
A modern desktop Chrome string often looks like this:
Firefox/ usually pairs with Gecko/20100101.Version/x.y together with Safari/605.1.15.Edg/ token after Chrome-style tokens.Android without the Mobile marker.Browsers increasingly move detailed information out of the raw user agent string and into User-Agent Client Hints. That means older parsing logic may still be useful, but should not be your only source of truth.
Read the overview if you want the broad definition, common use cases, and reliability limits before diving deeper.
Read the overviewCompare Chrome, Safari, Firefox, Edge, Android, and iPhone examples before you write parser logic or QA notes.
Open examplesRead the modern follow-up on why the browser-identification model changed and where raw strings still help.
Compare with Client HintsUse the mobile-versus-desktop page if you need a tighter explanation of device markers and inference pitfalls.
Compare mobile vs desktopBecause old browser-sniffing code expected it. Modern browsers preserve the token for compatibility even though the ecosystem has moved far beyond the original meaning.
Mostly for compatibility with websites that historically looked for WebKit or Safari markers. The browser identity is usually clarified by the Chrome-specific token further along in the string.
Only if you control the use case and can tolerate edge cases. For anything important, combine parsing with broader detection strategies.