# Bits and Bytes Explained

toggle-button

## Introduction

This page is to help clear up some confusion that I often see at forums and other sites on the web regarding internet speeds and download speeds and storage sizes.

I often see the questions like "I have a 1mb internet connection, why am I only getting 120kb speeds in my bittorrent client" or "I have a 8mb connection why am I only getting 1mb download speed"

There are also questions regarding external storage drives such as "I have a 2TB external hard drive, but it only shows 1.8TB when connected to the computer".

## Bits (b) and Bytes (B)

The questions on speed can mostly be answered with an explanation of bits (b) and bytes (B).

There are 8 bits in every byte.  8b = 1B

All Internet Service Providers (ISPs) advertise their speeds in bits. (b)
All browsers and bittorrent clients show speeds in bytes. (B)
All speed tests, at default, show speeds in bits.  (b)

So an internet connection is advertised as 8 megabits (8Mb/s), as that sounds faster than 1 megabyte.(1MB/s).
However, the browser, or bittorrent client will show a maximum speed on that connection in bytes or 1MB/s.

Likewise for a 1Mbps advertised speed which will show in the browser/bittorrent client as 1/8th of that or 125kB/s.

## Power of 2 vs Power of 10

Further complicating the issue is a discrepancy in the values of terms such as kilobytes, megabytes, gigabytes etc.

The International System of Units (SI) factors those on multiples of 10, so kilo = 1000, mega = 1,000,000 and giga = 1 billion.

For some purposes, like RAM and memory, computers use binary standards (power of 2) so kilo = 1024 or 2 to the 10th power; mega = 1048576 or 2 to the 20th power and giga = 1073741824 or 2 to the 30th power.

The basic differential is the 1024 vs 1000 in kilo.

External hard drives use the SI standard of 1000 and the operating system views the drive using 1024, which explains why the external will show up as a smaller size than advertised when connected to the computer.

ISPs also use the SI standard of 1000, again as this results in a larger advertised number.  Speed tests also use the SI standard.

Quite a few bittorrent clients use the factor of 2 or 1024 per kilo standard, causing a further deviation down from the advertised speed.

## Naming Standards

There has been some effort to clarify the distinction between the two standards above.  These have not gained much traction, but do make it a bit easier to distinguish.

The SI measurements retain their traditional prefixes of kilo (1000), mega (1 million), giga (1 billion) etc.

The binary prefixes should be kibi (1024) 2^10 , mebi (1048576) 2^20, gibi (1073741824) 2^30 etc and an "i" should be inserted in the abbreviation such as Kib (kibibits), Mib (mebibits), Gib (gibibits) etc.

## Special Note On Kilo

There is also some confusion as the the use of a capital "K" and small case "k".

The small case "k" should be used to designate the SI standard (1000).  An exception is when used informally as in "Y2K" and "40K salary".

The capital "K" should be used for the binary, factor of 2 (1024), designation as in kibibits (Kib) and kibibytes (KiB).  When using the binary designation, the capital "K" should be used even when the "i" is omitted as int "Kb" (kibibits) and "KB"  (kibibytes).

This discrepancy applies only to "kilo" and not to the other units.

A thanks to brunetu for clearing this one up.

## Conclusion

Hopefully this has clarified the speed and storage questions and the differences in data units for you.

You may want to check these links for some further information

VuzeWiki:  Data Units

Wikipedia:  Binary Prefix

If you have any questions, then you may post here or in our Forums.

An excellent series of articles by our editor, Remah