Guide
Setting a page weight budget and estimating load time
Page weight is the total size of everything a browser downloads to show a page: the HTML, stylesheets, scripts, images, fonts and anything else. It strongly affects how fast a page feels on phones and slow connections, and it costs visitors on metered data. This calculator adds up your assets by type, shows which category dominates, estimates the download time on typical networks and compares the total to a budget you set.
What to include
Count what is transferred, not what sits on disk. Compressed text with gzip or Brotli is much smaller on the wire than in the source files, while JPEG, PNG, WebP, AVIF, WOFF2 fonts and video are already compressed and do not shrink further. Third-party scripts such as analytics, ads and embeds belong in the total too, because the visitor downloads them from your page.
How compression is handled
For each asset you enter a size per file, the number of files, and a toggle for whether the size is already compressed. When it is not, the calculator applies assumed ratios for text that typical servers achieve: HTML to 25 percent, CSS to 20 percent and JavaScript to 30 percent of the original, and 50 percent for other text. If you copy sizes from DevTools’ “transferred” column, switch the toggle on so nothing is reduced twice.
The download-time model
Time is bandwidth time plus latency. Bandwidth time is the total in bits divided by the network speed. Latency is the round trips needed to set up connections and request files: three for DNS, TCP and TLS, plus one for each doubling of the request count, rounded up, at the profile’s round-trip time. Four profiles are built in: slow 4G at 1.6 Mbps and 150 ms, fast 4G at 9 Mbps and 60 ms, broadband at 50 Mbps and 20 ms, and 3G at 0.4 Mbps and 400 ms. These resemble the throttling presets used in browser tools.
A worked example
The Sample page has one 60 KB HTML file, two 90 KB stylesheets, four 450 KB scripts, three 40 KB fonts and eight 180 KB images. After compression it comes to 2,151 KB over 18 requests: images 1,440 KB, scripts 540 KB, fonts 120 KB, CSS 36 KB and HTML 15 KB. On slow 4G that takes about 12.0 seconds to download, and the page is 1,151 KB over the default 1,000 KB budget. The scripts also trigger the note about heavy JavaScript.
Why JavaScript costs more than its size
A kilobyte of image is decoded once, off the main thread. A kilobyte of JavaScript must be downloaded, parsed, compiled and executed on the main thread, which on mid-range phones is several times slower than on a laptop, and it delays interaction. That is why the tool warns above 300 KB of compressed JavaScript and why budgets for scripts are usually stricter than for images.
Getting real numbers
Open DevTools, go to the Network tab, tick “Disable cache”, reload, and read the transferred total at the bottom. The filter buttons (JS, CSS, Img, Font) show a total per type. Enter those values and set the number of files. For repeatable measurements, run Lighthouse or WebPageTest with throttling.
Limits
The estimate ignores caching, HTTP/2 multiplexing details, server think time, rendering and script execution, so it is a lower bound on load time rather than a measurement. Use it for budgets and comparisons between options, and verify with a real test.
Related tools
- Core Web Vitals Calculator rates the user-facing timings that weight affects.
- HAR Analyzer breaks a real capture down by type and host.
- Image Compressor shrinks the largest category on most pages.
- Code Minifier reduces script and stylesheet bytes.
Checked against the current version of the Page Weight Calculator on .

