| Reference | Octets (octet) | Kilooctets (ko) |
|---|---|---|
| A plain text message (160 characters) | 160 octet | 0.16 ko |
| A three-minute MP3 | 3000000 octet | 3000 ko |
| A smartphone photo | 4000000 octet | 4000 ko |
| A high-definition film | 4 × 109 octet | 4000000 ko |
| A dual-layer Blu-ray disc | 5 × 1010 octet | 50000000 ko |
The octet is a unit of digital information equal to exactly eight bits. Its symbol is octet, and its name comes from the Latin for a group of eight. It is the unit in which nearly all stored data is counted, and the reason it is called an octet rather than a byte is worth knowing.
A byte was originally the number of bits a machine used to hold one character, and that number was not fixed. Early computers used six-bit bytes, some used seven, and a few used nine. The IBM System/360 of 1964 settled on eight and its commercial success made eight the norm, but the word byte kept its older, machine-dependent meaning in specifications where ambiguity was dangerous.
The networking world therefore adopted octet. When a protocol standard says a header field is four octets long, no reader anywhere can interpret that as anything but thirty-two bits. The internet standards published by the IETF use octet throughout for exactly that reason, and French, Romanian and several other languages adopted the word for ordinary use as well, so that a hard disc sold in France is measured in gigaoctets.
Eight bits hold 256 distinct values, which is why so many things come in units of 256. A colour channel runs from 0 to 255. An IPv4 address is four octets, written as four numbers each between 0 and 255. The original ASCII character set used seven bits, leaving one spare, and the various eight-bit extensions that followed each filled that spare bit with a different set of accented letters — the mess that Unicode eventually replaced.
Modern text encoding still counts in octets. UTF-8 uses one octet for the unaccented Latin alphabet, two for most European accented letters and Greek and Cyrillic, three for Chinese, Japanese and Korean, and four for the rest. That is why the same sentence occupies different amounts of storage in different languages, and why a text-length limit measured in octets is not a limit on characters.
Storage capacity, file sizes, memory and network payloads are all quoted in octets or their multiples. Transmission rates are the exception, being quoted in bits per second, and the factor of eight between the two conventions is the single most common source of confusion in the field.
One octet equals 8 bits, 0.008 kilobits, or 0.001 kilooctets.
The kilooctet is a unit of digital information equal to one thousand octets, and therefore to eight thousand bits. Its symbol is ko. It is the smallest of the everyday storage units, and for two decades it was the unit in which the whole capacity of a computer was described.
A kilooctet holds a thousand characters of unaccented text, which is about two hundred words, or a third of a page. The plain-text file of a short letter is a few kilooctets. Almost nothing else in modern computing is this small: an empty document from a word processor is already tens of kilooctets, because the file format carries formatting, fonts and metadata around the text.
The historical importance of the unit is hard to overstate. The Apple II shipped with 4 kilooctets of memory, the Commodore 64 was named for its 64, and the first IBM personal computer could address 640. Programs of real complexity — spreadsheets, word processors, games with graphics and sound — were written to fit inside those numbers, which required a discipline that has largely disappeared.
The kilooctet is also where the decimal and binary confusion began. Memory came in 1,024-octet units because addressing is binary, and everyone called that a kilooctet. Disc manufacturers counted in true thousands. The two conventions differ by 2.4 per cent, which was negligible at this scale, but the same error compounds at each step upward and reaches 10 per cent by the teraoctet.
The IEC resolved the ambiguity in 1998 by defining the kibioctet as 1,024 octets and leaving the kilooctet at exactly 1,000. Operating systems have adopted this unevenly: some report file sizes in true kilooctets, others still divide by 1,024 while writing ko, and a few now write Kio correctly.
Where the unit still appears daily is in network protocols and in the sizes of small resources on the web. A web page's stylesheet, an icon, a certificate, a configuration file, a database index page — all of these are measured in kilooctets, and the standard memory page on most processors is 4 kibioctets, close enough to 4 kilooctets for casual conversation but not for arithmetic.
One kilooctet equals 1,000 octets, 8,000 bits, 8 kilobits, or about 0.9766 kibioctets.