Language dimension
The language dimension records the visitor's preferred language — en-us, fr, de — as reported by their browser. It is read from the Accept-Language header or navigator.language, which reflect a software setting, not the user's location. Treating language as a proxy for country is the classic error: a French speaker in Canada and one in France can share a language but live in different markets.
What this means
The language dimension is the visitor's preferred language as the browser reports it, via the Accept-Language request header or the navigator.language API. It is a BCP 47 language tag (en, en-US, fr-CA) describing a UI preference the user or their OS configured.
Why it is not country
Language and country answer different questions. The same language spans many countries, and one country hosts many languages. A default OS language may not even be the user's choice. Use language to decide which translations to prioritise; use the coarse country dimension to decide which markets to serve. Conflating them mis-targets both.
- Read from Accept-Language / navigator.language
- A software preference, not a location
- One language spans many countries and vice versa
How it appears in analytics and logs
A language value is the browser's preferred-language setting. It tells you about UI preference, not location — pair it with country rather than substituting one for the other.
Diagnostic use case
Use language to inform localisation and content priorities, keeping it distinct from country, since the browser setting and the user's market often diverge.
What WebmasterID can help detect
WebmasterID records the coarse browser language first-party and keeps it separate from coarse geo, so localisation decisions use the right signal for the right question.
Common mistakes
- Using language as a proxy for country/market.
- Assuming the default OS language is a deliberate choice.
- Ignoring region subtags (en-US vs en-GB) when they matter.
Privacy and accuracy notes
Language is a low-entropy browser preference, not identity. WebmasterID reads the coarse language tag and avoids combining signals into a fingerprint.
Related pages
- Country dimension (coarse, edge-derived)
The country dimension assigns each visit a country, derived by looking up the visitor's IP address in a geolocation database — often at the CDN edge. It is intentionally coarse: country-level, not address-level. VPNs, proxies, mobile carrier routing, and corporate egress can all place a visit in the wrong country, so it is a strong aggregate signal and a weak per-visit one.
- Browser dimension and its limits
The browser dimension records which browser a visit used — Chrome, Safari, Firefox, Edge, and so on. It is parsed from the user-agent string (and increasingly User-Agent Client Hints), so it is a classification, not a fact reported by the device. UA freezing, Chromium-based browsers sharing tokens, and in-app webviews are why this dimension is fuzzier than it looks.
- Accept-Language vs user agent
Accept-Language and User-Agent are different HTTP headers that answer different questions. Accept-Language expresses the visitor's preferred languages and locales; User-Agent identifies the client software and platform. Mixing them up leads to wrong localisation and brittle detection. Both are client-supplied claims and can be absent or altered.
- Privacy-first analytics
Coarse language without fingerprinting.
Sources and verification notes
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.