gizmobench

Data Transfer Calculator

Type a file size, the speed of the link it travels over, and how much of that link you expect to lose on the way, and the transfer time comes back in one line. The two places this arithmetic usually goes wrong are separated here rather than assumed: the size picker keeps decimal units apart from binary ones, so 1 GB is 1,000,000,000 bytes and 1 GiB is 1,073,741,824, and the speed picker keeps bits per second apart from bytes per second, so a link typed as 100 Mbps is restated as 12.5 MB/s next to the answer. On that link the decimal gigabyte lands in 80.0 s and the binary one in 85.9 s, and 12% of overhead moves the first to 90.9 s. The formula is printed with your own numbers inside it, the answer to ten significant figures sits under the readout before any rounding for the screen, and nothing is measured: the rate in the answer is the rate you typed.

Transfer time at the line rate1 min 20.0 s1 GB at 100 Mbps · no overhead
1,000,000,000 B × 8 ÷ 100,000,000 bit/s = 80.0 s
File size
1,000,000,000 B
Link speed
100,000,000 bit/s = 12.5 MB/s = 11.9 MiB/s
Overhead
%
none set
Transfer time
80.0 sat the full line rate

The exact figure before the rounding for the screen: 80 s.

A link rate is a ceiling. Protocol headers, acknowledgements, encryption, a busy server, a shared line and Wi-Fi retries each take a part of it, so a real transfer lands later than the ideal figure. How much later depends on the path, which this page cannot see: the overhead box is where your own figure for that goes, and it opens empty so that nothing is assumed on your behalf.

Worked cases

  • 1 GB at 100 Mbpsno overhead
    80.0 s
  • 1 GiB at 100 Mbpsbinary size
    85.9 s
  • 12% overhead1 GB at 100 Mbps
    90.9 s

One prefix, two sizes

A decimal unit is a power of 1,000 and a binary unit is a power of 1,024. Operating systems and download managers disagree about which one they print, which is why both are in the picker above under their own names.

DecimalBytesBinaryBytesBinary is bigger by
kB1,000KiB1,024+2.40%
MB1,000,000MiB1,048,576+4.86%
GB1,000,000,000GiB1,073,741,824+7.37%
TB1,000,000,000,000TiB1,099,511,627,776+9.95%
PB1,000,000,000,000,000PiB1,125,899,906,842,624+12.59%
Bits are not bytes, and a GB is not a GiB. A link sold as 100 Mbps carries 100,000,000 bits a second, which is 12.5 MB/s, and the eight between them is the step this arithmetic usually loses. The second confusion is the size itself: 1 GB is 1,000,000,000 bytes and takes 80.0 s on that link, while 1 GiB is 1,073,741,824 bytes and takes 85.9 s. Both boxes above name which one they mean, and neither is quietly converted into the other.
What the number is, and is not. It is the time a link running flat out at the rate you typed would need, with your own overhead taken off the top. It is not a measurement, and nothing here watches your connection. Exact arithmetic: time is bytes times eight, divided by the link rate in bits per second, then divided by one minus the overhead you set. GB and GiB are kept apart, so 1 GB is 1,000,000,000 bytes and 1 GiB is 1,073,741,824. It measures nothing: the rate is the one you typed, not the speed you will get.

Common questions

How long does it take to transfer 1 GB at 100 Mbps?
80.0 s at the line rate. A gigabyte is 1,000,000,000 bytes, a byte is eight bits, so the file is 8,000,000,000 bits, and a 100 Mbps link carries 100,000,000 of them a second. Put 12% in the overhead box and the same file takes 90.9 s, because the arithmetic then divides by one minus 0.12. Both figures are on the page at once, so the difference between the ideal and the adjusted time is never hidden.
What is the formula for data transfer time?
Time in seconds is the file size in bytes, times eight, divided by the link rate in bits per second, and then divided by one minus your overhead. Everything else is unit conversion. The page prints that line with your own numbers substituted into it, so a figure typed into the wrong box is easy to spot rather than something you have to trust.
Is a GB the same as a GiB?
No, and the gap is larger than most people expect. A GB is a decimal unit, 1,000,000,000 bytes. A GiB is a binary one, 1,073,741,824 bytes, which the table on the page puts at +7.37% more data. On a 100 Mbps link that is 80.0 s against 85.9 s for what both are casually called a gigabyte. Storage is usually sold in decimal units while operating systems often report binary ones, which is why both sit in the picker under their own names.
Why does a 100 Mbps connection download at 12.5 MB/s?
Because a link is quoted in bits per second and a file is measured in bytes, and there are eight bits in a byte. 100,000,000 bits a second is 12,500,000 bytes a second, which is 12.5 MB/s in decimal units or 11.9 MiB/s in binary ones. Nothing has gone missing. The speed picker on this page has both families in it, and the answer restates your rate in the one you did not choose.
What overhead figure belongs in the box?
The box opens empty, because this page cannot see your link and has no business inventing a number for it. If you have timed a real transfer, the gap between the two figures is your overhead: an ideal 80.0 s that actually took 90.9 s is 12%. Protocol headers, acknowledgements, encryption, a shared line, Wi-Fi retries and a busy server on the far end all live inside that one percentage.
How long does a 4.7 GB file take at 50 Mbps?
12 min 32.0 s at the line rate, before any overhead. That is the size of a single-layer DVD image, and 50 Mbps is a common home upload or download tier. Switch the size unit to GiB and the same 4.7 becomes 5,046,586,572.8 bytes, which is why the unit beside the number matters as much as the number.
How long does 1 TB take at 1 Gbps?
2 h 13 min 20.0 s at the line rate. The page writes any duration over a minute out in days, hours, minutes and seconds, and keeps the plain figure in seconds beside it, so a backup window is readable without a second calculation.
Does this measure my internet speed?
No. There is no timer, no probe and no download: the rate used in the answer is the rate you typed into the box. That is a deliberate limit rather than a missing feature, because a speed test measures one moment on one path, and this page is the arithmetic you apply to whatever rate you believe you have.
Are my numbers stored or sent anywhere?
They stay in this browser. The last size, unit, speed and overhead you used are remembered locally so the page opens where you left it, and nothing is uploaded. If storage is blocked or full the calculator still works, it simply forgets.

Exact arithmetic: time is bytes times eight, divided by the link rate in bits per second, then divided by one minus the overhead you set. GB and GiB are kept apart, so 1 GB is 1,000,000,000 bytes and 1 GiB is 1,073,741,824. It measures nothing: the rate is the one you typed, not the speed you will get.