Skip to content
Free tool · Follows every Chrome release

Chrome user agent strings

The User-Agent and Sec-CH-UA headers the current Chrome sends on every platform, the list for every recent version, and a generator. Computed the way Chromium computes them, and checked against real Chrome 152, 153, 154.

Current stable
Chrome 154, since September 22, 2026
Full version
154.0.8037.58 (Windows)154.0.8037.58 (Mac)154.0.8037.57 (Linux)154.0.8037.58 (Android)
Next release
Chrome 155, stable October 6, 2026early rollout from September 23, 2026

From Google's Chromium Dash, checked every six hours.

Chrome 154 user agent on every platform

PlatformUser-AgentPlatform / Mobile hintsCopy
WindowsMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36"Windows" / ?0
macOSMozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36"macOS" / ?0
LinuxMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36"Linux" / ?0
ChromeOSMozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36"Chrome OS" / ?0
Android (phone)Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Mobile Safari/537.36"Android" / ?1
Android (tablet)Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36"Android" / ?0
Headless (Linux)Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/154.0.0.0 Safari/537.36"Linux" / ?0

On every platform, Chrome 154 also sends Sec-CH-UA: "Chromium";v="154", "Google Chrome";v="154", "Not A(Brand";v="99", and when a site asks for it, Sec-CH-UA-Full-Version-List: "Chromium";v="154.0.8037.58", "Google Chrome";v="154.0.8037.58", "Not A(Brand";v="99.0.0.0" (Windows build 154.0.8037.58).

Generate the headers for any version

Pick a version, platform and browser; the headers follow Chromium's own rules, including the ones for versions not released yet.

Request headers
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36
Sec-CH-UA
"Chromium";v="154", "Google Chrome";v="154", "Not A(Brand";v="99"
Sec-CH-UA-Mobile
?0
Sec-CH-UA-Platform
"Windows"

GREASE for Chrome 154: Not A(Brand, version 99 (99.0.0.0 in Sec-CH-UA-Full-Version-List). Setting these headers alone does not make a browser look like Chrome 154: navigator.userAgentData, workers and the rest of the engine keep telling their own story, which is what the user agent checker compares.

Sec-CH-UA by Chrome version

The brand list Chrome sends, version by version. The same list serves Microsoft Edge and Brave with their own name in place of Google Chrome. Versions marked measured were read from real builds on the Chrome release pages; the rest are computed.

ChromeSec-CH-UASource
156upcoming"Not:A-Brand";v="8", "Chromium";v="156", "Google Chrome";v="156"computed
155upcoming"Google Chrome";v="155", "Chromium";v="155", "Not(A:Brand";v="24"computed
154current"Chromium";v="154", "Google Chrome";v="154", "Not A(Brand";v="99"measured
153"Google Chrome";v="153", "Not_A Brand";v="8", "Chromium";v="153"measured
152"Chromium";v="152", "Not?A_Brand";v="24", "Google Chrome";v="152"measured
151"Not=A?Brand";v="99", "Google Chrome";v="151", "Chromium";v="151"computed
150"Not;A=Brand";v="8", "Chromium";v="150", "Google Chrome";v="150"computed
149"Google Chrome";v="149", "Chromium";v="149", "Not)A;Brand";v="24"computed
148"Chromium";v="148", "Google Chrome";v="148", "Not/A)Brand";v="99"computed
147"Google Chrome";v="147", "Not.A/Brand";v="8", "Chromium";v="147"computed
146"Chromium";v="146", "Not-A.Brand";v="24", "Google Chrome";v="146"computed
145"Not:A-Brand";v="99", "Google Chrome";v="145", "Chromium";v="145"computed
144"Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"computed
143"Google Chrome";v="143", "Chromium";v="143", "Not A(Brand";v="24"computed
142"Chromium";v="142", "Google Chrome";v="142", "Not_A Brand";v="99"computed
141"Google Chrome";v="141", "Not?A_Brand";v="8", "Chromium";v="141"computed
140"Chromium";v="140", "Not=A?Brand";v="24", "Google Chrome";v="140"computed

How Chrome picks the brand list

All three steps use the major version as their only input, in components/embedder_support/user_agent_utils.cc (read at the 154.0.8037.58 tag):

  1. The fake brand's name is Not, a character, A, a character, Brand. Both characters come from the list [" ", "(", ":", "-", ".", "/", ")", ";", "=", "?", "_"], at positions major % 11 and (major + 1) % 11. For Chrome 154: Not A(Brand (source).
  2. Its version is ["8", "99", "24"][major % 3]: 99 for Chrome 154, and 99.0.0.0 in the full version list.
  3. The order: the list starts as fake brand, Chromium, Google Chrome, and is shuffled with the permutation at major % 6 of Chromium's six-entry table, which says where each entry goes (GetRandomOrder, GenerateBrandVersionList).

This has been Chrome's algorithm since at least Chrome 110, which is where the table above stops. The code on this site reproduces the lists measured on Google Chrome 152, 153 and 154, Microsoft Edge 153 and Brave 154.

What the frozen parts no longer tell

Since Chrome's User-Agent reduction, the string is the same on every machine of a platform (GetUnifiedPlatform). The real values moved to Client Hints that a site has to request:

Chrome/154.0.0.0Sec-CH-UA-Full-Version-Listthe full version, e.g. 154.0.8037.58
Windows NT 10.0Sec-CH-UA-Platform-Version13.0.0 and higher means Windows 11
Intel Mac OS X 10_15_7Sec-CH-UA-Platform-Version, Sec-CH-UA-Archthe macOS version, and arm on Apple silicon
Android 10; KSec-CH-UA-Platform-Version, Sec-CH-UA-Modelthe Android version and the device model

FAQ

What is the latest Chrome user agent?

On Windows: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36. On a Mac: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Safari/537.36. The table above has every platform; only the major version (154) changes from one release to the next.

What is the Sec-CH-UA header for Chrome 154?

"Chromium";v="154", "Google Chrome";v="154", "Not A(Brand";v="99", on every platform. Microsoft Edge and Brave 154 send the same list with their own name in place of Google Chrome.

Why do the brands in Sec-CH-UA change order between versions?

On purpose. Chrome shuffles the three entries (Chromium, the browser's own name and a fake GREASE brand) with a permutation chosen by the major version, and changes the fake brand's name and version the same way, so that servers cannot rely on a fixed list. All six orders come round every six releases.

What is the headless Chrome user agent?

Chrome's headless mode replaces Chrome/ with HeadlessChrome/: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/154.0.0.0 Safari/537.36 on Linux. The Client Hints stay those of Google Chrome, so the two disagree, and any site can see both.

What is the Chrome user agent on iPhone and iPad?

Chrome on iOS runs on Apple's WebKit engine and uses a different string, with CriOS/ and the full Chrome version, a real iOS version, and no Client Hints. It is not covered here, because none of the rules above apply to it.

Should I put these headers in my scraper?

Only if everything else agrees with them. A request that says Chrome 154 but comes from an HTTP library has a TLS fingerprint no Chrome has (see the JA4 fingerprint checker), and a browser whose User-Agent was changed still reports its real version through Client Hints, workers and its engine features (see what is my user agent).

Clearcote puts this into practice

An open-source Chromium with fingerprint control compiled into the engine. A drop-in for Playwright & Puppeteer.

Free for one browser with GitHub. No card.