Throughput Calculator
Calculate maximum achievable TCP throughput from the receive window size and round-trip time.
Inputs
Receive window (or bandwidth-delay product), in bytes
Max Throughput
10.486Mbps
Throughput
1,310,720bytes/s
Throughput
10,485,760bps
Step by step
Values used
TCP Window Size = 65,536 bytes; Round-Trip Time (RTT) = 50 ms
Maximum throughput
throughput = window_size / RTT
Max Throughput
= 10.486 Mbps
Throughput
= 1,310,720 bytes/s
Throughput
= 10,485,760 bps
How it works
TCP throughput is fundamentally limited by the sender's window size (how much unacknowledged data can be in flight) divided by the round-trip time, since the sender must wait for acknowledgments before the window slides forward. This relationship — throughput = window size / RTT — is known as the bandwidth-delay product relationship, and it explains why high-latency links need larger TCP windows (window scaling) to fully utilize available bandwidth.
Formula
Maximum throughput
throughput = window_size / RTT
- W
- TCP window size in bytes
- RTT
- Round-trip time in seconds
Frequently Asked Questions
Why does RTT limit throughput even with plenty of bandwidth?
TCP can only have one window's worth of data 'in flight' unacknowledged at a time. If the RTT is high, the sender spends more time waiting for acknowledgments, so even a fast link is bottlenecked unless the window is large enough to keep the pipe full.
How do I increase throughput on a high-latency link?
Increase the TCP window size (via window scaling, RFC 1323) so more data can be in flight before an acknowledgment is required, or use multiple parallel TCP connections to work around a single connection's window limit.
What is the bandwidth-delay product?
It's the same formula rearranged: bandwidth × delay = the amount of data that can be 'in the pipe' at any moment. To saturate a given bandwidth over a given RTT, your window size needs to be at least that bandwidth-delay product.
Does this account for packet loss?
No — this calculates the theoretical maximum assuming no loss. Actual throughput on a lossy link is typically much lower because TCP congestion control shrinks the window in response to lost packets.