How to uninstall Xnapper on Mac
Save edited screenshots before uninstalling Xnapper, and keep exported images at their real save location. The official screenshot guide describes Save, with Desktop as the default destination and a configurable location in Preferences. This guide covers the official Mac app and Homebrew cask xnapper.
Save images and quit capture
Save images you still need and open the saved files to confirm them. A clipboard-only image is not a saved backup. Finish any capture and quit Xnapper from its menu bar menu; use Activity Monitor if it remains running. If it is configured to launch at login, disable its own entry in System Settings › General › Login Items & Extensions.
Then move Xnapper.app from Applications to Trash. If you also want to revoke its Screen Recording access, change Xnapper's own entry in System Settings › Privacy & Security. Keep other capture tools and their permissions.
Review local state and the Share extension
After saving and opening wanted screenshots, quitting Xnapper and backing up wanted extension contents, press Shift + Command + G in Finder to open the four app-data locations below. Move the Xnapper items you choose to remove to Trash, keeping exported images and shared updater folders. If macOS refuses access to a container, stop and check the reported error rather than treating it as removed.
| Location | Keep or remove |
|---|---|
| Saved screenshot files | Your exported images. Keep them outside app-data removal. |
| ~/Library/Application Support/Xnapper | App support data, to review before resetting. |
| ~/Library/Caches/Xnapper | App cache. |
| ~/Library/Application Scripts/com.devuap.beautyshotapp.Xnapper-Mac-Share-Extension | Xnapper's Share extension scripts. |
| ~/Library/Containers/com.devuap.beautyshotapp.Xnapper-Mac-Share-Extension | Share extension container. Back up wanted contents before removal. |
The four app-data locations are in the current cask. A surviving Sparkle downloader container is separate from the own Share extension; do not delete a shared updater parent. Uninstalling does not cancel a subscription or delete an account.
Check the result
pgrep -il Xnapper
ls -d /Applications/Xnapper.app "$HOME/Library/Caches/Xnapper" "$HOME/Library/Containers/com.devuap.beautyshotapp.Xnapper-Mac-Share-Extension"
No process output means no matching name is running. Printed paths remain, missing-path errors mean absence, and permission errors leave the result unknown. These checks do not prove macOS permission revocation or deletion of images in your chosen save folder.
If you installed it with Homebrew
brew uninstall --cask xnapper
The ordinary cask uninstall removes the app without zap. Direct brew uninstall --cask --zap xnapper also removes the support folder, cache, Share scripts and Share container above, regardless of Mole's checkboxes. Save wanted extension contents first.
Mole checks Homebrew's full removal list and skips --zap when it reaches unchecked data, shared files or anything it cannot verify. It still removes the leftovers you selected.
What Mole lists
Xnapper's named cache and its own bundle-ID Share scripts and container are selected by default when present and attributed to this app. App-named support data is unchecked with Remove data and settings with apps off; enabling it can preselect eligible reviewed app data. Separately identified or shared updater data retains its review and ownership boundaries. Keep exported screenshots, and uncheck any container whose contents you want to retain.
What this test covered
Xnapper 1.17.1 was copied from the official package to Applications and uninstalled on September 21, 2026, without a Homebrew receipt or granting Accessibility. The app, Caches/Xnapper and its own Share scripts went to Trash after selecting review items. The Share and Sparkle downloader containers returned permission errors. Saved-image recovery, permission revocation and complete removal of those containers were not verified.
