How to uninstall OpenVPN Connect on Mac
Quit OpenVPN Connect before removing it, and keep a copy of any VPN profiles you imported: they sit in the app's Application Support folder, which is the one folder here holding something you cannot download again. This guide covers the official macOS package from openvpn.net; the Homebrew cask openvpn-connect installs the same package.
Quit the app
OpenVPN Connect runs from the menu bar. Click its icon, disconnect if a profile is connected, then quit. The package also registers a login item named OpenVPN Connect; if it is still listed after removal, turn it off in System Settings › General › Login Items & Extensions.
Remove the app
Move OpenVPN Connect.app from Applications to the Trash. The full installer also sets up a client job and a separate helper (org.openvpn.client and org.openvpn.helper in Homebrew's uninstall stanza) plus several package receipts; the check below shows whether any of them are still there.
Where OpenVPN Connect keeps its data
| Location | What it holds | What Mole does |
|---|---|---|
~/Library/Application Support/OpenVPN Connect |
config.json and the profiles you imported |
Listed, not selected by default. Copy your profiles out before ticking it |
~/Library/Logs/OpenVPN Connect |
Connection logs | Listed and selected by default |
~/Library/Preferences/org.openvpn.client.app.plist, ~/Library/Preferences/org.openvpn.client.app.helper.plist |
App and helper preferences | Listed and selected by default |
~/Library/Saved Application State/org.openvpn.client.app.savedState |
Saved window state | Listed and selected by default |
Keychain openvpn.keychain-db |
A keychain Homebrew's zap step deletes by name | Not touched; Mole never removes anything under ~/Library/Keychains |
Check the result
pgrep -ilf openvpn
launchctl list | grep -i openvpn
pkgutil --pkgs | grep -i openvpn
ls -d ~/Library/Application\ Support/OpenVPN\ Connect
No output from pgrep means no OpenVPN Connect process is running. An org.openvpn line from launchctl list means an OpenVPN job is still loaded in your session. Lines from pkgutil --pkgs are package receipts the full installer registered; no output means none are recorded. ls -d printing the path means your profiles are still on disk, which is what you want if you kept them.
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 openvpn-connect cask's plain uninstall step unloads org.openvpn.client and org.openvpn.helper, quits the app, removes the login item, forgets six org.openvpn.* package receipts, and deletes /Applications/OpenVPN Connect.app and /Applications/OpenVPN Connect. Its zap step runs security delete-keychain openvpn.keychain-db and trashes the four ~/Library paths in the table, profiles included. Running brew uninstall --cask --zap openvpn-connect yourself does all of that, whatever you ticked in Mole. Mole never adds --zap for this cask, because the stanza runs a command it cannot review; the rows you selected still go to the Trash. Homebrew openvpn-connect cask
brew uninstall --cask openvpn-connect
What Mole lists
~/Library/Application Support/OpenVPN Connectis listed and not selected by default.- Logs, both preferences files and the saved window state are listed and selected by default.
- The
openvpn.keychain-dbkeychain is never listed.
What this test covered
On September 19, 2026, OpenVPN Connect 3.8.2 was uninstalled with a Preview build of Mole 1.15 (build 277), with no Homebrew receipt. The app was not installed by running the official package: its payload holds a bare Contents folder, which was wrapped into OpenVPN Connect.app and copied to Applications, and the helper package was not installed. So the helper, its jobs and the package receipts were never on this Mac, and their removal was not tested. The app went to the Trash and the Application Support/OpenVPN Connect row, holding config.json and the profiles folder, was left unticked and stayed.
