Client fingerprinting is the act of collecting various data on a client machine for platform identification purposes.

See Valve fingerprintJS (submit User-Agent to a user agent database to identify OS and browser vendor / version; if no architecture is found in the output, it’s x86 (32-bit))