Skip to content
Calcrivo

Storage Expansion Calculator

Calculate additional disks or capacity needed to reach a target storage size.

Inputs

New Disks Needed

4

New Total Usable Capacity (GB)

10,000.00

Added Usable Capacity (GB)

6,000.00

Raw Capacity of New Disks (GB)

8,000.00

RAID Efficiency Used

75.0%

Step by step

  1. Values used

    Current Usable Capacity (GB) = 4,000; Target Usable Capacity (GB) = 10,000; New Disk Size Each (GB) = 2,000; RAID Level for New Disks = RAID 5 ((n-1)/n efficiency)

  2. New capacity

    new_capacity = current_capacity + disks_added × disk_size × raid_efficiency

  3. New Disks Needed

    = 4

  4. New Total Usable Capacity (GB)

    = 10,000.00

  5. Added Usable Capacity (GB)

    = 6,000.00

  6. Raw Capacity of New Disks (GB)

    = 8,000.00

  7. RAID Efficiency Used

    = 75.0

How it works

Expanding storage to a target capacity requires accounting for the RAID overhead of the new disks being added, not just their raw size — RAID 5 sacrifices one disk's worth of capacity to parity regardless of array size, RAID 6 sacrifices two, and mirrored levels (RAID 1/10) sacrifice half. This calculator finds the minimum number of same-size new disks, at the chosen RAID level, needed to close the gap between current and target usable capacity.

Formula

New capacity

new_capacity = current_capacity + disks_added × disk_size × raid_efficiency

n
disks added
S
size per disk
\eta
RAID efficiency for that level/count

Frequently Asked Questions

Why does RAID 5 efficiency depend on the number of disks?

RAID 5 always dedicates exactly one disk's worth of capacity to distributed parity, so efficiency is (n-1)/n — with 4 disks that's 75% usable, but with 8 disks it rises to 87.5%, since the fixed one-disk parity cost is spread across more capacity.

Is it better to add disks to an existing array or build a new one?

Growing an existing RAID array (if your RAID controller/mdadm setup supports online reshaping) avoids downtime and data migration, but adding a separate new array is often simpler, avoids a lengthy and I/O-intensive reshape/resync operation, and lets you choose a different RAID level for the new capacity.

Does this account for hot spares?

No — this calculates usable data capacity only. If you want dedicated hot-spare disks for automatic rebuild, add their count on top of the disksNeeded result; they don't contribute to usable capacity in the array itself.

You might also need