How to uninstall a Mac app completely

Dragging an app to the Trash leaves most of it behind. Here is where the rest lives, and how to remove it without taking something that was never the app’s.

On macOS an application is a single bundle, which makes uninstalling look simple. It is not, because almost every app writes somewhere else the moment you run it.

Where the rest of an app lives

  • ~/Library/Application Support/<app or bundle id> — its working data.
  • ~/Library/Caches/<bundle id> — safe to remove.
  • ~/Library/Containers and ~/Library/Group Containers — for sandboxed apps, where the real data sits.
  • ~/Library/Preferences/<bundle id>.plist — its settings.
  • ~/Library/Saved Application State — window positions.
  • ~/Library/Logs, and sometimes /Library/Logs.
  • ~/Library/LaunchAgents and /Library/LaunchDaemons — anything it starts by itself.
  • /Library/PrivilegedHelperTools — helpers installed with an administrator password.

The safe way to match them

Match on the bundle identifier exactly — com.example.app — or on a folder named exactly for the app, or on a group container prefixed with the developer’s team identifier. Do not match on a substring of the name: an app called "Notes" will otherwise claim folders belonging to four other things.

Order of operations

  1. Quit the app properly, so it can save and remove its own temporary files.
  2. Check for a launch agent or daemon and remove that first, or it may put files back.
  3. Move the bundle to the Trash.
  4. Go through the folders above, matching exactly, and move what belongs to it to the Trash.
  5. Leave the Trash for a day before emptying it.

When an app has its own uninstaller

Use it. Anything that installed a system extension, a VPN, a driver or a virtualisation tool usually ships one, and it knows about pieces no scanner can attribute with certainty.

DiskDuo lists each app with everything it has put around your Mac and the reason each file was matched, asks the app to quit the way the Dock does, and moves the lot to the Trash.

Download DiskDuo