See what’s taking up space on your Mac.
MacDirStat is a native macOS disk visualizer with a directory tree and a classic flat treemap. Pick a folder or disk, scan it, and select a rectangle to find the file behind it. It’s free, open source, and read-only.
macOS 14+ · Apple Silicon & Intel · Prerelease
A disk scan with Visual Studio Code selected. Rectangle area represents on-disk size.
Get started · Releases · Report a bug · MIT license
- Find large files visually. The tree and treemap share one selection; the detail pane shows the selected item’s size, path, and share of its folder.
- Scan local folders and disks. Hidden files are included. Network volumes aren’t supported.
- Keep app bundles compact. Fast mode measures their contents but shows each package as one item. Turn it off before scanning to browse inside packages.
- Stop a scan and explore what it found. Cancelled scans retain their partial results, with totals marked as lower bounds.
- Open or reveal a file in Finder. MacDirStat has no delete, move, or cleanup actions.
Requires macOS 14 Sonoma or later. Runs on Apple Silicon and Intel Macs.
- Download the MacDirStat 1.0.0 universal ZIP.
- Extract it and drag MacDirStat.app to Applications.
- Launch MacDirStat and choose a folder or disk to scan.
This is a prerelease, ad hoc signed but not yet Developer ID signed or notarized. macOS may block the first launch; if you trust this download, follow Apple’s instructions for opening an app from an unidentified developer. You do not need Xcode or an Apple Developer account to run the download. See the release notes and checksums for verification and known limitations.
Building requires the full Xcode app, including its macOS SDK. The standalone Command Line Tools are not enough to build and test the app. You do not need a paid Apple Developer account for a local build.
-
Install Xcode and open it once to finish setup. If needed, select it with
sudo xcode-select -s /Applications/Xcode.app. -
Clone the repository and build:
git clone https://github.com/rengwu/macdirstat.git cd macdirstat make release -
Open the build folder:
open .build/xcode/Build/Products/Release
-
Drag MacDirStat.app to Applications, then launch it.
To run directly from a development checkout, use make run.
- Click Choose…, or press ⌘O.
- Select a disk, or use Choose Folder… to add a folder.
- Choose whether to use Fast mode, then click Search.
- Watch the progress card while the scan runs. The tree and treemap appear when it finishes; Cancel stops early and keeps what was found.
- Select a file in the tree or treemap to inspect it. Expand folders in the tree to browse, or use Reveal in Finder to locate the selected item.
| Shortcut | Action |
|---|---|
| ⌘O | Choose a folder or disk to scan |
| ⌘R | Reveal the selected item in Finder |
| ⌥⌘C | Copy the selected item’s path |
| ⌘D | Show or hide the detail pane |
On-disk size drives rectangle area and the Size column. Content length is the file’s logical length; the detail pane shows it when the displayed figures differ, such as for sparse files or compressed files. Sizes use binary units (KiB, MiB, GiB).
A scan with unreadable entries is marked Incomplete: its totals are lower bounds. The result describes the files the scan could measure, rather than a promise of how much space deleting them would recover. Fast mode retains measured package totals without keeping their internal file trees.
MacDirStat scans filesystem metadata locally, without reading file contents. There are no accounts, analytics, or scan uploads. Opening a selected file hands it to its default application through macOS.
Scan results are held in memory and are not saved between launches. The app saves window settings, scan preferences, and recent folder paths locally. Clear recent paths with File → Open Recent → Clear Menu.
Open an issue with the app version, your macOS version, whether your Mac uses Apple Silicon or Intel, and the steps to reproduce the problem. For scan issues, include whether Fast mode was enabled and whether you scanned a folder, internal disk, or external disk. A small sample folder that reproduces the issue is especially useful.
Screenshots can include filenames and paths; remove any private details before sharing them.
Built with Swift and AppKit. The scan engine and treemap layout are separate Foundation-only packages with no third-party package dependencies.
See the development guide for build commands, tests, and repository structure, or CONTEXT.md for measurement terminology. Maintainers can use the release guide to prepare a GitHub release.
MIT — Copyright (c) 2026 John Goh.
