Skip to main content
RAID1 usable = min(total ÷ 2, total − largest device)

BTRFS Space Calculator

Enter your device sizes, a data profile, and a metadata profile to see real usable capacity — correctly handling differently-sized devices, which most RAID calculators get wrong for BTRFS. Covers all nine BTRFS profiles: Single, DUP, RAID0, RAID1, RAID1C3, RAID1C4, RAID10, RAID5, and RAID6.

BTRFS calculator inputs

BTRFS calculator inputs

Devices

1.
2.
3.

Reference tools default to 1:200

3 devices, data RAID1, metadata RAID1

Results

Usable data space

1.36 TiB

what you can fill

Total raw capacity

3.18 TiB

all devices added

Estimated metadata

6.98 GiB

one copy, at 1:200

Unallocatable

463.67 GiB

no partner device left

Metadata space is estimated using a data:metadata ratio and is approximate — see carfax.org.uk's calculator for a metadata-free model, or mankier's btrfs-space-calculator CLI for the reference implementation this tool's formulas were checked against.

Usable Space by Profile for Your Current Devices

Usable data space for each BTRFS profile, given the devices entered above
ProfileMin DevicesUsable (data profile only)
Single (no redundancy) 1 3.17 TiB
DUP (2 copies, same device) 1 1.58 TiB
RAID0 (striped, no redundancy) 2 1.36 TiB
RAID1 (2 copies) 2 1.36 TiB
RAID1C3 (3 copies) 3 464.66 GiB
RAID1C4 (4 copies) 4 0 B
RAID10 (striped + mirrored) 4 0 B
RAID5 (single parity) 2 929.33 GiB
RAID6 (double parity) 3 464.66 GiB

How BTRFS Space Allocation Works

Unlike traditional hardware or software RAID, BTRFS doesn't require every device in a pool to be the same size — it allocates space in fixed-size chunks and spreads those chunks across whichever devices have room. That flexibility is exactly what makes BTRFS capacity planning hard to eyeball: two devices of different sizes in a mirrored profile don't simply add up, because the larger device eventually runs out of a same-size partner to mirror against. This BTRFS space calculator models that chunk allocation directly, so you get a real usable-capacity number instead of a rough guess.

BTRFS Data Profiles Explained: Mirroring vs Striping vs Parity

Every BTRFS filesystem stores data (and separately, metadata) using a profile — a policy that controls how many copies of each chunk are kept and how they're spread across devices. Profiles fall into three families:

  • Mirror profiles (single, DUP, RAID1, RAID1C3, RAID1C4) keep 1 to 4 full copies of every chunk. RAID1-family profiles require each copy to live on a different device — that's the constraint that makes uneven device sizes matter. DUP is the odd one out: its two copies can both live on the same device, so it doesn't hit that bottleneck.
  • Striped profiles (RAID0) spread data across all devices with zero redundancy — losing any one device loses the whole filesystem. Capacity is limited by the smallest device, since a full-width chunk needs equal-sized room on every device.
  • Striped + parity/mirror profiles (RAID5, RAID6, RAID10) combine striping with redundancy: RAID5 reserves one device's worth of parity per stripe, RAID6 reserves two, and RAID10 stripes across mirrored pairs.

BTRFS Profile Comparison: Minimum Devices, Redundancy and Typical Use

The table below summarizes all nine BTRFS profiles this calculator supports:

ProfileMin DevicesRedundancyTypical Use
Single1NoneScratch data, cache, or mixing with other profiles temporarily
DUP12 copies, same device allowedSingle-device filesystems (default metadata profile on older single-disk setups)
RAID02NoneMaximum capacity/throughput, no fault tolerance
RAID122 copies, different devicesGeneral-purpose redundancy — most common multi-device profile
RAID1C333 copies, different devicesHigher fault tolerance for critical data (needs kernel 5.5+)
RAID1C444 copies, different devicesMaximum mirror redundancy (needs kernel 5.5+)
RAID104 (even)Mirrored pairs, stripedPerformance + redundancy balance
RAID52Single parityCapacity-efficient redundancy — see the reliability caveat below
RAID63Double parityHigher fault tolerance than RAID5 — see the reliability caveat below

Why Uneven Device Sizes Waste Space on Mirror Profiles

For RAID1-family profiles, every chunk needs its copies on separate devices. If one device is much larger than the rest combined, it eventually runs out of differently-sized partners to mirror new chunks against — the excess capacity on that device becomes unallocatable. The exact rule this calculator uses: for a profile with k copies, usable space equals whichever is smaller — total capacity divided by k, or total capacity minus the sum of the (k-1) largest devices. This formula was checked against a worked example published in the btrfs-space-calculator CLI documentation (2TB + 500GB + 1TB devices in RAID1), reproducing its published unallocatable-space figure within rounding.

Striped profiles (RAID0, RAID5, RAID6, RAID10) hit a related but simpler limit: a full-width stripe needs equal room on every participating device, so capacity is capped by the smallest device in the set — any extra space on larger devices sits unused unless you mix in a different profile for it.

Metadata Allocation and the Data:Metadata Ratio

BTRFS allocates metadata (filesystem structure — extents, checksums, directory trees) separately from file data, often using a different profile for extra safety. This calculator estimates metadata's raw space consumption using the same ratio approach as the reference btrfs-space-calculator CLI tool: by default, metadata is sized at roughly 1:200 of usable data space (adjustable in the calculator above). That estimate is then converted to raw bytes using the metadata profile's own redundancy factor and subtracted from the pool before the final data-capacity figure is computed. Real metadata usage varies with file count, fragmentation, and subvolume/snapshot activity, so treat this as an estimate — the same caveat the reference tools themselves carry.

Kernel Version and RAID5/6 Reliability Caveats

Two things worth knowing before committing to a profile:

  • RAID1C3 and RAID1C4 require Linux kernel 5.5 or later — they didn't exist in earlier BTRFS implementations.
  • RAID5 and RAID6 on BTRFS have long-documented reliability issues, including a write-hole problem during unclean shutdowns and historically unreliable parity scrub/rebuild behavior. Most BTRFS documentation and distribution maintainers still advise against RAID5/6 for production data as of current stable kernels — this calculator supports them for capacity planning, but treat the redundancy they provide with caution and keep backups regardless of profile.

As always, no calculator replaces monitoring btrfs filesystem usage and btrfs device usage on your live filesystem — this tool is for planning ahead of a mkfs.btrfs or btrfs balance -dconvert= / -mconvert= operation, not a substitute for checking real allocation afterward.