Dragging an app to the Trash looks clean, but macOS quietly leaves gigabytes of caches, preferences, and support files scattered across your ~/Library. The best app uninstaller for Mac doesn't just move the .app bundle—it hunts down every orphan file and shows you exactly what it found before anything is deleted. This guide tests seven popular tools on that one criterion: leftover-detection accuracy.
Why Drag-to-Trash Leaves Junk Behind
macOS stores app data in several standard locations that are intentionally separate from the app bundle:
~/Library/Application Support/<BundleID or AppName>— user data, databases, configuration~/Library/Caches/<BundleID>— rebuild-able cache files~/Library/Preferences/<BundleID>.plist— user preferences~/Library/Logs/<BundleID>— crash and diagnostic logs~/Library/Containers/<BundleID>— sandboxed app data (often hundreds of MB)~/Library/Saved Application State/<BundleID>.savedState— window restore state~/Library/LaunchAgents/<BundleID>*.plist— background daemons the app registered~/Library/HTTPStorages/<BundleID>,~/Library/WebKit/<BundleID>— web-engine storage
Deleting the .app touches none of these. After uninstalling a heavy app like Adobe Creative Cloud or Microsoft Office without a dedicated tool, it is common to find 1–4 GB of leftovers still on disk.
How to Find Leftovers Manually (and Why It's Tedious)
If you prefer a terminal approach, you can search each standard location yourself. Replace com.example.AppName with the actual bundle identifier (visible in Info.plist):
# Find leftovers by bundle ID
find ~/Library -name "com.example.AppName*" -maxdepth 4 2>/dev/null
# Also check by display name
find ~/Library -name "AppName*" -maxdepth 4 2>/dev/null
This works, but it requires knowing the exact bundle ID, running multiple searches, and manually deciding what is safe to delete — which is where dedicated tools add real value.
The 7 Tools, Ranked by Leftover Detection
1. Crumb — Best Overall for Exact-Match Leftover Finding
Crumb uses bundle-ID and exact-name matching against every standard macOS Library location, including Containers, LaunchAgents, Cookies, HTTPStorages, and WebKit storage — locations that many older tools miss entirely. Crucially, it shows you a full checklist of every file and folder it found before anything is deleted, and removal goes through a recoverable quarantine rather than a permanent erase. If you realise you deleted a preference file you needed, you can restore it.
The free tier lets you inspect leftovers for any app. Download Crumb to try it — no account required, Apple-notarized.
Leftover locations checked: Application Support, Caches, Preferences, Logs, Containers, Saved Application State, LaunchAgents, HTTPStorages, WebKit, Cookies.
Price: Free (inspect) / $49 one-time lifetime / $8.99 per month.
2. AppCleaner (by FreeMacSoft) — Best Free Option
AppCleaner is free, lightweight, and has been reliable for years. Drag an app onto its window and it scans for related files using a combination of bundle-ID and name matching. It covers the most common locations (Application Support, Caches, Preferences) well. It misses Containers and LaunchAgents on some apps, and there is no preview of file sizes before deletion — you see paths but not how much space each item occupies.
Best for: users who want a quick, free solution for common indie apps.
Misses: Containers, some LaunchAgents, HTTPStorages.
3. App Cleaner & Uninstaller (Nektony)
This paid tool ($19.99, subscription optional) adds a service-extensions scanner and a startup-items manager on top of standard leftover detection. The UI presents leftovers grouped by category, which makes it easier to decide what to keep. Detection accuracy is good across the standard Library paths. The main limitation is that the free trial is read-only — you can see what it found but cannot delete without purchasing.
Best for: users who also want to manage login items and browser extensions in one place.
4. CleanMyMac X (MacPaw) — Broadest Feature Set
CleanMyMac X bundles an uninstaller alongside a system cleaner, malware scanner, and performance monitor. Its uninstaller module covers the standard Library paths and does a reasonable job finding leftovers for sandboxed apps. However, it is a subscription product ($39.95/year), and its uninstaller is one feature among many — if you only want to uninstall apps cleanly, you are paying for a lot you may not use.
Best for: users who want an all-in-one maintenance suite and are comfortable with subscriptions.
Misses: Detection can be less granular for apps that store data under non-standard folder names.
5. AppZapper
AppZapper was one of the earliest dedicated Mac uninstallers and pioneered the drag-to-remove concept. As of 2026 it has not received major updates in several years. It scans Application Support, Caches, and Preferences reliably, but does not cover Containers, Saved Application State, or LaunchAgents. For modern sandboxed apps downloaded from the Mac App Store, it will regularly leave the largest data folder (Containers) untouched.
Best for: legacy apps and casual use where Containers are not a concern.
Not recommended for: modern Mac App Store apps or apps that register background agents.
6. TrashMe 3 (Jibapps)
TrashMe 3 integrates with the Trash workflow — you move the app to Trash and TrashMe intercepts to offer a leftover scan. Detection is solid for the common paths, and the app is reasonably priced ($9.99 one-time). It does not cover HTTPStorages or WebKit storage, and the interception model can be confusing if you are just pruning your Applications folder without a deliberate uninstall gesture.
Best for: users who prefer a Trash-integrated workflow.
7. Manual Terminal Removal
For developers comfortable in the terminal, manual removal gives full control. The steps below work on macOS 12 Monterey through macOS 26:
- Find the bundle ID:
defaults read /Applications/AppName.app/Contents/Info CFBundleIdentifier - Remove the app bundle:
(or move to Trash in Finder first)trash /Applications/AppName.app - Remove each Library location manually, verifying each path exists before deleting:
rm -rf ~/Library/Application\ Support/com.example.appname rm -rf ~/Library/Caches/com.example.appname rm ~/Library/Preferences/com.example.appname.plist rm -rf ~/Library/Containers/com.example.appname rm -rf ~/Library/Logs/com.example.appname rm -rf ~/Library/Saved\ Application\ State/com.example.appname.savedState rm ~/Library/LaunchAgents/com.example.appname*.plist - Reload LaunchAgents if you removed a plist:
launchctl remove com.example.appname
Warning: rm -rf is permanent. There is no undo. Double-check each path before pressing Enter. If you are unsure what a folder contains, use Crumb's "Is this safe to delete?" feature to get an explanation of any Library folder before removing it.
Comparison Table
| Tool | Price | Containers | LaunchAgents | HTTPStorages / WebKit | Recoverable removal |
|---|---|---|---|---|---|
| Crumb | Free / $49 one-time | Yes | Yes | Yes | Yes (quarantine) |
| AppCleaner | Free | Partial | Partial | No | No |
| App Cleaner & Uninstaller | $19.99 | Yes | Yes | Partial | No |
| CleanMyMac X | $39.95/yr | Yes | Yes | Partial | No |
| AppZapper | $12.95 | No | No | No | No |
| TrashMe 3 | $9.99 | Yes | Yes | No | No |
| Manual Terminal | Free | Yes | Yes | Yes | No (permanent) |
What Is Safe to Delete — and What Is Not
Not every leftover file should be removed. Here is a practical guide:
- Safe to delete:
~/Library/Caches/<BundleID>(always rebuild-able),~/Library/Logs/<BundleID>,~/Library/Saved Application State/<BundleID>.savedState,~/Library/HTTPStorages/<BundleID>. - Safe if you no longer need the app:
~/Library/Application Support/<BundleID>,~/Library/Preferences/<BundleID>.plist,~/Library/Containers/<BundleID>. These contain user data — documents, licenses, or settings — that cannot be recreated if you reinstall the app later. - Be careful with:
~/Library/Containers/<BundleID>for apps like Mail, Messages, or any app where you have important data stored inside the container. - Do not delete: System-level files in
/Library(not your home Library) unless you are certain what they do. Shared frameworks in/Library/Frameworksmay be used by other apps.
Cleaning is permanent unless your tool provides a recovery path. Always review the full list before confirming deletion.
Which Tool Should You Choose?
If you uninstall apps occasionally and want zero friction, AppCleaner is a solid free starting point for non-sandboxed apps. If you have a large app library to audit, or you have been dragging apps to Trash for years and want to find what accumulated, a tool with full Containers and LaunchAgents coverage — and ideally a recoverable removal step — will serve you better. The terminal approach is powerful but carries real risk if you move quickly.
The single most important feature in any Mac uninstaller is showing you what it found before it deletes anything, with enough detail (paths and sizes) to make an informed choice. That, more than any other criterion, separates the tools that genuinely help from the ones that just feel thorough.