Free space on the startup disk
In the output, Size, Used and Avail are in powers of 1024 (Gi), so they read smaller than Finder's numbers. Capacity is the percentage used.
df -h /Free space in the APFS container
Every volume on an APFS disk (Macintosh HD, Data, Preboot, VM, Recovery) shares one pool of space. diskutil apfs list shows the whole container and how much each volume takes from it.
diskutil info / | grep -E 'Container (Total|Free) Space'diskutil apfs listBiggest folders
-d1 limits output to one level deep; sort -h understands sizes like 4.2G. Run it again on whichever folder comes out on top to drill down. The second command covers the whole data volume, including other users and /Library.
du -hd1 ~ 2>/dev/null | sort -hsudo du -hd1 /System/Volumes/Data 2>/dev/null | sort -h | tail -20Give Terminal Full Disk Access first (System Settings › Privacy & Security › Full Disk Access), or protected folders are skipped with errors.
Biggest files
Lists every file over 1 GB in your home folder. Change +1G to +500M for more results, or build your own with the find command builder.
find ~ -type f -size +1G -exec ls -lh {} + 2>/dev/null | awk '{print $5, $9}' | sort -hSnapshots and purgeable space
If df shows less free space than Finder, local Time Machine snapshots are usually the difference. See purgeable space.
tmutil listlocalsnapshots /When Terminal gets tedious
du re-reads every file each time, so drilling into a big disk means waiting over and over. Broom indexes the disk once and then answers instantly, with the same folder-by-size list plus visual views and search.
Questions
What is the command to check disk space on Mac?
df -h / shows free space on the startup disk in human-readable units.
Why is du so slow?
It reads the size of every file under the folder each time. On a home folder with a million files, that takes a while.
Why does df show a different number than Finder?
df uses 1024-based units and doesn't count purgeable space as free. Finder uses 1000-based units and does.