Browser & OS Detection · Browser Tests
Operating System Test
Detect your operating system and see where the UA string, platform value and client hints disagree.
Source by source
Version detail
Where the sources disagree
Three sources, read live and compared in your browser. Where they disagree, the disagreement itself is the finding — an emulated or spoofed setup usually trips on exactly this.
On this page
What this test detects
This page answers “what operating system am I on?” by asking three separate parts of the browser, and then showing you where they disagree. Each one reports the same underlying machine in a different vocabulary, and the gaps between those vocabularies are where the interesting detail lives.
The name alone — Windows, macOS, Linux, Android, iOS — is rarely useful on its own, since hundreds of millions of people share it. What matters is the version detail and whether the three sources are consistent, because a machine whose sources contradict each other is unusual.
Three answers, one machine
Most tools show a single guessed OS name. Showing all three, side by side, is more honest: you can see exactly which one said what, and judge the answer yourself.
The three sources a browser reports from
The user-agent string is the oldest and most specific source. It carries a compact token — Windows NT 10.0, Mac OS X 10_15_7, Android 14, CPU OS 17_0 — alongside the browser and engine tokens. Our user-agent test breaks that whole line apart.
navigator.platform is a much shorter string such as Win32, MacIntel or Linux x86_64. Its names date from the Netscape era and have been deprecated for years, but no browser has removed it, so it stays as a second opinion.
User-Agent Client Hints is the modern source, and only Chromium browsers have it. It reports a clean platform name and, when a page asks for the high-entropy set, a platform version alongside the architecture and bitness. On Firefox and Safari this row reads Not exposed, which tells you something in itself.
When the sources disagree
Two kinds of disagreement are worth separating. The first is expected: Android reports Linux armv8l through navigator.platform because that is the kernel underneath, and an iPad in desktop mode reports MacIntel because that is the identity it asked Safari to present. These are documented, and the panel above marks them as quirks rather than conflicts.
The second kind is a genuine contradiction, and it is the signature of a spoofed or emulated setup. If the user-agent string claims Windows while both other sources say macOS, nothing normal produces that combination. A careful detector treats it as a flag, which is exactly why changing your user agent without changing everything else tends to make you more distinctive, not less.
Consistency beats disguise
The fingerprint test applies the same logic to graphics, timezone and fonts. A set of values that agree with one another is far less interesting to a tracker than a set that does not.
This is also why modern guidance tells developers to stop reading the operating system at all. Detecting a platform by string matching leads to code that breaks the moment a browser freezes a version or a new device appears, which is the entire history of the user-agent string. Testing for the feature you actually need, and letting the operating system stay unknown, is both more reliable and less revealing.
Why the version is deliberately vague
Operating-system versions are among the first things browsers started rounding off, because the exact build is a strong fingerprinting signal and almost never useful to a website. macOS is the clearest example: the user-agent string has reported 10_15_7 since Big Sur, no matter which release you actually installed. Similarly, Windows 10 and Windows 11 both report NT 10.0, so the string cannot separate them.
Where a precise version is still available, it is in the client-hints platform version. That value is more useful but not always readable: on Android it looks like the release you know, 14.0.0, while on Windows Chromium reports a mapped value that is not the build number shown in Settings. Treat any version shown here as the browser's own summary, not as an inventory of your machine.
What your operating system tells a website
Knowing you run Windows is unremarkable. Knowing you run Windows on an ARM chip with a 64-bit browser, an unusual platform version and a specific build, combined with your screen, graphics and font signals, is a much narrower description. That is the pattern across every tool on this site: each value is common, the combination is not.
The practical upshot is to keep your browser current and leave its defaults alone. An up-to-date browser on a mainstream version shares its OS profile with a very large crowd, while an old version or a hand-edited user agent puts you in a much smaller group. The device and hardware test and the browser information test fill in the rest of that picture.