What is Accept-Language?

Abisola | Feb 10, 2026

The Accept-Language header is an HTTP request header that tells a server which languages the client prefers for the response. Browsers send it automatically based on operating system and browser language settings. Servers use it for content negotiation so users can get pages in their preferred language when multiple versions exist, including localized Google Ads campaign landing experiences where language variants are offered.

How does Accept-Language work?

Every normal page request can include a line such as Accept-Language: en-US,en;q=0.9,es;q=0.8. The list is ordered by preference. Optional quality values (q) from 0 to 1 weight each option. The server (or CDN) matches this list against available locales and picks the best fit.

This is not the same as knowing where someone is located. A traveler abroad may still send English preferences while their IP suggests another country. For caching, responses that vary by language should send Vary: Accept-Language so intermediaries do not serve the wrong language to the next visitor.

Why it matters for click and ad fraud

Fraud tools and bots often send headers that do not match real users. A script may omit Accept-Language, repeat a single unusual locale, or combine it with other headers that contradict the claimed browser or device. Fraud detection platforms, including ClickPatrol, use many such signals together with IP, behavior, and TLS data to score traffic and reduce invalid clicks.

Accept-Language alone never proves fraud. Legitimate users share common header patterns. It becomes useful when it disagrees with OS and device hints, session behavior, or known automation profiles. Security teams also watch for mismatches between Accept-Language and proxy or data-center routing.

Frequently Asked Questions

  • What is the Accept-Language HTTP header?

    The Accept-Language header is an HTTP request header that tells a server which languages the client prefers for the response. Browsers send it automatically based on operating system and browser language settings. Servers use it for content negotiation on localized pages.

  • Is Accept-Language the same as geolocation?

    No. Accept-Language reflects language preferences set in the browser and operating system, not physical location. A user in one country may send en-US preferences while another user nearby sends a different language list. Geolocation uses separate signals like IP address.

  • How do quality values work in Accept-Language?

    Accept-Language lists languages in preference order with optional quality values from 0 to 1 weighting each option. A header like en-US,en;q=0.9,es;q=0.8 ranks en-US first, then English generally, then Spanish. The server matches against available locales and picks the best fit.

  • Can Accept-Language help detect bot traffic?

    Yes. Fraud detection systems compare Accept-Language headers against IP location, user agent, and other signals. Mismatches, such as unlikely language lists from datacenter IPs, help flag bot or proxy traffic before invalid clicks consume Google Ads budget or skew campaign analytics.

  • What does a typical Accept-Language header look like?

    A typical Accept-Language header looks like Accept-Language: en-US,en;q=0.9,es;q=0.8 in outgoing browser requests. The list is ordered by preference with optional q values weighting each language from 0 to 1. Servers and CDNs match this list against available locales for the response.

Abisola

Abisola

Abisola handles content and support at ClickPatrol. She helps customers get more value from cleaner traffic data and writes practical resources about ad fraud, fake traffic, and smarter PPC decisions.