What is "System Data" on a Mac, and how to shrink it
The large, opaque "System Data" bucket in System Settings is mostly APFS local snapshots, virtual memory swap, application caches, logs, and on newer Macs the Apple Intelligence models. Some of it is safe to remove, some shrinks after a reboot, and some should only be managed through Apple's own tools. broza explain tells you which is which.
Local snapshots
Point-in-time images of a volume kept on the volume itself. Time Machine takes one every hour when it cannot reach its backup disk, and macOS takes one before it installs an update.
They are what "enter Time Machine" browses when the backup disk is not attached, and what lets a failed update roll back. They are also why a Mac reports gigabytes of "purgeable" space: macOS deletes snapshots itself when the disk fills.
Time Machine local snapshots: what they are and how to remove them →
Virtual memory swap
The volume macOS uses for virtual memory: swap files and, on a Mac that sleeps to disk, the sleep image.
No. Broza never writes to it. Deleting swap by hand risks a crash, and macOS reclaims the space itself once the pressure is gone.
Application caches and logs
Working files applications keep under ~/Library/Caches, plus their logs and the half-finished downloads they never cleaned up. None of it is a document you created.
Yes. Every application recreates what it needs, at the cost of being a little slower the first time. Broza moves the files to quarantine instead of deleting them, so a program that behaves oddly afterwards can be put back exactly as it was.
Is it safe to delete ~/Library/Caches? →
Why the number looks bigger than it is
Finder reports "available" as free space plus purgeable space. Purgeable space is data macOS may delete on its own when it needs room, such as local snapshots and caches. An app asking the file system sees only the truly free part. Broza shows both numbers on separate lines and never adds purgeable to free.
Check it on your Mac
Broza is a free, open-source command-line tool. Every command below is read-only except clean, and clean is a dry run until you add --apply.
broza scan broza explain /System/Volumes/Data broza suggestNot installed yet? Install Broza with Homebrew, the installer script, or Cargo.