Download 66.0.3359.139 from the Chrome Stable for Windows 32-bit
Download Google Chrome 66.0.3359.139 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 66.0.3359.139
Google Chrome 66.0.3359.139 is available here as part of the Windows 32-bit Stable archive. Use this release page when you want the exact version, the current package details, and quick access to the correct installer.
CSS Typed Object Model
If you've ever updated a CSS property via JavaScript, you've used the CSS object model. But it returns everything as a string.
To animate the opacity property, I'd have to cast the string to a number, then increment the value and apply my changes. Not exactly ideal.
With the new CSS Typed Object Model, CSS values are exposed as typed JavaScript objects, eliminating a lot of the type manipulation, and providing a more sensible way of working with CSS.
Instead of using element.style, you access styles through the .attributeStyleMap property or .styleMap. They return a map-like object that makes it easy to read or update.
Compared to the old CSS Object Model, early benchmarks show about a 30% improvement in operations per second - something that's especially important for JavaScript animations.
It also helps to eliminate bugs caused by forgetting to cast the value from a string to a number, and it automatically handles rounding and clamping of values. Plus, there's some pretty neat new methods for dealing with unit conversions, arithmetic and equality.
Eric has a great post with several demos and examples in his explainer.
Async Clipboard API
Synchronous copy & paste using document.execCommand can be OK for small bits of text, but for anything else, there's a good chance it's synchronous nature will block the page, causing a poor experience for the user. And the permission model between browsers is inconsistent.
The new Async Clipboard API is a replacement that works asynchronously, and integrates with the permission API to provide a better experience for users.
Text can be copied to the clipboard by calling writeText().
Since this API is asynchronous, the writeText() function returns a Promise that will be resolved or rejected depending on whether the text we passed is copied successfully.
Similarly, text can be read from the clipboard by calling getText() and waiting for the returned Promise to resolve with the text.
Check out Jason's post and demos in the explainer. He's also got examples that use async functions.
New Canvas Context BitmapRenderer
The canvas element lets you manipulate graphics at the pixel level, you can draw graphs, manipulate photos, or even do real time video processing. But, unless you're starting with a blank canvas, you need a way to render an image on the canvas.
Historically, that's meant creating an image tag, then rendering it's contents on to the canvas. Unfortunately that means the browser needs to store multiple copies of the image in memory.
Starting in Chrome 66, there's a new asynchronous rendering context that's streamlined the display of ImageBitmap objects. They now render more efficiently and with less jank by working asynchronously and avoiding memory duplication.
To use it:
- Call
createImageBitmapand hand it an image blob, to create the image. - Grab the
bitmaprenderercontext from thecanvas. - Then transfer the image in.
Done, I've rendered the image!
AudioWorklet
Worklets are in! PaintWorklet shipped in Chrome 65, and now we're enabling AudioWorklet by default in Chrome 66. This new type of Worklet can be used to process audio in the dedicated audio thread, replacing the legacy ScriptProcessorNode which ran on the main thread. Each AudioWorklet runs in its own global scope, reducing latency and increasing throughput stability.
There are some interesting examples of AudioWorklet over on Google Chrome Labs.
And more!
These are just a few of the changes in Chrome 66 for developers, of course, there's plenty more.
TextAreaandSelectnow support theautocompleteattribute.- Setting
autocapitalizeon aformelement will apply to any child form fields, improving compatibility with Safari's implementation ofautocapitalize. trimStart()andtrimEnd()are now available as the standards-based way of trimming whitespace from strings.
Be sure to check out New in Chrome DevTools, to learn what's new in for DevTools in Chrome 66. And, if you're interested in Progressive Web Apps, check out the new PWA Roadshow video series. Then, click the subscribe button on our YouTube channel, and you'll get an email notification whenever we launch a new video.
I'm Pete LePage, and as soon as Chrome 67 is released, I'll be right here to tell you -- what's new in Chrome!
Official source: Official Chrome update
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.