I'm using Snow Leopard and would like to delete all traces of a program on my computer. I tried using AppCleaner but that does not remove some traces of the program as when I try to reinstall it detects previous installs.

  • 4
    It would help if you gave us the program name..
    – radius
    Jun 29 '10 at 14:55
  • Programs like AppCleaner and AppZapper typically search your ~/Library folder for related Preferences and Application Support files. If there are other files lingering around that are not in ~, those programs won't find them. I'm guessing that whatever program you're trying to install is detecting a receipt from a previous installation.
    – fideli
    Jun 29 '10 at 16:04

Depending on what you're installing it may have dependencies. AppZapper or similar programs will normally look for just files with the application title in the name.

Programs such as Adobe Photoshop and others will put files that are not named likely in various places. Some trial software puts licensing files in your home directory. Often these are hidden or not readily accessible.

If you installed from a package there should be an XML file with a list of everything that got installed laying around somewhere. If you already ran AppCleaner is may have been removed though.


If tools like AppZapper fail, you can try manual way using find from terminal

cd ~
find . -name "*PROGRAMNAME*" -print

and manually remove leftovers

  • You shouldn't have to do cd ~ after opening Terminal. It starts in ~ automatically.
    – Wuffers
    Oct 23 '10 at 21:29
  • If you open terminal from tools like e.g. Pathfinder, you may end up in current directory of that tool. Of course you can always use 'find ~ -name "NAME" -print' which makes the cd unnecessary
    – Miro A.
    Nov 24 '10 at 16:25
  • 1
    Just typing cd on its own will take you to the home folder. No need for ~.
    – ccpizza
    Jun 4 '15 at 20:05

Another piece of software that does a similar thing is AppTrap. It detects when an application has been put into the trash and prompts the user to remove files associated with that application. The automatic nature of it is a feature I appreciate.


Every app can do their own thing and write to unexpected locations, and there is no way to reliably predict or infer anything, so basically all app cleaning tools are based on common patterns and heuristics, which for some people might work in most cases most of the time.

The only reliable way to tell where an app is writing its stuff is to trace what it does during installation, startup, and during normal operation.

This involves sifting through a lot of 'dirty' low-level calls but can be done using OSX built-in tools.

For example to see what the TextEdit app does, type the following in the Terminal and then launch TextEdit:

sudo opensnoop -n TextEdit

See an app's file I/O activity:

sudo iosnoop -n TextEdit

See everything about an app:

sudo fs_usage `pgrep -i textedit`

The last command has to be started after you start your app, because fs_usage takes a process ID, which you can see in the ActivityMonitor, or using pgrep -i textedit, where textedit is your app. Without an argument fs_usage will show everything on the system.

Running any of the tools above with the --help switch will display more options.


If tools like AppCleaner doesn't uninstall correctly the best is to give us the program name or ask the editor.
You might also want to inspect the installation package to find post install script that are run to check previous installation.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.