Skip to main content
Mole
Features Tested apps Testimonials Pricing FAQ Blog
EnglishEN 简体中文中 繁體中文繁 日本語日 한국어한 FrançaisFR DeutschDE ItalianoIT EspañolES PortuguêsPT
Buy nowBuy Download

    Help, documentation, releases, and articles.

    Home/Apps tested with Mole

    How to uninstall Charles on Mac

    Charles reaches further into macOS than its own folders. It switches the system proxy settings on while it runs, it may have installed a privileged helper to do that, and if you used SSL proxying you installed and trusted a Charles root certificate in your keychain. Removing the app handles none of those three by itself. Your Charles settings, the license included, are kept in ~/Library/Preferences/com.xk72.charles.config, according to Charles's FAQ; copy that file somewhere safe if you want them back later. This guide covers Charles from its disk image and the Homebrew cask charles.

    Quit Charles normally first

    Charles's configuration guide says it configures the macOS proxy settings when it starts and reconfigures them when it quits. Quit it from the Charles menu instead of force quitting it, so it can put the proxy settings back. Then:

    1. Search Activity Monitor for Charles and check that its processes have exited.
    2. Move Charles from Finder's Applications folder to the Trash.
    3. Open System Settings › General › Login Items & Extensions. In the recorded test Charles had registered an item, com.xk72.charles, and it was still listed after the app was in the Trash. Turn it off there if it remains.

    Check that no proxy is left pointing at Charles

    If Charles crashed or was force quit, the system can keep sending traffic to a proxy that no longer exists, and web pages stop loading. Check the current proxy settings:

    scutil --proxy
    
    • HTTPEnable : 0 and HTTPSEnable : 0, or no HTTP entries at all, means no web proxy is active.
    • HTTPEnable : 1 with HTTPProxy : 127.0.0.1 and a HTTPPort that matches your Charles port (8888 unless you changed it) means the Charles proxy is still set. Open System Settings › Network, choose the network you use, click Details, then Proxies, and turn off the web proxy entries that point at your own Mac.
    • A proxy pointing at another address belongs to something else, such as a company configuration or another tool. Leave it alone.

    Decide what to do with the Charles root certificate

    The root certificate is a separate decision from uninstalling. Charles's SSL page says each installation generates its own root certificate, which you installed through Help › SSL Proxying › Install Charles Root Certificate and set to Always Trust in Keychain Access.

    • Keep it if you plan to reinstall Charles and keep debugging HTTPS on this Mac.
    • Remove it if you are done with Charles. A trusted root you no longer use lets whoever holds its key present certificates your Mac accepts for any site. Open Keychain Access, search for Charles Proxy, select the certificate under Certificates and delete it. macOS asks for your password if the trust setting has to change.

    Phones and simulators that you set up for Charles hold their own copies. On an iPhone, turn it off under Settings › General › About › Certificate Trust Settings and remove its profile under Settings › General › VPN & Device Management. Removing Charles from the Mac does not touch them.

    This read-only command shows whether a Charles certificate is still in your keychains:

    security find-certificate -a -c "Charles Proxy" | grep labl
    

    A labl line naming Charles Proxy means a certificate is still there. No output means none of your keychains holds one. An error mentioning that the item could not be found means the same thing.

    Check for the proxy helper

    Charles can install a helper so it can change network settings without asking each time. These read-only commands show whether one is present:

    pgrep -il charles
    ls -l /Library/PrivilegedHelperTools | grep -i xk72
    ls /Library/LaunchDaemons | grep -i xk72
    
    • No output from pgrep means Charles is not running.
    • No output from the two ls lines means no Charles helper was installed, which is common if you never granted Charles permission to change the proxy settings.
    • A com.xk72.Charles.ProxyHelper entry means the helper is still installed. Remove it only after Charles is gone, in Finder, with administrator authorization; do not remove anything else in those folders.

    Where Charles keeps its data

    Location What it holds What to do
    ~/Library/Preferences/com.xk72.charles.config All Charles settings and the license Copy it before removal if you want your setup back
    ~/Library/Application Support/Charles App support data Review, then remove when you no longer need it
    ~/Library/Preferences/com.xk72.Charles.plist macOS preferences for the app Safe to remove after quitting
    ~/Library/Saved Application State/com.xk72.Charles.savedState Saved window state Safe to remove after quitting

    Saved sessions and exported traffic are files you chose a place for; they are not app data.

    If you installed it with Homebrew

    The charles cask's plain uninstall step unloads com.xk72.Charles.ProxyHelper, deletes /Library/PrivilegedHelperTools/com.xk72.Charles.ProxyHelper, and then runs a step that deletes the Charles certificates from the keychain. brew uninstall --cask charles therefore removes the root certificate even without --zap, and after a reinstall you install and trust it again through the Help menu. The zap list adds ~/Library/Application Support/Charles, com.xk72.charles.config, the com.xk72.Charles preferences file and the saved window state, so brew uninstall --cask --zap charles also removes your settings and license.

    To keep your settings, leave out the zap step:

    brew uninstall --cask charles
    

    Mole adds --zap only when every path on the zap list sits inside ~/Library, none of them touches a row you left unchecked, and no other installed app claims them. ~/Library/Application Support/Charles is listed but unselected by default, so Mole leaves --zap out unless you tick that row. The plain uninstall step, including the certificate step, still runs when Mole removes a Homebrew install. A brew command you type yourself never consults Mole's checkboxes.

    What Mole lists

    For Charles from its disk image:

    • ~/Library/Application Support/Charles is listed but not selected.
    • The com.xk72.Charles preferences file and saved window state are selected by default.
    • ~/Library/Preferences/com.xk72.charles.config, taken from the Homebrew zap list, is listed but not selected, so your settings stay unless you tick it.
    • If /Library/PrivilegedHelperTools/com.xk72.Charles.ProxyHelper exists, it is listed but not selected.
    • Mole does not read or change keychain certificates or proxy settings, and it does not edit login items. Use the steps above for those.

    What this test covered

    On September 19, 2026, Charles 5.2.1 was copied from its disk image into Applications, opened, and uninstalled with a Preview build of Mole 1.15. There was no Homebrew receipt. ~/Library/Application Support/Charles was listed, left unselected and stayed on disk. The com.xk72.charles login item was still listed afterwards, pointing at the app in the Trash. SSL proxying, the root certificate, the proxy helper and the Homebrew cask were not tested.

    Mac running low on space or slowing down? Mole can clean out the junk, remove apps completely and keep macOS in shape.

    Try Mole

    Mole · 鼴

    Cleanup, software, and status for your Mac.

    v1.16.0 (296) · Release notes

    Product

    Mac Cleaner App Uninstaller Mac Optimizer Disk Analyzer System Monitor

    Support

    Help Documentation Releases Blog

    Legal

    Terms of Service Privacy Policy Refund Policy

    Resources

    CLI Tool Affiliate Program

    Connect

    Twitter hi@mole.fit

    Mole’s only official website mole.fit · Avoid installers from unknown sources

    The CLI stays free for terminal workflows.