System Grab Bag

Unit Converter for File Sizes

This converter converts sizes of different types of size types used in computing. For example, this will convert between megabytes to gigabytes or gigabytes to megabytes, terabytes to petabytes and more.
This tool also allows you to set the amount of bits per byte, which is useful for some (albeit rare) systems that don't have a 8-bit byte.

Converting 18.5145801304823 PB to KB, MB, GB, TB, PB, and more

Assuming a bit byte
Bits Bits (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Bytes B (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Kilobytes KB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Kibibytes KiB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Megabytes MB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Mebibytes MiB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Gigabytes GB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Gibibytes GiB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Terabytes TB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Tebibytes TiB (-1000 | -100 | -10 | -1 | +1 | +10 | +100 | +1000)
Petabytes PB ( -10 | -1 | +1 | +10 | +100 | +1000)
Pebibytes PiB ( -10 | -1 | +1 | +10 | +100 | +1000)
8-bit chunks (octets)
16-bit chunks (hextets)
32-bit chunks
64-bit chunks
128-bit chunks
  1. 1.6676451235312256e+17 bits
  2. 20845564044140320 bytes (8-bit bytes)
  3. 20845564044140.32 KB
  4. 20356996136855.78 KiB
  5. 20845564044.14032 MB
  6. 19879879039.898224 MiB
  7. 20845564.04414032 GB
  8. 19413944.37490061 GiB
  9. 20845.56404414032 TB
  10. 18958.930053613876 TiB
  11. 20.845564044140318 PB
  12. 18.5145801304823 PiB
  13. 20845564044140320 8-bit chunks (octets)
  14. 10422782022070160 16-bit chunks (hextets)
  15. 5211391011035080 32-bit chunks
  16. 2605695505517540 64-bit chunks
  17. 1302847752758770 128-bit chunks

Some things to try

What are these different types of sizes?

In particular, what is a kebibyte, mebibyte, etc? It does sound made up. But these prefixes are used to resolve historical differences between usage of the "kilo" prefix as used in other weights and measures (such as kilogram), which means 1000, and computing (especially with rerference to computer memory) which generally uses 1024. This was parodied by xkcd 394, which has a humorous table of different so-called kilobyte standards and included a table which is also included below (but don't use it as a reference :))

Symbol Name Size Notes
kB Kilobyte 1024 or 1000 bytes 1000 bytes during leap years, 1024 otherwise
KB Kelly-Bootle Standard Unit 1012 bytes Compromise betweeen 1000 and 1024 bytes
KiB Imaginary Kilobyte 1024√-1 bytes Used in Quantum Computing
kB Intel Kilobyte 1023.937528 bytes Calculated on Pentium FPU
Kb Drivemaker's Kilobyte Currently 908 bytes Shrinks by 4 bytes each year for marketing reasons
KBa Baker's Kilobyte 1152 bytes 9 bits to the byte since you're such a good customer

Base 10 (1000 bytes = 1 kilobyte)

This definition is generally used by drive manufacturers and is the standard SI unit for a kilobyte. It's used in data transfer rates and some other things. The advantages of it is that it's a SI unit, so it's likely to be understood. Some disadvantages include that it is inconsistent with how computer memory is reported (using base 2 instead) and it is inconsistent with some popular operating systems. This page uses the SI prefixes, disambiguating by using the "kibi" suffixes.

Using this definition, the size that you entered is 20845564044140.32 kilobytes.

Base 2 (1024 bytes = 1 kilobyte)

Another popular contender is to use base 2 (i.e. 1024 bytes in 1 kilobyte). This is commonly used by memory manufactuers, CPU cach sizs, etc (due to the heavy use of binary addressing), and some telecommunications companies, and probably most importantly, Microsoft Windows. Because this page uses the SI prefixes, we disambiguate with the kibi suffix. However, as xkcd has again pointed out...

I would take 'kibibyte' more seriously if it didn't sound so much like 'Kibbles N Bits'.

In addition, many older computers report using powers of 2. Many tools on Linux, such as top, report using the "kibi" suffix.

Using this definition, the size that you entered is 20356996136855.78 kilobytes.

How big is a byte?

8 bytes, generally. This is de facto standard, but some computers, particularly older computers, used a different byte size. Many 6-bit of 9-bit computers were used in the 1960s to store characters and byte sizes could be anywhere from 2 to 3 to 4 to 8 to 10. The term octet refers unambiguously to a grouping of 8 bits, and can be seen today in some media types such as application/octet-stream.