When you remove applications with App Cleaner & Uninstaller, some service files and folders may refuse to go. In that case, the removal window marks each of them with an exclamation mark, so you can see exactly what stayed behind.
Below, you’ll find every common reason an app or its files won’t go, and how to fix each one. Start with the table: find your problem, then jump to the relevant section for details. As soon as you know the blocker, a complete uninstall is usually one fix away.
| Go to | Symptom or message | Cause | What to do |
|---|---|---|---|
| Locked files or folders block the removal | “The operation can’t be completed because you don’t have permission to access some of the items.” | The file or folder is locked (Locked / uchg flag), or it has the wrong owner | Get Info → uncheck Locked; for folders, chflags -R nouchg, then check with ls -lO |
| Lack of access to protected Library folders | Exclamation marks next to files in ~/Library/Mail, Safari, Messages, Cookies, and similar | Protected Library folders; App Cleaner & Uninstaller has no Full Disk Access | Turn on Full Disk Access for App Cleaner & Uninstaller and relaunch it |
| The app or its background process is still running | Leftovers in ~/Library/Containers or Group Containers won’t delete (on macOS 27, with no prompt at all) | App Data protection; no Full Disk Access | Turn on Full Disk Access for App Cleaner & Uninstaller |
| “‘App’ can’t be moved to the Trash because it’s open.” | The app or its helper, agent, or daemon is still running | Quit it, stop its processes, turn off its background items | |
| The app installed a system or kernel extension | The extension stays after the app is gone; systemextensionsctl list shows “activated enabled” | A System Extension (Network, Endpoint Security, DriverKit) is still active | Delete the host app in Finder or with its own uninstaller; on macOS 15+, remove it in Login Items & Extensions |
| A .kext file is left in /Library/Extensions | A legacy kernel extension | Delete it with admin rights → sudo kmutil clear‑staging → restart | |
| Security software blocks its own removal | An antivirus, VPN, or EDR tool blocks removal and asks you to turn off protection | Tamper protection (Endpoint Security / Network Extension) | Use the vendor’s uninstaller, then clean leftovers in App Cleaner & Uninstaller |
| SIP (System Integrity Protection) protects some files | “Operation not permitted” even with sudo; ls -lO shows restricted or schg | The file is protected by SIP | Try section 4 first; as a last resort, disable SIP in Recovery and turn it back on |
| The app’s configuration file has wrong permissions | “sudo: /etc/sudoers is world writable” (or “is owned by uid…, should be 0”); the uninstaller can’t get admin rights | Wrong permissions on /etc/sudoers | Fix the permissions in Get Info (if sudo fails) or with sudo chmod 440 and sudo chown root:wheel |
| The Trash folder is damaged | On every removal: “The item will be deleted immediately. You can’t undo this action.” | ~/.Trash is damaged (it became a file) or has the wrong owner | Check it with ls -ld ~/.Trash → recreate the folder or fix the owner |
| Apps you can’t remove at all | “‘App’ can’t be modified or deleted because it’s required by macOS.” | A built‑in Apple app on the Signed System Volume | It can’t be deleted; reset it with App Cleaner & Uninstaller |
| The app won’t delete or comes back after removal; General → Device Management lists a profile | The app is installed and managed through MDM | Only your IT administrator can remove it |
Test environment
App Cleaner & Uninstaller v.10.0.1, MacBook Pro M1, macOS Golden Gate 27.0.
Locked files or folders block the removal
If you try to remove an app with App Cleaner & Uninstaller, you may get a message that the files couldn’t be moved to the Trash because you don’t have permission to access them. Most often, the file or the folder it sits in is locked. The checkbox works the same way on every macOS from 10.14 to 27, on Intel and Apple Silicon alike.
To clear the lock on a single item:
- Right‑click the file or folder → Get Info.
- In the General section, find the Locked checkbox.
- If it’s checked, uncheck it.
- Go back to App Cleaner & Uninstaller and remove the app again.
Get Info gets tedious when a folder holds dozens of locked files inside it. In that case, Terminal clears them all in one go:
- Open Terminal and paste → drag the folder into the Terminal window to paste its path → press Return.
chflags -R nouchgCopy
- Run , replacing <path> with the folder’s path, and check that uchg no longer shows up.
ls -lO <path>Copy
Note:
- Two flags look alike but don’t work the same way:
- uchg (user immutable) is the Locked checkbox. You can remove it without admin rights.
- schg (system immutable) can be removed with only when SIP is off or when you work from Recovery.
sudo chflags noschgCopy
- Neither flag is the same thing as the exclamation mark in App Cleaner & Uninstaller. The mark tells you the removal failed, and the flags tell you why.
- On external drives formatted as exFAT or NTFS, the Locked checkbox may not appear at all. That’s a file system limit, not a lock, so the steps above won’t help there.
Lack of access to protected Library folders
~/Library/MailCopy
~/Library/MessagesCopy
~/Library/SafariCopy
~/Library/CookiesCopy
~/Library/HomeKitCopy
~/Library/IdentityServicesCopy
~/Library/Metadata/CoreSpotlightCopy
~/Library/PersonalizationPortraitCopy
~/Library/SuggestionsCopy
- iTunes and Time Machine backups
- macOS 14 Sonoma added and
~/Library/ContainersCopy
to that list under App Data protection.~/Library/Group ContainersCopy
On macOS 14 through 26, the system asks whether an app “would like to access data from other apps.” On macOS 27 Golden Gate, the prompt is gone: access to other developers’ containers is blocked by default and managed in System Settings → Privacy & Security. XProtect can also limit access to the data of apps that malware often targets.
In practice, that means App Cleaner & Uninstaller can’t remove leftovers of sandboxed apps on macOS 27 without Full Disk Access, and nothing tells you about it.
That’s why I’d turn on Full Disk Access before anything else:
- Open System Settings → Privacy & Security → Full Disk Access.
- on macOS 10.14 to 12: System Preferences → Security & Privacy → Privacy → Full Disk Access).
- Turn on the toggle next to App Cleaner & Uninstaller.
- Quit and reopen App Cleaner & Uninstaller. Without a restart, the new permission may not apply right away.
- Try to remove the problem app again.
Note:
Terminal needs Full Disk Access as well if you plan to inspect ~/Library/Mail or ~/.Trash from the command line. Otherwise, ls returns “Operation not permitted.”
The app or its background process is still running
App Cleaner & Uninstaller can close running processes on its own before it removes them, so in most cases you confirm and move on.
Alternatively, you can stop it by hand:
- Quit the app from its menu bar icon or Dock with Command+Q.
- Open Activity Monitor → type the app name in the search field → select each related process (helper, agent, daemon) → click Stop → Force Quit.
- Open System Settings → General → Login Items & Extensions → turn off the app’s toggle under Allow in the Background.
- Go back to App Cleaner & Uninstaller and run the removal again.
You can also turn off the agent from the Startup Programs section of App Cleaner & Uninstaller, which saves a trip to System Settings.
The app installed a system or kernel extension
Kernel extensions (kexts) and system extensions sound alike, but macOS handles them in very different ways. Here’s how to deal with each one.
System extensions
App Cleaner & Uninstaller recognizes apps with system extensions and tells you about them in an info pop‑up during removal. The extension needs to be turned off in System Settings.
- Delete the host app from /Applications in Finder or with the developer’s uninstaller. macOS shall offer to remove the extension and ask for your admin password.
- On macOS 15 Sequoia and later, open System Settings → General → Login Items & Extensions → Extensions → click (i) next to Network Extensions, Endpoint Security Extensions, or Driver Extensions → turn the app’s extension off.
- On macOS 11 to 14, System Settings has no extension toggles. Drag the app from /Applications to the Trash in Finder, and macOS shall prompt you to remove the extension along with it.
- Check the result in Terminal:
The extension should be gone or show “terminated waiting to uninstall on reboot.” In that case, restart your Mac.
systemextensionsctl listCopy
- Finish the removal in App Cleaner & Uninstaller.
Note:
- If you delete an app with a system extension using rm -rf, the extension may stay in /Library/SystemExtensions and in the permissions list. Apple recommends removing the host app through Finder.
- works only with SIP turned off. So, try the steps above first.
systemextensionsctl uninstall <TeamID> <BundleID>Copy
Kernel extensions (.kext)
- Open Finder → Go → Go to Folder.
- Enter → move the app’s .kext file to the Trash → enter your admin password.
/Library/ExtensionsCopy
- Clear the staged copy macOS keeps in (which is protected by SIP). For macOS 11+, open Terminal and run:
/Library/StagedExtensionsCopy
sudo kmutil clear-stagingCopy
- Restart your Mac.
Note:
- On Apple silicon Macs, a third‑party kext loads only with Reduced Security set in Startup Security Utility, so M‑series users rarely run into them.
- On Intel Macs (up to macOS 26), kexts load at Full Security once you approve them in Privacy & Security.
Security software blocks its own removal
Antivirus apps, VPNs, and EDR agents protect themselves with tamper protection, built on Endpoint Security and Network Extensions. They block any removal they didn’t start and often ask you to turn off protection first. The clean route goes through the vendor:
- Run the app’s own uninstaller. Look for it in the app’s menu, its folder in Applications, or on the developer’s support site.
- Open App Cleaner & Uninstaller → Remains and delete whatever the uninstaller left behind.
Note:
On a work Mac, don’t remove security tools like CrowdStrike, Sophos, Symantec, or similar agents behind your IT team’s back. The MDM server reinstalls them anyway, and your Mac may be marked as non‑compliant.
SIP (System Integrity Protection) protects some files
SIP stops anyone, admins included, from changing protected parts of macOS:
- ,
/SystemCopy
- (except
/usrCopy
),/usr/localCopy
- ,
/binCopy
- ,
/sbinCopy
- ,
/varCopy
- Apple’s preinstalled apps,
- , and
/Library/SystemExtensionsCopy
- .
/Library/StagedExtensionsCopy
Third‑party files end up under SIP almost always through a system or kernel extension. To check whether a file is protected, open Terminal and run:
ls -lO /path/to/file
Copy
The restricted flag means it’s protected by SIP. Turning SIP off is a last resort.
Before you go there:
- Work through the Extensions section above, since it removes most protected third‑party files with SIP left on.
- Run in regular Terminal to check whether SIP is on in the first place.
csrutil statusCopy
- Keep in mind that SIP has nothing to do with built‑in Apple apps: since macOS 11, they sit on a read‑only Signed System Volume, and you can’t delete them even with SIP off.
If you still need it, the steps are below.
Note:
- On Apple Silicon, a Mac with SIP off runs at Permissive Security, and iPhone and iPad apps won’t launch until you turn SIP back on.
- Never run sudo rm -rf on paths in /System or /Library/Extensions without double‑checking them. One typo there can leave your Mac unable to boot.
- Make sure you understand which files you’re deleting. If you aren’t sure, don’t turn SIP off. But if you’ve decided to do so, enable SIP back once you are done.
To disable SIP on Apple Silicon (macOS 11 to 27):
- Shut down your Mac.
- Press and hold the power button until you see Loading startup options.
- Click Options → Continue → select your admin account → enter its password.
- In the menu bar, click Utilities → Terminal.
- Type the command below → press Return:
csrutil disableCopy
- Confirm → enter your admin credentials if Terminal asks.
- Restart your Mac → delete the problem files.
If Recovery returns “csrutil: failed to modify system integrity configuration,” the usual cause is a skipped step: selecting the admin user or entering its password.
To disable SIP on Intel (macOS 11 to 26):
- Restart your Mac and hold Command+R until the Recovery screen appears. Macs with a T2 chip work the same way; if you set a firmware password, enter it when asked.
- Click Utilities → Terminal → type → press Return.
csrutil disableCopy
- Restart and delete the problem files.
- Once you’re done, turn SIP back on. Repeat the same Recovery steps, run , and restart.
csrutil enableCopy
The app’s configuration file has wrong permissions
App Cleaner & Uninstaller asks for your admin password to remove system‑level files. If the permissions of the sudoers configuration file are wrong, it can’t get admin rights, and you may see “sudo: /etc/sudoers is world writable” or “is owned by uid…, should be 0.”
To restore the correct permissions in Finder, the steps are below. FYI, here is the thing:
The default is read‑only for root and wheel and no access for everyone else (-r--r-----, mode 0440). It stays the same on every macOS from 10.14 to 27.
Check it first:
- Open Terminal and run
The line should start with -r--r----- and show the root wheel.
ls -l /private/etc/sudoersCopy
- If it doesn’t, run:
then
sudo chmod 440 /private/etc/sudoersCopy
sudo chown root:wheel /private/etc/sudoersCopy
If sudo has stopped working, fix the permissions in Finder instead:
- Open Finder → Go → Go to Folder → type → press Return.
/etcCopy
- points to
/etcCopy
, and the shortcut still works on macOS 27./private/etcCopy
Note:
Never edit the contents of sudoers in a text editor. Use sudo visudo if you ever need to change it. A broken sudoers file stops sudo from working at all.
- Right‑click sudoers → Get Info → in Sharing & Permissions, click the lock icon and enter your admin password.
- Set the permissions as follows:
- system to Read only
- wheel to Read only
- everyone to No access
- Click the lock again.
- Then return to App Cleaner & Uninstaller and run the removal again.
The Trash folder is damaged
- Run a check in Terminal with this command:
ls -ld ~/.TrashCopy
- A healthy Trash shows drwx------ and your username.
- If .Trash turned into a file, run:
- (this deletes a broken .Trash file), then
rm ~/.TrashCopy
- (this creates a new empty .Trash folder in your home directory), and
mkdir ~/.TrashCopy
- (this sets the folder’s permissions)
chmod 700 ~/.TrashCopy
- Relaunching Finder rebuilds the folder too. Terminal needs Full Disk Access for this, or it returns “Operation not permitted.”
If you prefer using Finder, this is your way:
- Open your home folder → press Command+Shift+. to show hidden items.
- Delete the file named .Trash (make sure it’s a file, not a folder).
- Press Command+Shift+. again to hide them. The shortcut works from macOS 10.12 through 27.
If .Trash has the wrong owner, make yourself the owner by running this command in Terminal:
sudo chown $(whoami) ~/.Trash
Copy
Note:
After the Trash works again, open App Cleaner & Uninstaller Settings → Remove tab → make sure Delete items permanently is off, so removed files go to the Trash and you can still restore them.
Apps you can’t remove at all
Two kinds of apps stay no matter which tool you use. This is a macOS limitation, not an App Cleaner & Uninstaller one.
Built-in Apple apps
- Safari, Mail, Music, Maps, FaceTime, and other preinstalled apps live on the read‑only Signed System Volume, a sealed, read‑only part of the disk.
- Finder says the app “can’t be modified or deleted because it’s required by macOS,” and turning off SIP doesn’t change that.
- Even when people force the removal, the Delete option for FaceTime stays grayed out, and deleted system apps return with the next macOS update.
- Open App Cleaner & Uninstaller.
- Go to Settings → General → turn on Show system applications.
- In the main window, right‑click the Apple app → Reset Application → confirm.
Apps managed by your organization (MDM)
On work or school Macs, an MDM profile may block removal or put an app right back after you delete it. To check, open System Settings → General → Device Management. If you see a profile there, only your IT administrator can remove the app.
Clean up leftovers after a failed removal
If the app is gone but some of its files failed to delete, you don’t have to start over. Fix the cause from the sections above, then:
- Open App Cleaner & Uninstaller → switch to the Remains tab.
- Select the leftovers of the removed app → click Remove.
Final fix
Most removal errors come down to a missing permission or a process that won’t quit, and those take a minute to fix. SIP and Recovery mode come last, and built‑in Apple apps don’t come off at all.
Still stuck? Contact our support. To speed things up, include:
- Your macOS version (run in Terminal)
sw_versCopy
- Your App Cleaner & Uninstaller version
- A screenshot of the error
- The output of , if an extension is involved
systemextensionsctl listCopy
Frequently asked questions
Why can't I delete an app on my Mac?
Usually for one of four reasons:
- The app or its background process is still running.
- It's a system app protected by SIP and the Signed System Volume.
- The file is locked.
- Your uninstaller lacks App Management or Full Disk Access.
Quit the app and its agents in Activity Monitor first, then check the permissions in System Settings → Privacy & Security.
Can App Cleaner & Uninstaller remove built-in Mac apps like Safari?
- No, App Cleaner & Uninstaller follows Apple's rules and doesn't delete system apps, so macOS keeps working as it should.
- As a workaround, you can reset them and hide them from the Dock.
- To reset an app with App Cleaner & Uninstaller, turn on Show system applications in Settings → General, then right‑click the app → Reset Application. By doing so, you clear caches and settings without deleting the app.
Why does an uninstaller need extra permissions on Mac?
App Management is in System Settings → Privacy & Security → App Management. Without it, no third‑party tool can change or delete other signed apps. For a full removal, App Cleaner & Uninstaller needs both permissions:
- App Management, to delete the app bundle
- Full Disk Access, to reach protected folders in ~/Library



