Disk space mission control/for Mac

Every byte,accounted for.

Ullage scans a whole drive in seconds, visualizes your files and folders, and provides intelligent context for clearing.

Buy it once, keep it forever.

  • RequiresmacOS 14+
  • Built forApple silicon + Intel
  • AccountsNone
  • NetworkNone
  • Data collected0 bytes
SEQ 02Visualizers

See everything at once.

Two live maps, one disk. The sunburst and the treemap color by type, age, or what changed, and every ring and tile is navigable. Prefer a list? The folder tree and the fast filter file list are right there.

Color by file type. Click a legend chip and matching files light up.

Sunburst colored by file type Sunburst colored by age Sunburst in monochrome Sunburst colored by change since an earlier scan Treemap colored by file type Treemap colored by age Treemap in monochrome Treemap colored by change since an earlier scan
  • Hover

    The arc and every ancestor light up; everything else dims. Hover a row in the tree or file list and the same item lights up on the map.

  • Click & double-click

    Click selects, ⌘-click multi-selects, double-click makes a folder the new center, and clicking the center goes back up.

  • Legend chips

    Pick a type and folders glow in that color in proportion to how much of it they hold, so you can drill toward it even when the files sit deeper than the ring limit.

  • Keyboard

    ←→ neighbors, ↓↑ in and out, ⏎ focus, esc up. ⇧⌘S saves the map as an image.

SEQ 03Scanner

Faster thanlightscanning.

Okay, not literally. But Ullage reads each folder in a handful of system calls and walks the whole tree on every core at once, which is fast enough to read hundreds of thousands of files every second.

CRUISING · SCROLL TO ENGAGE WARP
Files / second0
Files indexed0
Elapsed0.00 s
Light vs. UllageEarth → Moon · 384,400 km
⊕☾

By the time light reaches the Moon (1.28 s), Ullage has read about 538,000 files.

  • 01

    Live from the first second

    Visualizers draw in real time giving you an instant look at file lists and disk space.

  • 02

    Every core, at once

    A pool of worker threads walks folders in parallel and rolls sizes up the tree.

  • 03

    Sizes that match du

    Allocated bytes, hard links counted once, symlinks never followed, firmlinks merged, mounts skipped. Fast and correct.

  • 04

    Light on memory

    Scan a boot volume of nearly a million files in seconds. Barely sipping your system memory.

Ullage mid-scan: a radar-style ring fills as 149,308 files are indexed at 141.6 thousand files per second

Scanning /System/Library: 149,308 files, 6.49 GB, at 141.6K files per second. The “largest so far” list fills in live, before the scan is even done.

SEQ 04Space Hogs

Find the space hogs.

Rule-based detectors know where Macs quietly lose gigabytes. Each finding is rated Safe Review or Caution, shows exactly which folders it means, and is only a suggestion until you stage it.

Potentially reclaimable
329 GB63.2 GB SAFE
Tray00 BStage items with +

↑ Live demo built from the findings Ullage produced on the Starbase drive.

  • 01
    Always your callNothing is removed until you stage it and confirm. “Show” jumps straight to the folder on the map.
  • 02
    Managed elsewhereSpace macOS or another tool owns, like iOS Simulator runtimes, is listed with where to clear it, and never offered for staging.
  • 03
    Nothing hidesItems Ullage can’t remove (protected, read-only, owned by someone else) are counted as “left out” instead of silently dropped.
  • 04
    Context, not just sizesEvery finding explains what it is and how safe it is to clear, and lists the exact folders it means, so you decide with the facts instead of guessing from a folder name.
The Space Hogs tab listing large videos, AI model files, Ollama models and installers with 329 GB potentially reclaimable
SEQ 05Filters

Ask your disk anything.

A tiny query language is built into every file list and into ⌘K search. Type sizes, ages, kinds and phrases and combine them freely. Every term narrows the list; nothing is fuzzy.

> Demo running · type to take over
NameSizeAge
——
>1gbbigger thanalso <10kb >=500mb · b kb mb gb tb
older:1ynot touched fornewer:2w · h d w mo y
kind:datafile typevideo image audio archive app code doc data cache
ext:ggufextensioncomma lists work: ext:mov,mp4
is:hiddenstateis:file is:dir is:visible
"final cut"exact phraseplain words match file and folder names
The file list filtered with >1gb kind:video older:1y, showing five large video files

In the app: >1gb kind:video older:1y in “Deep” mode finds the five old camera files eating 42 GB, wherever they hide.

SEQ 06History

The disk has a past.

Every scan is remembered as a tiny list of folder sizes (no file names). Pick any earlier scan as a baseline and Ullage shows where the space went since: hot spots, new folders, removed folders, and the net change.

Grown since
▲ 21.8 GBNOW 467 GB ← 445 GB
SINCE 4 OCT 2026 · 12 DAYS AGO

↑ Drag the marker to pick a baseline.

The Changes tab: 21.8 GB grown since 4 October, with new folders, removed folders and growth bars
  • Hot spots

    Changes that a bigger sub-folder doesn’t already explain, so you see the cause and not just the parent.

  • Tree badges

    After a rescan, folders that grew or shrank carry a ▲ ▼ size badge right in the folder tree.

  • Change colors

    Switch the map to “Change”: growth burns red-orange, shrinkage glows green, new folders go cyan.

SEQ 07Duplicates

Same bytes. Different names.

Ullage finds byte-for-byte copies in three passes: size, then head, middle and tail, then a full SHA-256. APFS clones are recognized, so you never chase space that can’t be freed.

0 · Candidates24
→
1 · Same size—
→
2 · Head · middle · tail—
→
3 · SHA-256—

↑ Press Run.

SEQ 08Cleanup

Nothing leaves without your say-so.

Stage from anywhere: the map, the tree, a finding, a duplicate. Review the total in the tray. Then move it to the Trash. Permanent deletion is a separate, red, always-confirmed action.

  1. 01

    Stage

    Checkbox, +, ⌫ or X, drag onto the tray, or “Stage all safe”.

  2. 02

    Review

    The tray shows every item and the exact total before anything moves. Remove one with ✕.

  3. 03

    Trash

    One confirmation, then it all goes to the Trash. Space returns when you empty it.

Try to stage theseSome will refuse
    Click + on any row.
    Tray00 B

    Why some things say no

    • 01
      Protected placesWhole-system and whole-home locations (/System, /Users, ~, ~/Documents…) can’t be removed as a whole. Stage the things inside.
    • 02
      Managed elsewhereSpace that macOS or another tool manages is listed with where to clear it, and is never offered for removal here.
    • 03
      Locked in plain sightThose rows carry a small lock in the list, and the context menu says “Protected: it can’t be removed”.
    The Move to Trash confirmation: 113 items, 62.7 GB will be moved to the Trash

    Always your approval first. Nothing moves until you confirm it, so there are no accidental deletions.

    SEQ 09Flight instruments

    Sweat the details.

    The small things are where a utility earns its keep.

    Keyboard first

    Everything has a shortcut

    Press keys right now. ⌘K searches, ⌥⌘S and ⌥⌘T flip the map, Space is Quick Look, ⌘/ opens the full cheat sheet.

    ⌘⌥⇧⌃
    KSTR1234/X
    ←↓↑→space⌫⏎esc
    Waiting for input…
    The keyboard shortcut cheat sheet
    Tooltips

    Hover anything

    Every button, chip and icon explains itself after a beat.

    Hover an icon
    Hidden items

    Dotfiles are never skipped

    Hidden folders hold the biggest surprises. Scanned always, marked with an eye, isolated with one chip.

      Network volumes

      NAS? Scan it.

      Mounted SMB, NFS and AFP shares appear as drives, tagged Network, with patient, honest waiting messages.

      ORBITAL NAS/Volumes/orbital
      Network

      CAPACITY NOT REPORTED BY THE SERVER

      Drag & drop

      Drop a folder to scan it

      On the window or on the Dock icon. Try it: drag the folder.

      ~/Movies
      Drop target
      Dock progress

      Scan, then do something else

      The Dock icon shows progress, and bounces when a long scan finishes.

      0%
      Context menus

      Right-click everything

      Reveal, open, Quick Look, copy path, Terminal, focus the map, rescan one folder.

      llm-finetune 27.8 GB
      Right-click the row
      Export

      Save the map

      ⇧⌘S saves a captioned PNG. ⇧⌘C copies it. CSV export for the largest files.

      Navigate

      Back, forward, rescan one folder

      ⌘[ ⌘] ⌘↑. Rescan only the folder you changed.

      Honest sizes

      Sizes you can trust

      • Allocated bytes, same as du
      • Hard links counted once
      • Symlinks never followed
      • APFS clones flagged
      • Firmlinks merged, mounts skipped
      • Cloud-only files marked, not counted as local
      Native

      Swift. Nothing else.

      0dependencies
      0servers
      0web views
      2chip families

      SwiftUI and AppKit, built with the system toolchain. No Electron, no frameworks to update, nothing running in the background.

      SEQ 10Privacy

      Zero telemetry.

      Ullage sends nothing anywhere. It makes no network connections at all, App Store interaction is handled by MacOS. No accounts, no analytics, no ads, no crash reporter. It reads file names, sizes and dates, and it keeps them on your Mac.

      Your Mac
      • Servers
      • ◔Analytics
      • ◈Ads
      • ☺Accounts
      • ✱Crash reports
      BYTES SENT0
      sandbox: no outgoing network entitlement
      Entitlements, in full
      • +com.apple.security.app-sandbox
      • +files.user-selected.read-write
      • +files.bookmarks.app-scope
      • −network.client
      • −automation.apple-events
      • −temporary-exception.*

      Hover a line.

      Declared on the App Store
      Data Not CollectedThe developer does not collect any data from this app.
      • 01
        Reads only what you hand itFile names, sizes, dates and types of the drives and folders you choose. Contents only if you run the duplicate finder, compared in memory, kept nowhere.
      • 02
        Stays on your MacSettings, allowed locations and per-scan folder sizes live in the app’s own container. Delete the app and they go with it.
      Read the full privacy policy
      SEQ 11Briefing

      Questions, answered.

      Is it safe to delete what Ullage suggests?

      Findings are suggestions only. Nothing is removed until you stage it and confirm, and the default is the Trash. Whole-system and whole-home locations can’t be removed at all. Each finding says what it is, how risky it is, and how it comes back (for example “Xcode regenerates this on the next build”).

      Why does it ask me to pick my drive?

      Mac App Store apps run in the App Sandbox: macOS only lets them read what you hand them. The first scan of a location shows one plain-English prompt and the system folder picker. Choose the drive, press Allow access, and Ullage remembers it with a security-scoped bookmark. You can review and withdraw every allowed location in Settings.

      Does it need Full Disk Access?

      No, it’s optional. Without it, folders macOS protects (Mail, Messages, Safari and a few more) are skipped and counted as “protected”, and Ullage says so. Grant Full Disk Access in System Settings and a rescan includes them.

      Does it phone home?

      Ullage has no server and is built without the network entitlement, so it has nothing to phone and nowhere to send it. It never goes online at all, your purchase is handled by MacOS and the App Store. No accounts, no analytics, no ads, no crash reporter. On the App Store it is declared as “Data Not Collected”.

      Does it work on network drives?

      Yes. Mounted SMB, NFS and AFP shares show up as drives with a NETWORK tag and are scanned after you allow them. They’re slower because the server answers each folder separately, and moving items to the Trash isn’t supported by many shares; Ullage tells you instead of failing silently.

      What does it run on?

      macOS 14 Sonoma or later, on Apple silicon and Intel Macs. It is a universal app, so it runs natively on both.

      Why “Ullage”?

      ullage (UL·idge), noun: the empty space left in a tank. Rocket engineers fire small “ullage motors” to settle the fuel before the main engines start. Here it means your free disk space, which is the thing this app exists to give you more of.

      Final countdown

      T3

      Get your gigabytes back.

      Ullage runs on Apple Silicon and Intel Based Macs.

      Coming soon to theMac App Store

      Buy it once, keep it forever.

      macOS 14+ · Apple silicon & Intel · English

      ? mission hotkeys