WASM WAT
File conversion

Convert WASM to WAT

Convert now
QUICK ANSWER
Is it possible to convert WASM to WAT?
Yes - WASM converts to WAT.

You can do it right here with our free converter - no sign-up, and your file is deleted right after.

This is a clean, lossless disassembly: wasm-tools print module.wasm -o module.wat or wasm2wat module.wasm -o module.wat turns the binary into S-expression text. Chrome and Firefox devtools also show the WAT automatically when you inspect a .wasm.

On this page

Tested on macOS, Windows & Linux
Last verified Sep 2026

More free converters

HEIC, PNG, WEBP, MP3 and more - every tool here is free.

Open the toolbox
WASM → WAT converterFREE
Drop a .WASM file here
or pick one - we convert it to .WAT and give you the file to download

Why convert WASM to WAT?

WAT is the human-readable text form of WebAssembly. People convert a .wasm to .wat to read, audit or debug what a module actually does - its functions, imports and exports - since the binary itself is unreadable.

How to convert WASM to WAT

wasm-tools print OPEN-SOURCE

From the Bytecode Alliance toolkit, run wasm-tools print module.wasm -o module.wat to write the text format. Omit -o to print to stdout.

wasm2wat (WABT) OPEN-SOURCE

Using the WebAssembly Binary Toolkit, run wasm2wat module.wasm -o module.wat. Add --generate-names for readable function labels and -f to fold expressions.

About these formats

Quality & what to watch

  • The conversion is faithful but not the original source: you see low-level WASM instructions, not the C/C++/Rust it was compiled from.
  • Unnamed functions appear as numeric indices unless you pass a name-generating flag, making large modules hard to follow.
  • Editing the WAT and re-assembling with wat2wasm is possible but easy to get wrong for anything non-trivial.

Frequently asked questions

Is wasm-to-wat lossless?
Yes for the module's structure and instructions; it faithfully represents the binary, just not the original high-level source.
wasm-tools or wabt - which should I use?
Both work; wasm-tools is the Bytecode Alliance CLI, wasm2wat ships with WABT. Use whichever is already installed.
Can I convert the WAT back to .wasm?
Yes, wat2wasm module.wat -o module.wasm (WABT) reassembles it into the binary.
How do I get readable function names?
Pass --generate-names to wasm2wat, or keep the name section in the original build.