How Mint chooses between optimization, cleanup and keeping files
Before you optimize, clean, organize or keep data, it helps to know why it’s taking up space. Mint combines past scans, the app or project that owns the data, what’s inside the files and whether anything is using them right now. Each of those proves something different, and some decisions stay with you.
Choose the outcome, with context.
Mint looks at what data is, where it came from and whether it is in use. Then it separates opportunities to store it more efficiently, things you can clean, personal decisions and files to keep.
Size today and growth over time
The biggest folder on your Mac and the fastest-growing one often point to different problems. A project that has sat at 80 GB for months may need nothing. An app that went from 2 GB to 12 GB is smaller, but it may be why you ran out of space this week.
Mint builds this history from recorded scans. The first scan is the baseline. After that, a source’s change is its newer size minus its older size, and that only works when both scans measured it. An app that shows up in the list for the first time didn’t necessarily use zero bytes before.
That history shows change between scans. Mint doesn’t log every file write. If total usage rose by 10 GB and one source rose by 7 GB (example numbers), start with that source. Other sources may have moved too, and coverage may be incomplete, so the other 3 GB can’t just be blamed on the system, and the 7 GB isn’t automatically junk. What a cleanup processed can also differ from the drop in the next scan, because apps keep writing and the file system may still hold recoverable data. Mint keeps the two apart. A cleanup record counts the bytes it processed, and the measured change on disk is shown on its own.
Where data lives and what it does
A path tells you where data is. Its owner tells you which app or project it belongs to, and its role tells you what it’s for. Application Support can hold files an app can download again, but also settings, databases and work that exists nowhere else. A folder named cache doesn’t prove that everything in it can go.
In a development project, source code, build output and downloaded dependencies often sit side by side. You wrote the code, build output needs a rebuild, and dependencies may need a download. For supported project types, Mint checks the project’s identity, configuration, folder structure and current use. A folder that’s only named build or bin doesn’t give that evidence.
Archives are similar. A ZIP might be an installer you downloaded or the only copy of work you delivered to a client. In the Direct edition, for ISO, XIP, ZIP and IPSW firmware installers, Mint looks at what’s inside, where the file sits and whether it’s mounted or in use. Older disk images and packages are flagged by type and age only, so those rows are never ticked for you. Keeping an installer for offline installs or a rollback is your call.
A useful finding ties one location to its owner, its role and what removing it would change. The Disk tab groups findings by what removing them means (Optimizable, Safe to clean, Yours, Keep) and names the owning app on each row. Neither the group nor the app name gives Mint permission to clear an app’s whole data folder.
What counts as a duplicate
Identical files, photos that look alike and an image saved several times inside one conversation are different findings. Only a full content match proves a copy. A matching sample narrows the search, and looking similar can’t tell Mint which photo you’d keep. Files with identical contents may still be used by different projects.
In September 2026 we studied one Mac in daily use without changing any of its files. Its 1,467 Codex session JSONL files took up 16.509 GB and had no whole-file duplicates. Inside them, 62,014 image occurrences came down to 12,104 unique images. Every copy beyond the first added up to 4.605 GB, which is 76.9% of the decoded image bytes.
The repetition happens inside the sessions and depends on how parent tasks, subtasks and image references relate, so looking for identical files would never find it. About 4.547 GB of it sat within the same parent-session families. For this sample, it made more sense to study how the app itself stores images before thinking about deduplication across apps.
The 76.9% is a share of the decoded image bytes we could identify. It says nothing about the size of the session files or how much disk space you could get back. Content we couldn’t parse was reported separately and never counted as zero. Repeated images may be needed to replay or continue a conversation, so before anything changes them, you need to check that no reference breaks and that a restore works. One Mac can’t tell you what a typical user would save or how accurate cleanup is in general.
Weighing the space against the cost of getting it back
Knowing that data can be rebuilt tells you there is a way back. It doesn’t tell you how long that takes, whether you’ll need a network connection, whether the old version is still available, or whether you need the data tomorrow. The question is whether the space you free today is worth that work next time.
Build output shouldn’t be removed in the middle of a build. A fresh download won’t help if you need the files offline tomorrow, and only you know which personal photo to keep. So Mint keeps its findings apart. Some are items it can clean, some need you to choose and review, and some only explain where the space went. What you can do depends on the kind of data, its current state and your edition of Mint. Measured bytes don’t automatically become something you can clean.
Age limits pick out what is worth a look. A backup nobody has opened in months may be the only backup, and a temporary file from yesterday may already have done its job.
Checking again right before an action runs
Between a scan and a cleanup, an app can launch, a file can be replaced, a build can start or a path can end up pointing somewhere else. So before it acts, Mint checks again whatever matters for that action, such as whether something is in use, what exactly is in scope and whether it’s protected. If anything has changed, an earlier candidate may be skipped.
Mint reuses folder sizes, content hashes and session analyses that are still valid. That saves time, but the checks at the moment of action still run every time. Missing permissions, an interrupted scan or an analysis limit leave that part unconfirmed, and Mint doesn’t treat it as fine.
That’s also why a report may not explain every byte. Mint may know a folder’s size but not support its format, or know the owner but not be able to confirm it’s safe to touch right now. Showing those gaps is more useful than calling every unexplained byte reclaimable.
What your feedback changes, and the limits of Undo
File contents hint at purpose, but they can’t tell Mint why you keep something. When you undo one of Mint’s actions, move a file it organized back, or take a cleaned file out of the Trash, Mint asks whether to add that path to the Ignore List. If you don’t answer, nothing changes and a later run can move it again. Once you add it, the path is Protected and Mint leaves it alone.
Mint records file operations, and eligible ones can be undone while the files and the history they need are still there. Codex Optimize keeps the pictures Codex reads when you continue the conversation. Remove media is a separate, permanent action and leaves no small previews. Permanent deletion and emptying the Trash can’t be undone either. History keeps up to 90 days or 5,000 batches and doesn’t replace a backup.
An action nobody undid doesn’t prove the classification was right. Corrections, restores and silence are different signals, and none of them is a measured accuracy figure.
Reading a single finding
Start from the problem you have. If space disappeared suddenly, see which sources grew between comparable scans. If you need room for an install, look at specific candidates and what each would cost to get back. Then check where the data is and what it does, and whether the evidence is a full content comparison, a structure check or only a filter on age and size.
Before you act, check which item changes, whether it touches work in progress, and whether using it again means a rebuild, a download or a restore from backup. One cleanup only fixes today’s shortage, so keep an eye on later scans in case the space fills up again. When the evidence isn’t enough, looking further or keeping the data is a reasonable outcome.
Look at a finding on your own Mac
Download Mint, run a scan and open any finding to see where it is, what the evidence is and what removing it would change.