Download 145.0.7632.117 from the Chrome Stable for Windows 64-bit
Download Google Chrome 145.0.7632.117 with the branch, platform, release date, and file size shown clearly on the same page.
What users usually want to know first
What changed in Chrome 145.0.7632.117
Google Chrome 145.0.7632.117 is available here as part of the Windows 64-bit Stable archive. Use this release page when you want the exact version, the current package details, and quick access to the correct installer.
Stable release date: February 10th, 2026
Unless otherwise noted, the following changes apply to Chrome 145 stable channel release for Android, ChromeOS, Linux, macOS, and Windows.
CSS and UI
Add support for the text-justify CSS property
You can control how text is justified when text-align: justify is applied by using the text-justify property. For example, you can force justification by expanding inter-character space even in English text.
Related technical references: ChromeStatus.com entry · Spec
Enable percentage values for CSS letter-spacing and word-spacing properties
Enable percentage values for the letter-spacing and word-spacing CSS properties, as defined in the CSS Text Module Level 4 specification. Percentage values are calculated relative to the advance measure of the space character (U+0020). This provides you with more robust and flexible control over typography, particularly in responsive designs where text spacing needs to adapt to different viewports and font sizes.
Related technical references: ChromeStatus.com entry · Spec
Refine border-radius shadow edge computation for high border-radius
This change ensures that shadows and clip boundaries on near-circular elements (where border-radius is close to 50%) precisely match the visual contour of the curved edge.
This provides a more consistent rendering of complex rounded shapes, eliminating visual discrepancies for high radius values. The border-radius adjustment factor, which ensures corners appear sharp for small radii, is progressively dampened as the radius value approaches 50%.
This also applies to non-round contours (using corner-shape), which now use the same radius adjustment mechanism.
Related technical references: ChromeStatus.com entry · Spec
Column wrapping for multicol
Add support for the column-wrap and column-height CSS properties, from multicol Level 2.
This enables vertical column layout, or even 2D column layout. Columns can have an explicit constrained height, rather than being derived from the content-box height of the multicol container. They wrap to a new row of columns when all columns have been filled for one row, instead of creating overflowing columns in the inline direction.
Related technical references: ChromeStatus.com entry · Spec
Expose onanimationcancel event to GlobalEventHandlers
The CSS Animations Level 1 extends the GlobalEventHandlers interface defined in the HTML specification, declaring four new event handlers: onanimationstart, onanimationiteration, onanimationend, and onanimationcancel. Only the onanimationcancel event handler has been missing from the GlobalEventHandlers IDL.
Related technical references: ChromeStatus.com entry · Spec
Customizable select listbox
This extends customizable select support to the listbox rendering mode, including single-select and multi-select in listbox mode.
The listbox rendering mode renders the select element in-flow or in the page, rather than with a separate button and popup. You can opt into listbox rendering mode across platforms using the multiple or size attributes, for example, <select multiple> or <select size=4>. When the appearance: base-select CSS property is applied to the select element with these attributes, it has improved rendering and input behavior.
This does not support customizable select for the multi-select popup, which will be supported later. You must set the following attributes to get a multi-select popup: <select multiple size=1>.
Related technical references: ChromeStatus.com entry · Spec
The focusVisible option on focus
When calling the focus() method, you can supply a focusVisible boolean in the FocusOptions dictionary. When true, a focus ring is always painted around the newly-focused element, and it matches the :focus-visible pseudo-class. When false, the focus ring is not painted, and :focus-visible does not match. When missing, the user agent makes its own determination as to whether the focus ring should be painted, and the :focus-visible pseudo-class matches accordingly.
Related technical references: ChromeStatus.com entry · Spec
Enable monochrome emoji rendering in forced colors mode.
This change updates Chromium's emoji rendering behavior in Forced Colors Mode. During computed-value resolution, emoji whose font-variant-emoji value computes to normal or unicode are rendered using their monochrome glyphs when available.
Chromium therefore suppresses color emoji rendering, which ensures emojis fully participate in the Forced Colors Mode pipeline and respect system high-contrast colors. Behavior outside Forced Colors Mode is unchanged.
Related technical references: ChromeStatus.com entry · Spec
Overscroll effect on non-root scrollers
This shows elastic overscroll effects on non-root scroll containers. When a nested scrollable element reaches its scroll boundary, the overscroll affordance applies to that element instead of only the root scroller. This reduces the need for custom JavaScript workarounds and can be controlled per element with overscroll-behavior.
Related technical references: ChromeStatus.com entry · Spec
Capabilities
Show true window position on Android
Chrome on Android accurately reports the browser window's position and size using window.screenX, window.screenY, window.outerWidth, and window.outerHeight.
Chrome previously incorrectly assumed that all browser windows on Android start at coordinates (0, 0). This assumption is inaccurate for Android tablets that use freeform windowing mode. Websites always received 0 when querying the window's on-screen position using window.screenX and window.screenY. These fields store the coordinates of the window's top-left corner in global work area coordinate space.
Moreover, Chrome on Android incorrectly assumed that outer dimensions of the browser window are equal to the inner dimensions of the website viewport.
window.screenX and window.screenY have aliases: window.screenLeft and window.screenTop.
Related technical references: ChromeStatus.com entry · Spec
JavaScript
Upsert
This is an ECMAScript proposal for Map.prototype.getOrInsert, Map.prototype.getOrInsertComputed, WeakMap.prototype.getOrInsert, and WeakMap.prototype.getOrInsertComputed.
Related technical references: ChromeStatus.com entry · Spec
Crash Reporting key-value API
A new key-value API, window.crashReport, is backed by a per-Document map holding data that Chrome appends to crash reports.
The data placed in this API's backing map is sent in the CrashReportBody if any renderer process crashes are incurred by the site. This lets you debug what specific state in your application might be causing a given crash.
Related technical references: ChromeStatus.com entry · Spec
Reduced User-Agent strings by default
Starting in Chrome 145, Chrome removes the UserAgentReduction policy. This policy was available to control whether Chrome sent a reduced or full User-Agent string.
To enhance user privacy and reduce passive tracking capabilities, Chrome began reducing the information contained in the User-Agent header by default in Chrome version 110. The UserAgentReduction policy was provided as a temporary measure for enterprises to manage this transition.
The recommended mechanism for websites to access browser and device information is User-Agent Client Hints (UA-CH). UA-CH requires websites to actively request specific information, which is a more privacy-preserving approach than the legacy User-Agent string. For more information, see the web.dev article, Migrate to User-Agent Client Hints.
From Chrome 145 onwards, the UserAgentReduction policy has no effect. Chrome sends a reduced User-Agent string by default. Systems or applications that relied on this policy to receive the full (legacy) User-Agent string might no longer receive the detailed information they expect.
Navigation API: expose destination in navigation.transition
NavigationTransition has a from property, exposing the old URL of the navigation. Exposing to (a NavigationDestination) completes this. It is especially useful when using precommit handlers, as during precommit the current URL has not yet switched to the destination.
navigation.transition is only exposed for intercepted navigations—which means same-origin document-initiated navigations.
Related technical references: ChromeStatus.com entry · Spec
Secure Payment Confirmation: Browser Bound Keys
This adds an additional cryptographic signature over Secure Payment Confirmation assertions and credential creation. The corresponding private key is not synced across devices. This helps you meet requirements for device binding for payment transactions.
Related technical references: ChromeStatus.com entry · Spec
Secure Payment Confirmation: UX Refresh
Updates the UX elements for the SPC dialog on Android Chrome.
In addition to UX presentation, the following are added:
- Merchants can provide an optional list of payment entity logos related to the payment that are displayed in the UX.
- Different output states are returned to the merchant depending on whether the user wants to continue the transaction without SPC or to cancel the transaction. Only a single output state is sent for both cases.
- A new payment detail label field is added to the payment instrument so the text is presented across two lines in SPC.
Related technical references: ChromeStatus.com entry · Spec
Cookie Store API maxAge attribute
You can specify a maxAge when setting a cookie with the Cookie Store API.
Cookie expiry time is already configurable using the expires attribute, but maxAge provides a more idiomatic option and aligns the Cookie Store API with the options provided by document.cookie and the Set-Cookie HTTP Header.
This page highlights the release changes most relevant to users. The official source below contains the full technical detail.
Official source: Chrome 145 Release Notes
Installation notes
After downloading the package, confirm that the branch and platform match your device before launching the installer or extracting the archive. If you only need a standard everyday browser, Stable is usually the safest choice. If you are testing new behavior, Beta, Dev, and Canary are better fits.
Related release pages
For newer or older builds in the same branch, open the category archive linked above. For different platforms, use the related desktop archives in the sidebar.
Frequently asked questions
These FAQ blocks help the page read like a complete release article instead of a download stub, which is better for trust and better for SEO.
Should I use this release or stay on Stable?
If you just want the safest everyday browsing experience, Stable is usually the right default. Preview branches are better for testing, compatibility checks, and early feature access.
Why show exact version numbers so prominently?
Because exact-version queries are common in English search behavior, especially for QA teams, enterprise users, and people trying to reproduce a bug or environment.
Why keep a full article around the download buttons?
A stronger page body gives users context and gives Google clearer signals about what the release page actually covers.
Where should older releases live?
Older versions belong in the category archive page, with this article template handling exact-version landing pages one release at a time.