Why the ZIP size matters more than it looks
The number the builder checks is the zipped size of your site — it re-packs the ZIP without macOS litter and measures the result, which lands within a few percent of your file: 5 MB on the free plan, 18 MB on Pro. But the number your users feel is the unpacked size, because that is what is copied into the APK and read from storage every time the app starts. A ZIP of well-compressed text can be a fifth of its unpacked size; a ZIP of photos and video is barely smaller than the files themselves, because JPEG, MP4 and WebP are already compressed and DEFLATE has nothing left to squeeze.
That is why the tool reports both — and why the "saved by zip" figure is a quick diagnosis on its own. A ratio above 60% means the archive is mostly code and markup; a ratio under 10% means it is mostly media, and media is where the savings are.
How to read the treemap
Each rectangle is one file, and its area is proportional to its size. Colour is the file type: lime for images, violet for JavaScript, blue for CSS, green for HTML, amber for fonts, red for video. The 80 largest files are drawn individually; everything smaller is merged into a single grey "smaller files" block so a site with 3,000 tiny icons still produces a readable picture.
Hover any rectangle to see its full path. The table underneath lists the fifteen largest files with a concrete suggestion for each where one applies — a source map to delete, a WAV to convert, a bitmap that should be WebP.
The usual suspects, in order of how often they turn up
- Photos exported at camera resolution. A 4032-pixel JPEG displayed at 400 CSS pixels is carrying about 25 times the pixels it uses. The ZIP image compressor resizes and converts them in one pass.
- Background video. Hero videos routinely weigh 10–40 MB. Re-encode at 720p and a lower bitrate, or load it from a URL so it is only fetched when there is a connection.
- Source maps and build leftovers.
.mapfiles are often as large as the scripts they describe. They are for your debugger, not your users; the junk cleaner strips them along with__MACOSX,.gitandnode_modules. - Fonts in desktop formats. TTF and OTF are 30–60% larger than WOFF2 of the same face, and many sites ship all four formats "for compatibility" — the WebView only ever needs WOFF2.
- Development builds. An unminified React or Vue bundle can be 3–5 times the production build. If a script is several megabytes, confirm you zipped the output of
npm run build, not the dev server's files.
Is anything uploaded?
No. The ZIP is opened with JSZip inside this tab; the file never leaves your computer and the page keeps working with the network switched off once it has loaded.