How to uninstall ProtonVPN on Mac
Disconnect from any server and quit ProtonVPN before removing it. This guide covers the official macOS download from Proton; the Homebrew cask protonvpn points at the same disk image. Your account lives with Proton, so the local folders below hold settings and state for this Mac, not your subscription.
Disconnect and quit
Open the ProtonVPN menu bar icon, turn the connection off, then quit the app from the same menu. ProtonVPN registers a login item launcher (ch.protonvpn.ProtonVPNStarter); if it is still listed after you remove the app, turn it off in System Settings › General › Login Items & Extensions.
ProtonVPN's Help menu also has Clear Application Data, which resets the app to default settings while it stays installed. That is a reset, not an uninstall. Proton VPN: common macOS issues
Remove the app
Quit ProtonVPN, then move ProtonVPN.app from Applications to the Trash.
Where ProtonVPN keeps its data
These paths come from Homebrew's zap list for ProtonVPN; the container and group container were also on disk after the recorded test.
| Location | What it holds | What Mole does |
|---|---|---|
~/Library/Application Support/ProtonVPN |
App settings and local state | Not listed. Remove it by hand only if you want this Mac's settings gone |
~/Library/Containers/ch.protonvpn.*, ~/Library/Group Containers/*.group.ch.protonvpn.mac, ~/Library/Application Scripts/*.group.ch.protonvpn.mac |
The sandboxed app data and the group its helper processes share | Not listed; left in place after the recorded test |
~/Library/Logs/ProtonVPN.log, ~/Library/Caches/SentryCrash/ProtonVPN, ~/Library/Application Support/CrashReporter/ProtonVPN* |
Connection log and crash reports | Not listed |
~/Library/Caches/ch.protonvpn.mac, ~/Library/Preferences/ch.protonvpn.mac.plist, ~/Library/WebKit/ch.protonvpn.mac, ~/Library/Cookies/ch.protonvpn.mac.binarycookies |
Cache, preferences and embedded web data | Listed and selected by default |
Check the result
pgrep -ilf protonvpn
ls -d ~/Library/Application\ Support/ProtonVPN ~/Library/Containers/ch.protonvpn.*
systemextensionsctl list | grep -i proton
No output from pgrep means no ProtonVPN process is running. ls -d prints each folder still on disk; "No such file or directory" means it is gone, and "no matches found" from the shell means no ProtonVPN container exists. A line from systemextensionsctl list means a ProtonVPN network extension is still registered; clear it under System Settings › General › Login Items & Extensions if you no longer need it. No output means none is registered.
If you installed it with Homebrew
Mole skips --zap when its list reaches unchecked or shared data, or cannot be fully checked, and still cleans the leftovers you selected.
The protonvpn cask's plain uninstall step unloads ch.protonvpn.ProtonVPNStarter and quits the app. Its zap list names the folders in the table above. Running brew uninstall --cask --zap protonvpn yourself moves every one of them to the Trash, whatever you ticked in Mole. When Mole removes a Homebrew install, it checks each zap path that exists on disk: the container, group container, Application Support folder and log carry the ProtonVPN name and fail Mole's safety check, so once ProtonVPN has run and created them, Mole leaves --zap out and those folders stay, the same as with the official download. Homebrew protonvpn cask
To remove only the app and its login item launcher:
brew uninstall --cask protonvpn
What Mole lists
- Leaves named after the bundle id
ch.protonvpn.macunder~/Library(Caches, Preferences, WebKit, Cookies) are listed and selected by default. - Any other path with "protonvpn" in its name is hidden:
Application Support/ProtonVPN, the log, crash-report folders, the sandbox containers underContainers/ch.protonvpn.*, the*.group.ch.protonvpn.macgroup container and its Application Scripts folder. Mole treats that word as VPN state and never offers those paths, whichever way ProtonVPN was installed.
What this test covered
On September 19, 2026, ProtonVPN 6.5.1 was copied from its official download into Applications, opened, and uninstalled with a Preview build of Mole 1.15 (build 277), with no Homebrew receipt. The app went to the Trash. Its container and the J6S6Q257EK.group.ch.protonvpn.mac group container stayed on disk because of the protected "protonvpn" name. The ProtonVPNStarter login item was still registered afterwards. The record does not include signing in or connecting to a server, so removal with an active connection was not covered.
