hints / ua · opt-in
Sec-CH-UA-WoW64
Sec-CH-UA-WoW64 is a boolean hint reporting whether a 32-bit browser runs on 64-bit Windows, a niche compatibility signal for download pages.
- Example
Sec-CH-UA-WoW64: ?0- JavaScript
getHighEntropyValues(['wow64'])- Available since
- Chrome 110 (2023)
- Engines
- Chrome Edge Opera Firefox Safari
- References
- MDN · Specification
Sec-CH-UA-WoW64 answers the narrowest question in the whole registry: is this a 32-bit browser running on 64-bit Windows? The name comes from Microsoft’s “Windows 32-bit on Windows 64-bit” compatibility layer, and the old UA string used to expose it as a literal WOW64 token.
Accept-CH: Sec-CH-UA-WoW64
Sec-CH-UA-WoW64: ?1 # 32-bit browser, 64-bit Windows
Sec-CH-UA-WoW64: ?0 # everything else Why anyone cares
Consider a download page reading Sec-CH-UA-Bitness alone. A 32-bit Chrome reports "32", but if the OS underneath is 64-bit, the machine can run your 64-bit installer, which is almost certainly the better artifact to serve. ?1 here means exactly that: ignore the browser’s bitness, the OS can take x64.
| Bitness | WoW64 | Machine can run |
|---|---|---|
"64" | ?0 | 64-bit apps |
"32" | ?1 | 64-bit apps (browser is just old) |
"32" | ?0 | 32-bit only |
That table is the entire use case. It was added late (Chrome 110, 2023) precisely because installer-serving sites kept mis-serving 32-bit builds to capable machines.
In JavaScript
const { wow64 } = await navigator.userAgentData
.getHighEntropyValues(['wow64']);
// true | false Should you request it?
Only if you serve Windows binaries. For anything else it is a wasted entry in your Accept-CH list, and on every non-Windows platform the answer is a constant ?0.