Btrfs RAID is chunk-level, not whole-disk RAID. Two copies of each chunk land on different devices (RAID1), so mixed disk sizes often yield more usable space than mdadm RAID 1. Default this Btrfs RAID calculator to RAID1, compare other profiles, and copy a mkfs.btrfs command. For mdadm RAID 0/1/5/6/10 see the RAID calculator; for RAIDZ pools see the ZFS capacity calculator. Part of the Linux tools.
How this Btrfs RAID calculator places chunks
Btrfs allocates roughly 1 GiB chunks, as described in the mkfs.btrfs documentation. RAID1 always stores two copies, even if you have six disks — extra devices grow capacity, they do not add a third copy. RAID1c3 and RAID1c4 are the profiles that raise the copy count. When disks are the same size, usable space is raw total divided by the number of copies. When sizes differ, this calculator uses a greedy allocator (same idea as the well-known Btrfs usage simulator): place the next chunk on the devices with the most free space until no valid set remains.
| Profile | Copies | Min devices | Typical usable (equal disks) |
|---|---|---|---|
| single | 1 | 1 | 100% |
| DUP | 2 on one device | 1 | ~50% |
| RAID0 | 1, striped | 2 | 100% |
| RAID1 | 2 | 2 | ~50% |
| RAID1c3 | 3 | 3 | ~33% |
| RAID1c4 | 4 | 4 | ~25% |
| RAID10 | 2, striped | 4 | ~50% (worse with mixed sizes) |
| RAID5 / RAID6 | parity | 3 / 4 | Not recommended |
You can set data (-d) and metadata (-m) independently. A common hardening choice is data RAID1 with metadata RAID1c3. Btrfs RAID5 and RAID6 still have a write-hole; they appear in the comparison table only so you can see the capacity they would claim.
Snapshots and rollback are why many homelabs pick Btrfs. See Rollback openSUSE with Btrfs for a Snapper walkthrough.
FAQ
Is Btrfs RAID1 the same as mdadm RAID1?
No. mdadm RAID1 mirrors whole disks, so usable space is one disk even with four members. Btrfs RAID1 stores two copies of each chunk on different devices. Adding disks grows the filesystem; it does not add a third copy. Use RAID1c3 or RAID1c4 when you want more copies.
Why does Btrfs RAID1 use mixed disks better than RAID10?
RAID1 only needs two devices with free space to place a chunk, so a larger disk can pair with whichever smaller disks still have room. RAID10 places two striped copies and wants four devices per allocation, so mixed sizes leave more unusable space. Prefer RAID1 when the disks are not the same size.
Is Btrfs RAID5 safe?
Btrfs RAID5 and RAID6 still have a write-hole risk and are not recommended for production. This calculator shows them for comparison only. Use RAID1 or RAID1c3 for redundancy, and keep backups.
What is RAID1c3?
RAID1c3 stores three copies of each chunk on three different devices, so you can lose two disks. Usable space is about one third of the raw total. RAID1c4 stores four copies. Metadata-only RAID1c3 on top of data RAID1 is a common hardening choice.
Does this Btrfs calculator upload my disk layout?
No. It runs entirely in your browser. Disk sizes never leave your machine.
Looking for more Linux how-tos? Browse the Linux guides or the rest of the tools.