Enter your file size.
Use the size shown by your file manager and choose the matching unit. Decimal units (KB, MB, GB, TB) use powers of 1,000. Binary units (KiB, MiB, GiB, TiB) use powers of 1,024. For several files, enter their combined size. A size of zero returns zero seconds.
Set your connection speed.
Choose bps, Kbps, Mbps, or Gbps. Use your upload speed for uploads and your download speed for downloads. These can be very different. If a download app reports MB/s, multiply that number by 8 to get Mbps; if it reports MiB/s, multiply by 8.388608 instead.
Adjust available bandwidth, if needed.
Leave utilization at 100% for the theoretical full-speed estimate. A lower percentage models less bandwidth reaching the transfer. For example, at 50%, a 100 Mbps connection has an effective rate of 50 Mbps and the transfer takes twice as long. Valid values are 1–100%, including decimals. Leaving the box blank uses 100%.
Calculate, then copy.
Select Calculate transfer time or press Enter in a number field. You’ll see a readable duration, the seconds value, and the formula. Editing an input clears the old result; calculate again to update it. Copy result includes the inputs, estimate, and formula. If clipboard access is unavailable, select and copy the text provided. Reset restores the 1 GB / 100 Mbps example.
Try the one-gigabyte example.
Enter 1 GB, 100 Mbps, and 100% utilization. You’ll get 80 seconds, or 1 min 20 sec.
Switch GB to GiB and the result becomes 85.89934592 seconds. Set utilization to 50% and that result doubles to 171.79869184 seconds.
The formula
First convert the file size to bytes and the connection speed to bits per second. Then:
effective bps = speed in bps × (utilization / 100)seconds = (file size in bytes × 8) / effective bps
The seconds value preserves the calculated JavaScript number. The readable duration is rounded to the nearest hundredth of a second; a positive time below 0.01 seconds is shown as “Less than 0.01 sec.” Very large durations use approximate days. Decimal arithmetic has normal floating-point limits, and calculations that overflow or underflow are rejected.
A quick unit reference
A capital B means bytes. A lowercase b means bits. One byte contains eight bits.
| Unit | System | Bytes per unit |
|---|---|---|
| B | Byte | 1 |
| KB | Decimal | 1,000 |
| MB | Decimal | 1,000,000 |
| GB | Decimal | 1,000,000,000 |
| TB | Decimal | 1,000,000,000,000 |
| KiB | Binary | 1,024 |
| MiB | Binary | 1,048,576 |
| GiB | Binary | 1,073,741,824 |
| TiB | Binary | 1,099,511,627,776 |
| Unit | Bits per second per unit |
|---|---|
| bps | 1 |
| Kbps | 1,000 |
| Mbps | 1,000,000 |
| Gbps | 1,000,000,000 |
Why the actual wait can be longer
This calculation assumes constant effective bandwidth. It does not measure your connection or perform a speed test. Wi-Fi interference, other users, server limits, latency, protocol overhead, retries, and setup time can change the result. File compression or caching can also change how much data is transferred.
Utilization is a planning assumption, not a measured correction. It cannot predict interruptions or every source of delay. Treat the result as a baseline, and leave extra time for large or important transfers.
If an input is rejected
Enter complete, finite numbers: 1.5 and 1e3 are accepted. Commas, unit text inside number fields, empty size or speed fields, negative size, and speed of zero are rejected. Utilization must be between 1 and 100. Extremely large or small values may exceed the numeric range.