Wasm 3.0 Completed

Published on September 17, 2025 by Andreas Rossberg.

Three years ago, version 2.0 of the Wasm standard was (essentially) finished, which brought a number of new features, such as vector instructions, bulk memory operations, multiple return values, and simple reference types.

In the meantime, the Wasm W3C Community Group and Working Group have not been lazy. Today, we are happy to announce the release of Wasm 3.0 as the new “live” standard.

Title page of the WebAssembly Specification, Release 3.0, 2025-09-17

This is a substantially larger update: several big features, some of which have been in the making for six or eight years, finally made it over the finishing line.

In addition to these core features, embeddings of Wasm into JavaScript benefit from a new extension to the JS API:

With these new features, Wasm has much better support for compiling high-level programming languages. Enabled by this, we have seen various new languages popping up to target Wasm, such as Java, OCaml, Scala, Kotlin, Scheme, or Dart, all of which use the new GC feature.

On top of all these goodies, Wasm 3.0 also is the first version of the standard that has been produced with the new SpecTec tool chain. We believe that this makes for an even more reliable specification.

Wasm 3.0 is already shipping in most major web browsers, and support in stand-alone engines like Wasmtime is on track to completion as well. The Wasm feature status page tracks support across engines.