Keep roughly 20% of a ZFS pool free as a practical starting point. The familiar 80%-used rule is a guardrail, not a cliff: workload, vdev layout, record size, fragmentation, and snapshot-retained blocks determine when performance actually degrades.
Snapshots matter because overwritten or deleted blocks cannot return to free space while a snapshot still references them. A pool can therefore look stable until a large rewrite, replication receive, or prune exposes how little working space remains. This distinction sets the measurement method, safety margin, and stop condition. This distinction sets the measurement method, safety margin, and stop condition.
Treat 80% utilization as an early-action threshold
At low utilization, ZFS has more choices for allocating new blocks. As the pool fills, free regions become harder to find and copy-on-write updates can require more allocator work, especially on fragmented HDD pools.
Start capacity action near 80% used rather than waiting for an out-of-space event. Write-heavy VM storage, databases, and small random I/O deserve more headroom than a mostly sequential archive.
Measure at the pool level as well as the dataset level. Quotas and reservations can make a dataset fail even when the pool reports free space, while snapshots can hold space that ordinary directory tools do not show.
Watch the signals that reveal real pressure
Track pool capacity, fragmentation, write latency, free-space trend, snapshot used space, and the size of pending replication or backup jobs. A single percentage cannot describe all of these constraints.
Compare latency during the normal workload at 70%, 80%, and higher utilization if you can do so safely. The meaningful warning is a repeatable rise in latency or fall in throughput under the same load.
Use the decision table below to translate utilization and behavior into action.
| Observed state | Verdict | Next action |
|---|---|---|
| Below 70% used; stable latency | Healthy headroom | Continue trend monitoring |
| Around 80% used or latency rising | Action threshold | Prune safely, move data, or expand |
| Above 90% used; failed allocations | Critical | Stop nonessential writes and recover space |
Recover headroom without creating a second incident
Delete only snapshots outside the approved retention window, and confirm they are not required as replication bases. Removing a recent common snapshot can force a full resend that needs even more space.
Move cold data, expand the pool with a supported topology, or reduce incoming writes before running heavy maintenance. Do not start a scrub, resilver, replication receive, and mass deletion together on a nearly full pool.
ZimaSpace’s snapshot-space diagnostic separates snapshots from recycle bins and live files.
Klara Systems’ OpenZFS snapshot analysis connects pool fullness, snapshot use, and practical capacity planning.
Retest the original workload after cleanup
Repeat the same write, snapshot, and directory-browsing workload after reclaiming space. Compare latency, throughput, and allocator pressure rather than assuming a lower percentage solved the issue.
Confirm the next scheduled snapshot and replication cycle complete and that the pool does not immediately return to the warning threshold. Set alerts early enough to cover normal growth plus the largest expected temporary job.
Keep the 20% free-space floor when measurements are unavailable. Increase it if write latency rises, fragmentation is high, or large snapshot divergence is routine; stop new writes if the pool approaches exhaustion or allocations begin failing.
Support & Tips
More to Read

What Temperature Range Is Acceptable for an NVMe Drive in a Mini PC?
For many consumer NVMe drives, roughly 30–50°C idle and below 70°C sustained is a useful target, but the exact model limit controls.

How Much SSD Space Should a Media Server Reserve for Artwork and Cache?
Start with measured app-data usage plus 50–100% growth headroom; rich preview thumbnails can require far more SSD space than ordinary artwork.

How Many Simultaneous SMB Clients Can a 1GbE NAS Serve Comfortably?
A 1GbE NAS can serve many light clients, but only a few heavy transfers; the shared practical ceiling is roughly 100–115MB/s before other limits.

