You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Revise WebAssembly response size and compression details
Updated captions and descriptions for response size figures, added new figures for compression methods, and clarified the comparison between WebAssembly and JavaScript deliverables.
Copy file name to clipboardExpand all lines: src/content/en/2025/webassembly.md
+32-11Lines changed: 32 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -145,36 +145,57 @@ Conversely, at the 90th percentile, sizes increase significantly to 381 KB on de
145
145
146
146
{{ figure_markup(
147
147
image="raw-response-sizes.png",
148
-
caption="Raw response sizes.",
148
+
caption="Response sizes.",
149
149
description="Bar chart showing the distribution of WebAssembly (Wasm) raw response sizes across desktop and mobile platforms, measured in kilobytes across various percentiles. At the lower and median percentiles, the file sizes are identical and extremely small, starting at just 2 KB at the 10th percentile and reaching 14 KB at the 50th percentile for both platforms. However, a significant divergence occurs at the 90th percentile, where desktop response sizes reach 381 KB compared to 316 KB on mobile.",
The above charts shows size of response body size, It is often called as "raw response size" that measures only the raw, often decoded, data payload received. It represents the size of the resource itself. However as per the research and common practices for Wasm deliverables, Wasm modules are compressed and optimized with various tools like <ahreflang="en"href="https://github.com/google/brotli">Brotli</a> and also transfered over network to the client with compression methods like gzip, br, zstd along with Content-Encoding headers.
157
+
156
158
{{ figure_markup(
157
-
image="uncompressed-response-sizes.png",
158
-
caption="Uncompressed response sizes.",
159
-
description="Bar chart showing the uncompressed response sizes for WebAssembly (Wasm) modules, showing a significant divergence between platforms at higher percentiles. While modules at the 10th, 25th, and 50th percentiles remain small and nearly identical across devices—ranging from 5 KB to 31 KB—the gap widens considerably for the largest files. At the 90th percentile, desktop modules reach 897 KB compared to 756 KB on mobile.",
caption="Compression methods used for desktop clients",
161
+
description="Pie chart shows compression methods br, gzip and zstd along with couple of records for aws_chunked, It shows Wasm are widely transfer with 'br' compressed method covers 78.1%, gzip compression method 17.9% and zstd compression method covers 3.9% for desktop clients",
caption="Compression methods used for mobile clients",
171
+
description="Pie chart shows compression methods br, gzip and zstd along with couple of records for aws_chunked, It shows Wasm are widely transfer with 'br' compressed method covers 80.1%, gzip compression method 17.9% and zstd compression method covers 3.9% for mobile clients",
When examining uncompressed sizes, we observe that while the median module remains lightweight at approximately 30 KB on both platforms, the largest binaries at the 90th percentile are significantly heavier on desktop (897 KB) than on mobile (756 KB).
178
+
Interestingly, If we see [performance benchmarks](https://facebook.github.io/zstd/#benchmarks)" activities by various communities from past couple of years, the compression methods 'br' and 'zstd' usage awareness are increasing and it shows continuous evolution and adoption by developers and cdn providers.
179
+
180
+
{{ figure_markup(
181
+
caption="Largest WebAssembly file (desktop).",
182
+
content="233.6 MB",
183
+
classes="big-number",
184
+
sheets_gid="241152503",
185
+
sql_file="module_sizes.sql"
186
+
)
187
+
}}
167
188
168
189
{{ figure_markup(
169
-
caption="Largest WebAssembly file detected.",
170
-
content="228 MB",
190
+
caption="Largest WebAssembly file (mobile).",
191
+
content="170.4 MB",
171
192
classes="big-number",
172
193
sheets_gid="241152503",
173
194
sql_file="module_sizes.sql"
174
195
)
175
196
}}
176
197
177
-
Beyond these standard distributions, the dataset contains significant outliers. The largest single WebAssembly module identified measured 228 MB on desktop and 166 MB on mobile, indicating the deployment of large-scale client-side applications.
198
+
Beyond these standard distributions, the dataset contains significant outliers. The largest single WebAssembly module identified measured 233.6 MB on desktop and 170.4 MB on mobile, indicating the deployment of large-scale client-side applications.
178
199
179
200
Interestingly If we think about JS deliverables are in MB size often but Wasm deliverables are in quit smaller size this is because JS is the human readable, high level source code, while bytecode is a low level, intermediate representation of the code that is machine agnostic.
180
201
@@ -242,4 +263,4 @@ We find that Bulk Memory is the most widely adopted feature, appearing in 187,67
242
263
243
264
WebAssembly adoption has significantly increased over the last four years, rising from 0.04% in 2021 to 0.35% in 2025, though growth has stabilized in the last two years. Usage is most prevalent on high-ranking websites and decreases significantly among less popular pages. We find that WebAssembly is currently deployed for two distinct purposes: handling specific utility functions (such as encryption or checksums) and powering full standalone applications. Furthermore, our findings highlight the widespread adoption of Microsoft’s frameworks, indicating their significant role in driving the current WebAssembly ecosystem.
244
265
245
-
Considering the significant developments in Wasm specifications and increased interest from the community, we believe the adoption of WebAssembly will further increase in the future.
266
+
Considering the significant developments in Wasm specifications and increased interest from the community, we believe the adoption of WebAssembly will further increase in the future.
0 commit comments