What is the correct abbreviation for the word “byte”? What about the word “bit”?

For example, isn't it common to see in printed media that “Kb”, “Mb” and “Gb” are used in place of “KB”, “MB” and “GB”, respectively?

Is the usage different, depending on the medium? Has this changed over time?

Although I don't specifically recall encountering this very-very recently, a quick Google easily reveals a example from about a decade ago, circa 1998/1999:


If you are going to use a 100 MHz bus speed, you should plan on getting PC-100 SDRAM memory. Many people have reported successfully using their old PC-66 memory, however, if you do try it and have problems overclocking, memory would be a likely suspect. You should also plan on starting with a minimum of 64 Mb. It's best to get 64 or 128 Mb DIMM modules since the number of memory sockets is usually only 3, or 4 at the most. Two 32 Mb DIMM modules will limit your ability to upgrade memory in the future.
  • 3
    See en.wikipedia.org/wiki/Byte#Unit_symbol. kb = kbit = kilobit; kB = kilobyte – iterums Oct 6 '13 at 19:32
  • 1
    and Gb = Gbit = gigabit; GB = gigabyte – iterums Oct 6 '13 at 19:38
  • What is to say the memory modules were rated in bits and not bytes? A 64 megabit memory is not a mere hypothetical possibility. Have you asked on SO? – Kris Oct 7 '13 at 6:43
  • @Kris, no, PC-100 SDRAM did come in 32, 64 and 128 megabytes; there is no mistake here. – cnst Oct 7 '13 at 15:46
  • 1
    Why is this closed? This is a valid question, and there are no good answers for it so far. Just because one answer is very basic, and another answer is a complete offtopic, is no justification for closing the question itself. There are no commonly-available references that explain this thoroughly, please kindly reopen this question. – cnst Oct 8 '13 at 17:02

The correct abbreviation for byte (i.e. 8 bits) is B.

For bit (Binary digIT) it is b.

When the memories were very costly, the manufacturers tried to confuse the novice ; now they don't care much, and even write"b" instead of "B". Everybody understands byte however.

  • 1
    Network speeds, on the other hand, are always understood as bits. Ethernet comes in 10, 100 and 1000 Mbit speeds, for instance. – MSalters Oct 6 '13 at 21:22
  • Not every one understands 8-bits as a byte. It may be used in English language, but in other countries, (France, for example), it's "octet", abbreviated with a lower case o. A Gigaoctet is "Go" – Canis Lupus Oct 7 '13 at 18:00
  • And then you also get the explicitly binary versions of the prefixes, so you can end up with 2^30 bytes = 1 Gibioctet = 1 Gio. – Hellion Oct 7 '13 at 18:38

A very pertinent comment :

Network speeds, on the other hand, are always understood as bits. Ethernet comes in 10, 100 and 1000 Mbit speeds, for instance. – MSalters

appeals for another answer ; I hope it will not be found too technical.

On a single wire, you have to transmit the bits one by one ; the unit is baud (from the French engineer Baudot), that is one bit per second. It depends on the nature of the wire and of its environment.

However, it is unpractical to transmit a continuous stream ; at the other end, the bits are grouped to form bytes, and one single mistake (a loss bit for instance) would scramble all the rest. The solution is to send packets, in a definite numbers of bits, with a header and number showing the start and the sequential order of the packet (they could arrive in a different order of sending, having taken different routes) ; and a marker of the end, with a check-key calculated from the content.

This key is recalculated by the receiver, and it they don't match, something has gone wrong within the content ; then the sequential order of the defective packet is sent back to the transmitter, with a signal meaning "not properly received, please send back".

Eventually, all the corrected messages are put into the proper sequence.

The real rate should be expressed in (useful) bits/second. With all the operations described above (capacity of the line and time "lost"), it is obvious that the rhythm is far less than the theoretical maximum, especially for a bad line or if you are far from the hub, often less than half or third.

Now, the providers of broad band boasts of bauds, whilst they should honestly express themselves in bits/s.

It is why so many are disappointed by the actual quality of transmission, far below the commercial add.

  • 2
    what does this has to do with the question? – cnst Oct 7 '13 at 17:59
  • 1
    A) the Baud is a measure of Symbols per second, not Bits per second. B) broadband providers give the theoretical top rate (e.g. 100Mbit ethernet), not the baud rate; the maximum effective rate is often entirely dependent on local conditions. C) This is posted as an answer, but does not attempt to answer the actual question. – Hellion Oct 7 '13 at 18:35
  • @Hellion. The baud is in fact the speed of modulation. Your definition "symbol per second" is true for analogical systems, and you have to specify the number of possible symbols transmitted at each click ; for digital system, of course binary, the unit can only be the bit. – ex-user2728 Oct 7 '13 at 21:00

Not the answer you're looking for? Browse other questions tagged or ask your own question.