Load Time Budget Calculator
Work out the maximum page weight you can ship to hit a target load time on a given connection.
How it works
Usable time = target − latency · Budget (MB) = speed (Mbps) × usable time ÷ 8
Loading a page costs a fixed slice of time for the connection to open (latency) plus the time to stream the bytes over the link. Subtracting latency from your target leaves the window available for transfer; multiplying that by the connection speed and dividing by eight (bits to bytes) gives the maximum total page weight. Real pages also pay per-request overhead and render time, so treat this as a generous ceiling and aim well below it.
Worked example
Target 3 s on a 5 Mbps connection with 150 ms latency: usable time is 3 − 0.15 = 2.85 s. Budget = 5 × 2.85 ÷ 8 ≈ 1.78 MB. To be safe against render and script time, a real budget of around 1 MB is wiser.
Frequently asked questions
Why divide by 8?
Connection speed is quoted in megabits per second (Mbps) but file sizes are in megabytes (MB), and there are 8 bits in a byte. Dividing bits by 8 converts the transfer to bytes.
Does this include images, scripts and fonts?
Yes — the budget is the total weight of everything the page downloads. Split it across HTML, CSS, JavaScript, images and fonts, and remember that many separate requests each add latency.
What connection speed should I plan for?
Test against a slow, realistic mobile connection rather than your office fiber. Many performance budgets assume a throttled "Slow 4G" profile of roughly 1.5 Mbps with 150 ms latency to represent real-world users.
Related calculators
This calculator is for educational purposes. Double-check important results before acting on them.