Analyze page weight, resource breakdown, third-party scripts, and unused code with real Lighthouse data.
Page weight directly impacts Largest Contentful Paint (LCP) and Time to Interactive. The median mobile page now weighs 2.5 MB, growing ~10% per year. But median doesn't mean good — sites in the bottom 25th percentile (under 1 MB) consistently score higher on Core Web Vitals.
JavaScript is the most expensive resource type: every 50 KB of JS costs ~100ms of parse/compile time on mid-range phones. Images are cheaper byte-for-byte since they don't block the main thread, but unoptimized images are the largest contributor to total page weight.
Source: HTTP Archive, 2025-2026 mobile data
Use AVIF (50% savings over JPEG) or WebP (30% savings). Serve responsive sizes with srcset. Lazy-load below-fold images.
Tree-shake unused code. Code-split routes. Audit npm dependencies — many bundles ship 30-50% unused code.
Brotli compresses 15-25% better than gzip for text resources. Most CDNs and reverse proxies support it out of the box.
Third-party scripts average 30-50% of total page weight. Remove unused trackers, defer non-essential scripts, and use lightweight alternatives.
Replace multiple font files with a single variable font. Subset to only the characters you need. Use WOFF2 format.
Set a performance budget (e.g., 200 KB JS, 500 KB images). Use Lighthouse CI to enforce budgets in your CI pipeline.
Your feedback helps us improve
Under 1 MB total transfer size is excellent. 1-2 MB is acceptable for content-rich pages. 2-3 MB is heavy and will impact mobile users. Over 3 MB is considered poor — the median web page is around 2.5 MB on mobile, but that doesn't mean it's good. Aim to be in the bottom 25th percentile.
Larger pages take longer to download (hurting LCP) and require more CPU to parse JavaScript (hurting TBT and INP). 50% of mobile sites take over 14s to become interactive, with a median mobile Total Blocking Time (TBT) of 1,916ms. Every 100 KB of JavaScript costs roughly 100ms of parse time on mid-range phones. Images are less CPU-expensive than JavaScript byte-for-byte.
According to HTTP Archive data, the median mobile page weighs about 2,559 KB (~2.5 MB), growing roughly 10% year-over-year. Desktop median is about 2,862 KB. At the 90th percentile, pages exceed 8 MB. JavaScript and images are the two largest contributors.
Indirectly, yes. Page size impacts Core Web Vitals (LCP, INP, CLS). While only 48% of mobile sites pass all CWVs and speed has a weak direct correlation to organic rank, a 1-second delay can lead to a 7% drop in conversions. Very large pages also affect crawl budget and have a larger carbon footprint — a median 2.5MB page correlates linearly with higher energy use in data transfer.
Transfer size is the actual bytes sent over the network after gzip or brotli compression. Uncompressed size is the raw content before compression. Text-based resources (HTML, CSS, JS, JSON) typically compress 3-5x. Images are already compressed so transfer and uncompressed sizes are similar.
Compress images with AVIF/WebP (30-50% savings over JPEG). Tree-shake and code-split JavaScript. Remove unused CSS. Enable brotli compression on your server. Lazy-load images below the fold. Audit third-party scripts — they often account for 30-50% of total page weight.
Explore more performance tools