Convert MB to KiB

MB
976.5625KiB

1 MB = 976.5625 KiB

One megabyte is 1,000,000 bytes and one kibibyte is 1,024, so a megabyte is 976.5625 KiB. Converting MB to KiB is what a round human limit needs before it can go into a field that counts in kibibyte blocks, and the recurring problem is the quarter of a block the arithmetic leaves behind.

  • Where it runs In your browser. The number you type is never part of a request.
  • Exact by definition 1 MB is exactly 976.5625 KiB — a definition, not a rounded factor.
  • Answers as you type No button, no wait. The worked answer is already on the page before any script runs.

Megabyte to Kibibyte in practice

  • 5 MB is 4883 KiB

    — a song at a good bitrate.

  • 4000 MB is 3906000 KiB

    — a film at ordinary quality.

  • 0.5243 MB is 512 KiB

    — half a mebibyte.

  • 0.004096 MB is 4 KiB

    — one page of memory on most systems.

Megabyte to Kibibyte at a glance

Every figure here is computed from the same definition the calculator uses, so the table cannot drift away from the answer above it.
MBKiB
1976.5625
21953.125
54882.8125
109765.625
5048828.125
10097656.25
500488281.25
1000976562.5

Megabyte and Kibibyte

A megabyte is a million bytes. Storage manufacturers have always used this decimal meaning, which is why their capacities look larger than what a computer reports.

A kibibyte is exactly 1,024 bytes. The name was coined in 1998 precisely so that "kilobyte" could go back to meaning 1,000, though the habit never fully took.

What it costs to round the factor

The factor is 976.5625, and almost nobody carries that around. Rounded to 980 it is off by 0.35 % — which stays invisible on small numbers and turns into a whole unit somewhere around 1,000 MB.

That is the number worth knowing before you round: not the error itself, but where it stops being ignorable. Below that point the shorter factor is the sensible one; above it, use the field above, which never rounds until it prints.

KiB is the binary one

One KiB is 1,024 of the unit below it; one kB is 1,000. On this page that is the difference between 0.001 MB and 0.001 MB — 2.4 % — and the gap grows at every step up the scale, which is why it is a rounding error on a photograph and a visible chunk of a hard disk.

This is the whole of the missing-storage mystery, and on this page it is worth 2.4 %. A drive sold in kB holds exactly what the label says; Windows divides by 1,024 instead of 1,000, keeps the decimal name, and reports 0.001 MB where the box said 0.001. macOS has counted these in the decimal units since 10.6, which is why the same drive can look two sizes on two machines — nothing is missing and nobody is rounding, the same bytes have two names.

A limit written for people, entered as a block count

Requirements arrive in round decimal numbers because that is how people write them: a 100 MB upload cap, a 500 MB per-user quota, a 2 MB rate limit. The field that enforces them frequently counts in kibibytes, so the round number has to be divided by 1,024 before it can be typed, and it stops being round on the way. 100 MB is 97,656.25 KiB, and the field will not take the quarter.

That is the whole job of this conversion: turn a human figure into a block count, then decide what to do with what is left over. Multiply megabytes by 976.5625 and the result is exact to four decimal places at most, because 1,000,000 divided by 1,024 terminates. The remainder is always some multiple of a sixteenth of a kibibyte, which is 64 bytes, and it is the only part of the calculation that needs judgement.

Which megabyte figures convert without a remainder

Most values in this direction leave a fraction, and the ones that do not follow a rule. A megabyte is 15,625 sixteenths of a kibibyte, so any megabyte figure that is a multiple of 16 comes out whole: 16 MB is exactly 15,625 KiB, 512 MB is exactly 500,000 KiB, and 1,024 MB is exactly 1,000,000 KiB. Every power-of-two limit from 16 MB upwards is therefore exact, and it is the round decimal figures — 100 MB, 250 MB, 500 MB — that leave a remainder.

That makes 512 and its multiples the values to reach for when a limit is arbitrary anyway. A quota set at 512 MB, 1,024 MB or 2,048 MB converts to a clean block count, records the same way in both units, and avoids the small permanent discrepancy between what the policy document says and what the system enforces. Where the number has to be 500 rather than 512, the conversion is 488,281.25 KiB and something has to give.

The 1.44 MB floppy was neither kind of megabyte

The high-density 3.5-inch disk held 1,474,560 bytes: eighty tracks, two sides, eighteen sectors of 512 bytes. That is 1,440 kibibytes exactly, and the marketing figure was produced by dividing 1,440 by 1,000 and writing MB after it. The result is not 1.44 megabytes, which would be 1,440,000 bytes, and not 1.44 mebibytes, which would be 1,509,949.

The unit behind that number was thousands of 1,024-byte blocks, a hybrid nobody ever named and nobody has used since. It is worth knowing because it is the clearest evidence that the two conventions were not merely confused but occasionally combined, and because it explains why a disk everyone remembers as 1.44 MB always came up short when a file of that size was copied to it.

The settings that quietly count in 1,024-byte blocks

Shell stack and virtual memory limits are in kibibytes, so a 512 MB virtual memory ceiling is entered as 500,000. Disk quota tools allocate in blocks of the same size, which is why a quota report shows six-digit numbers where a person was thinking in megabytes. Several file synchronisation tools take a transfer rate cap in kibibytes per second unless a suffix says otherwise, so a bare 1000 there means 1,024,000 bytes per second rather than a megabyte.

None of these announce the unit in their normal output, and neighbouring options within a single tool do not always agree. Checking the documentation for the specific setting takes less time than diagnosing a limit that is out by a factor of 1.024 or, worse, by a factor of two because a different block size was involved. The check is worth doing once per setting and writing down.

Rounding in the direction that fails safely

Round down when the number is a ceiling and up when it is an allowance. A 100 MB cap entered as 97,656 blocks permits 99,999,744 bytes, which is inside the policy; entered as 97,657 it permits 100,000,768, which is outside it by 768 bytes. Neither figure will cause a problem on its own, but only one of them can be defended if somebody audits the setting against the policy that produced it.

The direction matters more when the same conversion is applied repeatedly. A quota system that rounds every allocation up gives away a fraction of a block per account, and across a large user base that is real capacity assigned to nobody in particular. Deciding the rounding rule once, at the point where the policy is translated, keeps every derived number consistent with the one before it.

When the specification said MB and meant something else

A requirement written in megabytes has often already been through a binary tool. If the 100 MB figure came from somebody reading a file manager, it is likely to be 104,857,600 bytes rather than 100,000,000, and converting it as decimal produces a limit five per cent tighter than intended. The tell is where the number came from rather than how it is written.

Asking is cheaper than assuming, and where nobody can answer, the safe reading depends on which failure is worse. If the limit protects a resource, take the decimal reading and set the smaller value. If it promises capacity to a user, take the binary reading and set the larger. Recording which assumption was made, beside the setting, saves the next person from re-deriving it differently.

Reading a block figure back into the unit the policy used

The reverse trip is the one that gets done in a hurry, usually while somebody is asking why a user has run out of space. A quota report showing 488,281 blocks is 500 MB, and a report showing 512,000 is 524.29 MB — close enough to each other that the two are easy to confuse and far enough apart to matter to whoever is at the limit.

Dividing the block count by 976.5625 gives megabytes, and dividing by 1,024 gives mebibytes. Doing both takes a moment and immediately shows which unit the limit was set in: the one that produces a round number is almost always the one somebody typed. That single observation resolves most disputes about whether a quota was configured as intended.

Keeping a limit aligned to something underneath it

Limits expressed as awkward block counts tend to sit slightly across a boundary that matters. File systems allocate in blocks of 4,096 bytes and memory in pages of the same size, so the 97,656.25 KiB that 100 MB converts to is 24,414 pages of 4 KiB plus a quarter of a kibibyte that no allocation can use. Nothing breaks, but the effective limit ends up a little under the configured one.

Choosing limits that are multiples of 4 KiB removes that residue, and choosing them as multiples of 512 MB removes both the residue and the fractional conversion at once. Where a policy allows any round-ish number, picking one that is round in both systems costs nothing and means the figure in the ticket, the figure in the config and the figure the kernel enforces are all the same number.

Convert MB to KiB: common questions

How many kibibytes are in a megabyte?

976.5625 KiB, because a megabyte is 1,000,000 bytes and a kibibyte is 1,024. The fraction is exact rather than rounded — 1,000,000 divided by 1,024 terminates — but it is still a fraction, and a field that accepts only whole blocks forces a decision about which way to round.

What do I enter for a 512 MB limit?

500,000 exactly. It is the one tidy result in this conversion: 512 megabytes is 512,000,000 bytes, which divides by 1,024 to a round half million kibibytes. By the same coincidence 1,024 MB is exactly 1,000,000 KiB, because the two ratios invert.

Should I round the block count up or down?

Down when the number is a ceiling you must not exceed, up when it is an allowance you promised. Rounding a 100 MB cap up to 97,657 blocks grants 768 bytes more than the policy allowed; rounding a 100 MB quota down denies the user the last part-block. Neither matters much, but only one of them matches the intent.

Why was a floppy disk 1.44 MB?

Because the figure was 1,440 kibibytes and somebody divided by 1,000 to get a friendlier number. The disk holds 1,474,560 bytes, which is neither 1.44 megabytes nor 1.44 mebibytes. The unit behind it was a hybrid — thousands of 1,024-byte units — and it is the clearest case anywhere of the two conventions being mixed inside a single number.

Which settings are counted in kibibytes?

Shell stack and virtual memory limits, disk quota blocks, and transfer rate caps in several synchronisation tools all default to 1,024-byte units. None of them says so in its output. The reliable move is to read the documentation for the specific setting, because neighbouring options in the same tool sometimes use different block sizes.

Is the 2.4 per cent worth worrying about at this scale?

On a single limit, rarely. On a per-user quota multiplied across a few thousand accounts it is a real amount of disk, and on a bandwidth cap it is a persistent 2.4 per cent difference between what was budgeted and what is allowed. The gap does not grow with scale; the number it is multiplied by does.

Going the other way: Kibibyte to Megabyte

One KiB is 0.001024 MB. It is the same relationship read backwards, so an answer from one page put through the other has to come back to where it started.

Where these figures come from

The claims this page makes about data units are checkable, and these are the documents that settle them.

How this page works

The factor is a constant in the page and the arithmetic is four operations, so nothing is sent anywhere and nothing needs to be. The number you type never leaves the browser — there is no request for it to travel in.