Practical guide

Calculate file transfer time from bandwidth

Use file size, link speed, and efficiency to estimate transfer time, with a 10 GB over 100 Mbps worked example and unit checks.

By StackCalcs · Updated

Transfer time is file size in bits divided by effective throughput in bits per second. Protocol overhead, congestion, storage speed, server limits, and Wi-Fi conditions mean effective throughput is normally below the advertised link rate.

Formula and variables

seconds = file size in bytes × 8 ÷ (link bits/second × efficiency)

File size is the input payload. Link speed is the nominal bandwidth. Efficiency is the measured or assumed fraction of that bandwidth available to the transfer.

Worked example

Input: 10 decimal GB, 100 Mbps, and 90% efficiency. The file contains 80,000 megabits and the effective link rate is 90 Mbps. Output: 80,000 ÷ 90 = 888.89 seconds, about 14 minutes 49 seconds.

The most common error is reading Mbps as MB/s. One byte contains eight bits, so 100 Mbps is at most 12.5 MB/s before overhead. Use the bandwidth transfer time calculator for your inputs. On long-latency paths, the bandwidth-delay product calculator estimates the data that must remain in flight to fill the link.

Choosing an efficiency value

Efficiency is the fraction of the nominal link rate a transfer actually achieves, and it varies more than people expect:

Scenario Typical efficiency
Clean gigabit LAN, single large file 95–98%
Wi-Fi 5/6, good signal 60–85%
VPN tunnel over a WAN link 60–80%
Congested shared internet uplink 30–60%
Many small files (metadata-heavy) 20–50%

Small files hurt efficiency the most because per-file overhead (connection setup, directory lookups, filesystem metadata writes) dominates when payloads are small, regardless of link speed.

Decimal versus binary units

This guide and its calculator use decimal GB (1 GB = 1,000,000,000 bytes) and decimal Mbps, matching how ISPs and cloud providers report both file size and bandwidth. If a tool instead reports GiB (1 GiB = 1,073,741,824 bytes), convert by multiplying by 1.073741824 before using this formula, or the transfer-time estimate will run about 7% low.

Official sources

Related calculators