💵API Response Size Budget Calculator

Total the transfer, then work back the allowed size per response

reqs
KB
reqs
ms
Mbps
ms
pv

There is no recognised upper limit for response size. The same 100 KB behaves completely differently at one call per page than at twenty. This page therefore proposes no figure of its own and only works backwards from the target you enter. KB, MB and GB use 1,024, and 1 Mbps converts to 125 bytes per millisecond. JS and CSS bundle budgets belong to a different tool.

You Might Also Need

How to use this API response size budget calculator

Enter the calls fired per page view, the average response size, how many requests go out at once, the round trip time, the bandwidth and your target. The page reports total transfer, estimated completion time, and the size each response must stay under to hit that target. Add monthly page views and it also totals the monthly bytes.

How it is calculated

Transfer time is total bytes divided by bandwidth in Mbps times 125 bytes per millisecond. Round trip latency is ceil(calls / concurrency) multiplied by RTT. The allowed size is (target minus round trip latency) times bandwidth divided by calls, rounded down. KB, MB and GB use 1,024. As of October 2026 there is no recognised upper limit for response size, so the page only works backwards from your own target.

Limits and cautions

Real requests also carry TLS handshakes, server processing, HTTP/2 multiplexing and cache hits, so the field is messier than this arithmetic. Enter post-compression sizes or the transfer time will be wrong. This page proposes no size ceiling of its own and does not cover JS or CSS bundle budgets.

Frequently asked questions

How many KB should a response be?

There is no recognised limit. The same 100 KB feels completely different at one call per page than at twenty, and bandwidth and round trip time shift it again. This page therefore proposes no figure and works the allowed size backwards from your target and bandwidth.

Why does concurrency matter here?

How many requests you fire at once decides how many round trips stack up. Sending 8 calls six at a time stacks only 2 rounds of RTT, while sending them one by one stacks 8 rounds and quadruples the latency.

How is this different from a bundle budget?

A bundle budget covers the JS and CSS downloaded before the first render. This page counts only the API responses exchanged after the page appears. You need both to see total transfer, so neither replaces the other.