Why does my User-Agent start with Mozilla even in Chrome?
Because `Mozilla/5.0` became a historical compatibility token every modern browser keeps at the start of the string, with no relation at all to the current Mozilla/Firefox browser; older sites checked that prefix to decide whether to unlock advanced content, and dropping it would break those legacy checks.
What is UA reduction and why is it happening?
It is the effort, led by Chrome since 2021, to strip detailed operating system and device version information out of the traditional User-Agent, replacing specific values with generic, frozen tokens; the stated motivation is reducing the signals sites can use to identify a browser without cookies.
Does navigator.userAgentData work in every browser?
No: this Client Hints API only exists on Chromium-based browsers, such as Chrome, Edge and Opera; Firefox and Safari do not implement `navigator.userAgentData`, so any code that depends on it exclusively needs a fallback path based on `navigator.userAgent` for those two browsers.
Can I trust the User-Agent to decide whether to unlock a feature?
It is not recommended: the User-Agent can be changed manually by the user or by an extension, is already being deliberately reduced by browsers themselves, and never guarantees a specific API actually exists in that browser; checking the API itself with `'apiName' in object` is always more reliable than parsing the string.