How can I calculate how long it will take to transfer a file over LAN?

As Hippo and MaQleod have stated a byte is 8 bits.
This means 1Gigabit = 0.125 GigaBytes = 125 MegaBytes.

This means the theoretical maximum of a 1Gbps connection is 0.125 GigaBytes per second.

Remember, the entire connection will run at the speed of the slowest element. So, if you're downloading to your hard drive you'd expect it to be limited to the speed of the drives - about 60-70MB/s for a common mechanical hard drive.

Chances are even if there's nothing else to limit the speed you will still not achieve the theoretical maximum speed for data transfer because of other restricting factors such as packet overhead.

Also, you ideally want to make sure you are using Cat6 cabling, not Cat5/5e


Note on size prefixes

This section is why I felt I'd add my answer, even though it's a moderate dupe of the answers so far.

There are two main schemes for prefixing bytes to indicate magitude:

SI Prefix (abbr)= Num Bytes             |  IEC Prefix (abbr)= Num Bytes       
-------------------------------------------------------------------------------
1 GigaByte (GB) = 1 000 000 000 (10^9)  |  1 GibiByte (GiB) = 1 073 741 824 (2^30)
1 MegaByte (MB) = 1 000 000     (10^6)  |  1 MebiByte (MiB) = 1 048 576     (2^20)
1 KiloByte (KB) = 1 000         (10^3)  |  1 KibiByte (KiB) = 1 024         (2^10)

It is highly common for most people to use the SI prefix to mean the IEC number of bytes, although in all "offical" terms this usage is deprecated and shouldn't be used. It doesn't help that both prefix patterns are often incorrectly represented by the same short versions - you often can't tell just by looking if GB is GigaByte or GibiByte, even though it should be Giga, it's often used to represent Gibi - such as in Windows Explorer for example.

This is why you often buy a 500GB hard drive that, when connected, only has ~465GiB of space - the manufacturer is using Giga, and the OS is using Gibi.

In terms of GigaBit Ethernet, it runs at a speed of 1000 Megabits per second - or 1 000 000 000 bits/s - so for completeness the final results are:

1 Gigabit  =  125 000 000 Bytes  =   125 MegaBytes  =   0.125 GigaBytes 
                                 =  ~119 MebiBytes  =  ~0.116 Gibibytes  

In a 1 Gbps connection, 1 Gigabit will take 1 second. Since there are 8 bits in a byte, 1 Gigabyte will take 8 times longer.

So your 1 GB file will take 8 seconds in ideal conditions. However, hard disk speeds are usually much slower, so your file transfer might take three times longer to complete.


1 byte = 8 bits, this means that 1 gigabyte is equal to 8589934592 bits, or 8 gigabits. So 1 gigabyte will take 8 seconds on a 1 gigabit/second LAN (but you have to allow for some packet overhead and so it will take a bit longer).

I must add that this will vary GREATLY depending on protocol. For instance, transfers over NFS have much lower overhead that packets over SMB and both are significantly faster/leaner than NETBIOS (which hopefully no one in their right mind is using anymore).